> On Oct 10, 2014, at 1:05 PM, Philippe Lavoie <philippe.lav...@octasic.com> 
> wrote:
> 
> Hi,
> 
> I noticed that by default lldb does not read .debug_frame section to unwind 
> frames but relies instead on .eh_frame .
> 
> Is there a way to fallback to reading .debug_frame?

Not currently. Most compilers (gcc _and_ clang) put the same old stuff in 
.debug_frame as they do in .eh_frame, so we haven't had to use .debug_frame 
over .eh_frame yet. What compiler are using that is putting different (more 
complete) info in .debug_frame vs .eh_frame?

> 
> I tried getting DWARFCallFrameInfo to read a .debug_frame section, but it 
> fails interpreting the CIE_id field. It assumes that it is a CIE Pointer.

There is a boolean you have to set to true or false in the contractor:


    DWARFCallFrameInfo (ObjectFile& objfile, 
                        lldb::SectionSP& section, 
                        lldb::RegisterKind reg_kind, 
                        bool is_eh_frame);

Set "is_eh_frame" to false if you are using DWARF and the errors below will 
disappear.

> error: unable to find CIE at 0x00000014 for cie_id = 0x000000c8 for entry at 
> 0x000000d8.
> error: unable to find CIE at 0x0000004c for cie_id = 0x000000c8 for entry at 
> 0x00000110.
> error: unable to find CIE at 0x00000068 for cie_id = 0x000000c8 for entry at 
> 0x0000012c.
> 
> Thanks,
> -Philippe
> _______________________________________________
> lldb-dev mailing list
> lldb-dev@cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

_______________________________________________
lldb-dev mailing list
lldb-dev@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

Reply via email to