diff options
author | Bernhard Schommer <bernhardschommer@gmail.com> | 2015-10-16 13:06:09 +0200 |
---|---|---|
committer | Bernhard Schommer <bernhardschommer@gmail.com> | 2015-10-16 13:06:09 +0200 |
commit | 24b4159b6a29328c529e0e59405e03ea192aa99e (patch) | |
tree | 4b39da911a2eb037e3c9fb3950d53bb0bd6a41b2 /debug/DebugInit.ml | |
parent | 1e52bb2001964d87086cea00d0cb779e270b99ce (diff) | |
download | compcert-24b4159b6a29328c529e0e59405e03ea192aa99e.tar.gz compcert-24b4159b6a29328c529e0e59405e03ea192aa99e.zip |
Implemented the usage of DW_AT_ranges for non-contiguous address ranges.
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.
Diffstat (limited to 'debug/DebugInit.ml')
-rw-r--r-- | debug/DebugInit.ml | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/debug/DebugInit.ml b/debug/DebugInit.ml index b4240af7..455112ed 100644 --- a/debug/DebugInit.ml +++ b/debug/DebugInit.ml @@ -53,6 +53,7 @@ let init_debug () = implem := if Configuration.system = "diab" then let gen = (fun a b -> Some (Dwarfgen.gen_diab_debug_info a b)) in + Clflags.option_gdwarf := 2; (* Dwarf 2 is the only supported target *) {default_debug with generate_debug_info = gen; add_diab_info = DebugInformation.add_diab_info; add_fun_addr = DebugInformation.diab_add_fun_addr;} |