[Bug target/28854] unwinder reports sentinel frame.
ubizjak at gmail dot com
gcc-bugzilla@gcc.gnu.org
Mon Oct 24 14:45:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28854
--- Comment #5 from Uros Bizjak <ubizjak at gmail dot com> 2011-10-24 14:44:49 UTC ---
Just FYI, this is due to the fact that _start from /usr/crt1.o has a FDE:
$ objdump --dwarf /usr/lib/crt1.o
/usr/lib/crt1.o: file format elf64-alpha
Contents of the .eh_frame section:
00000000 00000010 00000000 CIE
Version: 1
Augmentation: "zR"
Code alignment factor: 4
Data alignment factor: -8
Return address column: 15
Augmentation data: 1b
DW_CFA_def_cfa_register: r30
DW_CFA_nop
00000014 00000010 00000018 FDE cie=00000000 pc=00000000..0000003c
DW_CFA_advance_loc: 20 to 00000014
DW_CFA_def_cfa_register: r15
This FDE of _start function is discovered by uw_frame_state_for, and only after
this recursion
if (context->ra == 0)
return _URC_END_OF_STACK;
is triggered.
So if there is a bug at all, it is in glibc - perhaps_start should not set FDE.
More information about the Gcc-bugs
mailing list