| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
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.
|
| |\ |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
SimplLocals:
- record locations of stack-allocated variables with annotations
(of kind 5) at the beginning of the function;
- mark every assignment to non-stack-allocated variables with an
annotation of kind 2.
Debugvar: (new pass!)
- perform availability analysis for debug annotations of kind 2
- insert "start of live range" and "end of live range" annotations
(kind 3 and 4) to delimit intervals of PCs where the location
of a local variable is known.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | | |
structured builtin arguments and results.
|
| | |\ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Before, the back-end languages had distinct instructions
- Iannot for annotations, taking structured expressions (annot_arg)
as arguments, and producing no results'
- Ibuiltin for other builtins, using simple pseudoregs/locations/registers
as arguments and results.
This branch enriches Ibuiltin instructions so that they take structured
expressions (builtin_arg and builtin_res) as arguments and results.
This way,
- Annotations fit the general pattern of builtin functions,
so Iannot instructions are removed.
- EF_vload_global and EF_vstore_global become useless, as the
same optimization can be achieved by EF_vload/vstore taking
a structured argument of the "address of global" kind.
- Better code can be generated for builtin_memcpy between stack locations,
or volatile accesses to stack locations.
Finally, this commit also introduces a new kind of external function,
EF_debug, which is like EF_annot but produces no observable events.
It will be used later to transport debug info through the back-end,
without preventing optimizations.
|
| | | | |
|
|\| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
debug/CtoDwarf.ml
debug/DwarfPrinter.ml
debug/DwarfTypes.mli
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
The diab compiler expected -Wm<pathname> without whitespace.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Dwarf debuging entries for formal parameters were printed as variables.
This could lead to confusion in function pointer types and later with
local variables.
|
| | | |
| | | |
| | | |
| | | | |
Composite types should be always handled by the composite_type_info table and not by the normal type table.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
warning about no input.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
This reverts commit b4846ffadfa3fbb73ffa7d9c43e5218adeece8da.
|
| | | |
| | | |
| | | |
| | | | |
members.
|
| | |/
| |/|
| | |
| | | |
replaced the if else for the different possibilities by a List.find.
|
| | |
| | |
| | |
| | | |
Also: exit on error when a test fails.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
Plus: update comments and credit Bernhard Schommer.
|
| | | |
|
| | |
| | |
| | |
| | | |
according to Intel convention (instr destination, argument).
|
|/ / |
|
| |
| |
| |
| | |
More bugs remain.
|
|/ |
|
| |
|
| |
|
|\
| |
| | |
Merge branch 'asmexpand' of github.com:AbsInt/CompCert
|
| |\ |
|
| | | |
|
| |\ \ |
|