| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
scopes before the last statement.
|
|
|
|
| |
purpose.
|
|
|
|
|
|
|
|
| |
Debuging code.
The old functions to store the symbol for the Global variables and retrive this
is no longer needed since the atom is stored in DebugInformation. Also the
Debug.Abbrev module is no longer needed.
|
| |
|
|
|
|
|
| |
This commit adds furher support for location information for local
variables and starts with the implementation of the debug_loc section.
|
|
|
|
|
| |
In order to avoid the usage of too many labels we replace the
debug statements during the Asmexpand phase.
|
|
|
|
|
|
| |
Local variables are now added with bogus lexical scopes to reflect
the actually lexical scopes. Also this commit fixes assembler problems
of the das when a user section with the name ".text" is defined.
|
|
|
|
|
|
| |
Instead of creating separate annotations for the local variables
we call the Debug.add_lvar_scope and we construct a mapping from
function id + scope id to scope information.
|
|\
| |
| |
| |
| |
| | |
Conflicts:
debug/CtoDwarf.ml
debug/DwarfPrinter.ml
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
The builtin_isel function takes a _Bool as first argument and returns
either the second or the third depending on the value of the _Bool.
|
| |
| |
| |
| |
| |
| | |
This builtins can be used to get the call frame address and the return
address. To correctly compute the load address of the return address
the allocframe is extended to contain the offset of the return address.
|
| | |
|
| |
| |
| |
| |
| |
| | |
The cache instructions need no special constraint on the address
argument. Therefore also the generation of the address is no longer
needed.
|
| |
| |
| |
| |
| | |
Introduced a new dwarf generation from the information collected in
the DebugInformation and removed the old CtODwarf translation.
|
| |
| |
| |
| | |
This reverts commit 861292a6c5e58b4f78bef207c717b801b3fc1fed.
|
| |
| |
| |
| |
| |
| | |
Added a new file debug/Debug.ml which will be the interface between for
generating and printing the debuging information. Currently it contains
only the code for the line directived.
|
|\|
| |
| |
| | |
Merge branch 'master' into debug_locations
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
This commit adds a builtin function for the mbar instruction.
|
| |
| |
| |
| |
| |
| | |
This commit adds a builtin for the dcbz instructions. Additionally
the dcbt,dcbtst,dcbtls and icbtls instruction are changed to their
actually form all taking one additional register in Asm.v.
|
| |
| |
| |
| | |
This commit adds a builtin for the icbtls instruction.
|
| |
| |
| |
| |
| | |
The dcbtls instruction allows only the values 0 and 2 according to
the PPC Isa.
|
| | |
|
| |
| |
| |
| |
| |
| | |
THis commit adds a builtin function for the dcbtls instruction.
Additionaly it changes the printing of the dcbt and dcbtst instruction to
embedded mode and adds support for different address variants.
|
| |
| |
| |
| |
| |
| | |
This commit implements the gcc __builtin_prefetch in a form with all
arguments for the powerpc architecture. The resulting instructions are
the dcbt and dcbtst instructions in Server Category.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Use EF_debug instead of EF_annot for line number annotations.
Introduce PrintAsmaux.print_debug_info (very incomplete).
powerpc/Asmexpand: revise expand_memcpy_small.
|
| |
| |
| |
| |
| |
| |
| | |
__builtin_get_spr() and __builtin_set_spr() work, but horrible error
message if the SPR argument is not a constant.
powerpc/AsmToJSON.ml needs updating.
|
|/ |
|
| |
|
|\
| |
| | |
Merge branch 'asmexpand' of github.com:AbsInt/CompCert
|
| |\ |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
This reverts commit 777566e81b9762d6bdc773a1f63d56a7ac97433c, reversing
changes made to daf9ac64fc9611ecf09d70560a6fa1ba80b9c9c1.
|
| |\ \ |
|
| | | |
| | | |
| | | |
| | | | |
the same way as it is done for PPC.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
integers with Uns or Sgn abstract values.
This is a follow-up to commit 2932b53. It adds provenance tracking to the Uns and Sgn abstract values.
|
| |_|/
|/| |
| | |
| | |
| | |
| | | |
operations with undefined behaviors.
Consider (x ^ 1) ^ 1 where x is a intptr_t containing a pointer value. "x ^ 1" evaluates to Vundef in the CompCert semantics, hence the value analysis, in strict mode, gives abstract result Ifptr Pbot (= any number but not a pointer). In relaxed mode, we now give abstract result Ifptr (poffset p) where p is the abstraction of the pointer, thus keeping track of the actual leak of the pointer value.
|
| | |
| | |
| | |
| | |
| | |
| | | |
A function declared without a prototype could be implemented by a
vararg function (even though this is undefined behavior in C99).
Be nice in this case.
|
| | |
| | |
| | |
| | | |
Simplified printing of storage class.
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
Conflicts:
driver/Driver.ml
|