------- Additional Comments From kkojima at rr dot iij4u dot or dot jp 2007-03-23 00:14 ------- It turned out that this is an SH specific readelf problem. readelf loads the .eh_frame section and fixes the contents according to rela addends with debug_apply_rela_addends when the target uses RELA. Although SH uses RELA relocations, it doesn't use their addend fields and uses in place values. Then debug_apply_rela_addends wrongly clears some entries in FDE with null addends. I'm testing the attached patch.
--- ORIG/src/binutils/readelf.c 2007-03-22 11:58:55.000000000 +0900 +++ LOCAL/src/binutils/readelf.c 2007-03-23 08:07:03.000000000 +0900 @@ -7803,6 +7803,10 @@ debug_apply_rela_addends (void *file, if (!is_relocatable) return 1; + /* SH uses RELA but uses in place value instead of the addend field. */ + if (elf_header.e_machine == EM_SH) + return 0; + for (relsec = section_headers; relsec < section_headers + elf_header.e_shnum; ++relsec) -- What |Removed |Added ---------------------------------------------------------------------------- CC| |kkojima at rr dot iij4u dot | |or dot jp http://sourceware.org/bugzilla/show_bug.cgi?id=3811 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils