This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug debug/47308] Dwarf Error: Cannot find signatured DIE referenced from DIE at 0x2581 [in module D:\main64.exe]
- From: "pluto at agmk dot net" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 22 Mar 2011 20:03:14 +0000
- Subject: [Bug debug/47308] Dwarf Error: Cannot find signatured DIE referenced from DIE at 0x2581 [in module D:\main64.exe]
- Auto-submitted: auto-generated
- References: <bug-47308-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47308
--- Comment #16 from Pawel Sikora <pluto at agmk dot net> 2011-03-22 20:03:09 UTC ---
i've tested the latest 4.5 branch head. it produces less objdump errors
but the core issue still exists. afaics the gdb-7.2 on win32 has problems
with cfi_esacpes before ___main.
_main:
LFB598:
.loc 1 21 0
.cfi_startproc
.cfi_personality 0x0,___gxx_personality_sj0
.cfi_lsda 0x0,LLSDA598
leal 4(%esp), %ecx
.cfi_def_cfa 1, 0
andl $-16, %esp
pushl -4(%ecx)
pushl %ebp
movl %esp, %ebp
.cfi_escape 0x10,0x5,0x2,0x75,0x0
pushl %edi
pushl %esi
pushl %ebx
pushl %ecx
.cfi_escape 0xf,0x3,0x75,0x70,0x6
subl $104, %esp
movl $___gxx_personality_sj0, -68(%ebp)
movl $LLSDA598, -64(%ebp)
leal -60(%ebp), %eax
leal -24(%ebp), %edx
movl %edx, (%eax)
movl $L8, %edx
movl %edx, 4(%eax)
movl %esp, 8(%eax)
leal -92(%ebp), %eax
movl %eax, (%esp)
.cfi_escape 0x10,0x3,0x2,0x75,0x74 <==== gdb error.
.cfi_escape 0x10,0x6,0x2,0x75,0x78 <====
.cfi_escape 0x10,0x7,0x2,0x75,0x7c <====
call __Unwind_SjLj_Register
.loc 1 21 0
call ___main
Breakpoint 1, main () at main.cpp:21
21 {
(gdb) disassemble
Dump of assembler code for function main():
0x0040163c <+0>: lea 0x4(%esp),%ecx
0x00401640 <+4>: and $0xfffffff0,%esp
0x00401643 <+7>: pushl -0x4(%ecx)
0x00401646 <+10>: push %ebp
0x00401647 <+11>: mov %esp,%ebp
0x00401649 <+13>: push %edi
0x0040164a <+14>: push %esi
0x0040164b <+15>: push %ebx
0x0040164c <+16>: push %ecx
0x0040164d <+17>: sub $0x68,%esp
0x00401650 <+20>: movl $0x40b920,-0x44(%ebp)
0x00401657 <+27>: movl $0x40c03c,-0x40(%ebp)
0x0040165e <+34>: lea -0x3c(%ebp),%eax
0x00401661 <+37>: lea -0x18(%ebp),%edx
0x00401664 <+40>: mov %edx,(%eax)
0x00401666 <+42>: mov $0x401716,%edx
0x0040166b <+47>: mov %edx,0x4(%eax)
0x0040166e <+50>: mov %esp,0x8(%eax)
0x00401671 <+53>: lea -0x5c(%ebp),%eax
0x00401674 <+56>: mov %eax,(%esp)
0x00401677 <+59>: Dwarf Error: Cannot find signatured DIE referenced from
DIE at 0x1397e
could someone decrypt these magic cfi_escapes?