| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
This is a manual, partial merge of Github pull request #296 by @Fourchaux.
flocq/, cparser/MenhirLib/ and parts of test/ have not been changed
because these are local copies and the fixes should be performed upstream.
|
|
|
|
|
| |
The AbsInt build number no longer contains "release", so it must
be printed additionally.
|
|
|
|
|
|
|
|
|
|
|
| |
Functions that are removed from the compilation unit, for example
inline functions without extern, should not produce debug
information.
This commit reuses the mechanism used for variables in order to
track additionally the printed functions. Therefore the printed
variable versions are exchanged for a printed symbol version.
Bug 26234
|
|
|
|
|
|
|
|
|
|
|
|
| |
The fist changes changes the offset for range entries to used labels
instead of integer constants, leaving the computation to the
assembler.
The second part of the change the address changes the way ranges
entries of scopes are printed. They need to be relative to the start
address of the code in the section they are included.
Bug 26234
|
|
|
|
|
|
| |
Ranges for non-contiguous address ranges are already part of dwarf
version 3.
Bug 26234
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
Instead of using Filename.quote, string entries are printed with
%S.
Bug 21216
|
|
|
|
|
|
| |
The compilation directory entry needs quoting since it could be
a toplevel directory under windows.
Bug 21216
|
|
|
|
|
| |
Anonymous members no longer are printed in the debug information.
Fix 20798
|
| |
|
|
|
|
|
| |
A non reseted Hashtbl caused problems with multiple input files.
Bug 20462
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
The interface hides the implementation details, like the huge
number of Hashtbls from the rest of the implementatio.
Bug 18394
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
The typdef, enumerator and function_type types form the DebugTypes and
DwarfTypes shared a some fields. This commits renames them in order to
make them more unique and avoid potential name clashes.
|
|
|
|
|
|
|
|
|
|
|
| |
The new option gdepth subumes the gonly-globals. The option
allows it to control the level of information that is produced.
This option allows it to generate debugging inforation for:
-Only globals
-Global and local variables but without location information for
the local variable
-Full information
Bug 17638.
|
|
|
|
|
|
|
| |
In the case of struct function parameters it is not always
guaranteed that they are still there and not translated into plain
integer arguments.
Bug 17609.
|
|\
| |
| |
| | |
git+ssh://ssh.absint.com/common/repositories/git/tools/compcert
|
| |
| |
| |
| |
| |
| |
| | |
For function types used by function pointers we do not need to print
the name of the paraments. Also switch the logic in case of
prototyped/unprototyped.
Fix 17579.
|
|/ |
|
|
|
|
|
|
| |
The new option -gonly-global allows the generation of debuging
information for global variables only.
Bug 17566.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
In contrast to the dcc, the gcc uses address ranges to express
non-contiguous range of addresses. As a first step we set the
start and end addresses for the different address ranges for
the compilation unit by using the start and end addresses of
functions.
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.
|
|
|
|
|
|
|
| |
The dwarf 2 standard allows more attributes for certain debuggint
entries than used by gcc or diab data. Since they are also not
set by compcert they can be removed.
Bug 17392.
|
|
|
|
|
|
| |
Instead of using a tuple we now use a record with descriptive names
for the different entries.
Bug 17392
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
in the Debuging information.
|
|
|
|
|
|
| |
In order to avoid the problem that the stamp is not correct for
implict declarations I insert all possible stamps of a function
into my mapping and assign them one debug id.
|
|
|
|
|
|
|
| |
Changed the sizeof function to take into account the bytes needed
for the sleb128/uleb128 encoding of the DW_OP_* arguments and
changed the end_live_range function to only close functions where
the live range is currently open.
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
scopes before the last statement.
|
| |
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
Scopes will be handled by a stack of all open scopes. This stack
then can also be used to generate the debug directives to track the
scopes through the rest of the passes.
|
|
Introduced a new dwarf generation from the information collected in
the DebugInformation and removed the old CtODwarf translation.
|