Separate debug info file issue fixed.
authorSasha Nicolas <sasha@cs.wisc.edu>
Mon, 24 Sep 2018 22:59:03 +0000 (17:59 -0500)
committerSasha Nicolas <sasha@cs.wisc.edu>
Mon, 24 Sep 2018 22:59:03 +0000 (17:59 -0500)
commit0c3eb945180d2643858a4b303343356a10f07075
treed5c5497b965a5b94ef07de8ae6d0dcd2f64e2e64
parent537b6e08da672e8f8437b19721ae37f5d8b7cc05
Separate debug info file issue fixed.
A DwarfFrameParser object was not being created in the case of separate
debug info file, because libdw does not create Dwarf handles to files
that contain only .eh_frame section without .debug_*. This was causing
AST variable node to assert because the local variables did not get
location list, since .eh_frame reference was never saved for lookup.
The solution was to create a DwarfFrameParser saving not only a possible
Dwarf handle but also an Elf reference, since the .eh_frame section will
be in the main stripped binary, while the Dwarf handle will point to
the separate debug file.
dwarf/h/dwarfFrameParser.h
dwarf/src/dwarfFrameParser.C
dwarf/src/dwarfHandle.C
dwarf/src/dwarfResult.C
stackwalk/src/dbginfo-stepper.C
symtabAPI/src/Function.C
symtabAPI/src/Object-elf.C