[LLVMdev] "Cannot fine DIE"
Talin
viridia at gmail.com
Wed Sep 1 08:31:02 PDT 2010
On Wed, Sep 1, 2010 at 5:31 AM, Jonas Maebe <jonas.maebe at elis.ugent.be>wrote:
>
> On 01 Sep 2010, at 08:47, Talin wrote:
>
> > Once again, I have no idea what this means or how to go about
> > debugging it.
> > This is my biggest frustration with DIFactory - there's absolutely
> > no way to
> > verify that the DWARF debugging information that I've emitted into
> > my module
> > is correct or even sensible. The only way to test it is to try and
> > debug it
> > with gdb, but all that will tell you is that *something* failed - it
> > won't
> > tell you where or what. It's not so much like looking for a needle
> > in a
> > haystack - more like looking for a particular needle in a needlestack.
>
> You can also try running "dwarfdump --verify" on your dsymutil file
> (not on the dSYM bundle, but on the file inside the bundle). It
> sometimes gives a bit more information. Also simply using "dwarfdump -
> a" can be helpful to see wrong references (e.g., if the type info is
> structurally invalid then dwarfdump may simply stop dumping at that
> point, so you know where the error is).
>
> Ah OK thanks, that's helpful.
I tried what you suggested, and it prints out about 4000 lines and then
segfaults, The last lines that it prints out are:
.debug_frame contents:
0x00000000: CIE
length: 0x00000010
CIE_id: 0xffffffff
version: 0x01
augmentation: ""
code_align: 1
data_align: -4
ra_register: 0x08
DW_CFA_def_cfa (4 (esp), 4)
DW_CFA_offset (8 (eip), 0)
DW_CFA_nop
DW_CFA_nop
Instructions: Init State: CFA=esp+4 eip=[CFA]
0x00000014: FDE
length: 0x00000028
CIE_pointer: 0x00000000
I'm not sure how the contents of this structure relate to the various LLVM
API calls used in creating debugging info...
>
> Jonas
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
--
-- Talin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100901/2ab543ea/attachment.html>
More information about the llvm-dev
mailing list