| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
The common json export functionallity is moved into an own File.
Bug 22472
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ais annotations can be inserted via the new ais variants of
the builtin annotation. They mainly differe in that they have an
address format specifier '%addr' which will be replaced by the
adress in the binary.
The implementation simply prints a label for the builtin call
alongside a the text of the annotation as comment and inserts the
annotation together as acii string in a separate section
'ais_annotations' and replaces the usages of the address format
specifiers by the address of the label of the builtin call.
|
| |
|
|
|
|
|
|
| |
This option allows it to dump a list of all used mnemonics into
a file.
Bug 22239
|
|
|
|
|
|
|
| |
In order to ensure that no new instruction is added without adding
it to the Json export we enforce warning 4 for the instruction
printer and removed all default pattern matchings.
Bug 22239
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Instead of just dumping the json output it is now a little bit
formatted for better reading.
Furthermore the AsmToJson function for the non powerpc targets now
prints the json value "null" sucht that the resulting json file is
valid json.
|
|
|
|
|
|
| |
The inline assembler instructions are numbered with consecutives
id's per compilation unit.
Bug 21689
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds code generation for 64bit PowerPC architectures which execute
32bit applications.
The main difference to the normal 32bit PowerPC port is that it uses the
available 64bit instructions instead of using the runtime library functions.
However pointers are still 32bit and the 32bit calling convention is used.
In order to use this port the target architecture must be either in Server
execution mode or if in Embedded execution mode the high order 32 bits of GPRs
must be implemented in 32-bit mode. Furthermore the operating system must
preserve the high order 32 bits of GPRs.
|
|
|
|
|
|
| |
Instructions expanded by Asmexpand should never end up in
AsmToJSON.
Bug 21345
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
ISO C99 states that "inline defintions", functions with inline
specifier that are not extern, does not provide an external
definition and another compilation unit can contain an external
definition. Thus in the case of non-static inline functions no
code should be generated.
Bug 21343
|
| |
|
|
|
|
|
| |
Valex expects Fun Section Literals and not Fun Section Literal.
Bug 18394
|
|
|
|
|
|
| |
The printer for atom constants should also use the printer
for singleton objects.
Bug 18394
|
|
|
|
|
|
| |
Removed unused code, factored out common functions and added an
interface file.
Bug 18394
|
|
|
|
|
|
| |
The code was mostly there for documentation effort. So warning
27 is deactivated again.
Bug 18349
|
|
|
|
|
|
| |
Removed some unused variables, functions etc. and resolved some
problems which occur if all warnings except 3,4,9 and 29 are active.
Bug 18394.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Instead of having a function for each instruction we now use a
generic function to print the arguments.
Bug 17544.
|
|
|
|
|
|
| |
In a first step all the print commands for the names are replaced
by a more safe variant that avoids missing \".
Bug 17328
|
|
|
|
| |
Bug 17473
|
|
|
|
| |
Bug 17473
|
|
|
|
| |
Bug 17473.
|
|
|
|
|
|
|
|
|
|
| |
The gcc produces DW_AT_ranges for non-contiguous address ranges, like
compilation units containing functions which are placed in different
ELF-sections or lexical scopes that are split up. With this commit
CompCert also uses this DWARF v3 feature for gnu backend based targets.
In order to ensure backward compability a flag is added which avoids
this and produces debug info in DWARF v2 format.
Bug 17392.
|
| |
|
|
|
|
|
|
|
|
| |
GCC prints all string larger than 3 characters in the debug_str
section which reduces the size of the debug information since entries
containing the same string now map to the same string in the
debug_str sections.
Bug 17392.
|
|\
| |
| |
| | |
Resolved conflicts in:configure powerpc/Asmexpand.ml
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
If a user uses the #pragma use_section for functions the diab linker
requires a separate debug_info section for each entry. This commit
adds functionality to emulate this behavior.
|
| |
| |
| |
| |
| | |
This commit adds furher support for location information for local
variables and starts with the implementation of the debug_loc section.
|
|/
|
|
|
|
| |
Also: implement __builtin_isel on non-EREF platforms with a branch-free instruction sequence.
Also: extend ./configure so that it recognizes "ppc64-" and "e5500-" platforms in addition to "ppc-".
|
| |
|
|
|
|
|
| |
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.
|
| |
|
| |
|