[Lldb-commits] Patch for fixing FDE indexing when scan debug_info section

Tatyana Krasnukha via lldb-commits lldb-commits at lists.llvm.org
Thu May 18 13:37:11 PDT 2017

Fix FDE indexing while scan debug_info section.

There are some differences between eh_frame and debug_frame formats that are not considered by DWARFCallFrameInfo::GetFDEIndex.
An FDE entry contains CIE_pointer in debug_frame in same place as cie_id in eh_frame. As described in dwarf standard<http://www.dwarfstd.org/doc/dwarf-2.0.0.pdf> (section 6.4.1),
CIE_pointer is an "offset into the .debug_frame section". So, variable cie_offset should be equal cie_id for debug_frame.
FDE entries with zeroth CIE pointer (which is actually placed in cie_id variable) shouldn't be ignored also.

I had same issue as described here http://lists.llvm.org/pipermail/lldb-dev/2014-October/005520.html , and these changes have fixed it for me (with "m_is_eh_frame" set to false, of course).

Tatyana Krasnukha
Software Engineer, Sr. I, Solutions Group, Synopsys Inc.
w +7.812.408.7463 | m +7 981 757-4491 | tatyana at synopsys.com<mailto:tatyana at synopsys.com>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20170518/42f4295b/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: DWARFCallFrameInfo.cpp.patch
Type: application/octet-stream
Size: 1795 bytes
Desc: DWARFCallFrameInfo.cpp.patch
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20170518/42f4295b/attachment.obj>

More information about the lldb-commits mailing list