http://sourceware.org/bugzilla/show_bug.cgi?id=13812
Senthil Kumar Selvaraj <senthil.thecoder at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |senthil.thecoder at gmail | |dot com --- Comment #4 from Senthil Kumar Selvaraj <senthil.thecoder at gmail dot com> 2013-03-12 17:53:02 UTC --- Actually, the linker relaxation code already considers cases where deletion of the ret in call/ret or jmp/ret might be unsafe - just that it missed this specific case. The case being that GCC puts the array containing the addresses of the labels in a separate section (.rodata). The safe ret deletion logic assumes that only relocations in the local section (containing the ret) could potentially have symbols whose values evaluate to the address containing the ret, but that is not true in this case. Looping over all sections in the BFD, and repeating the check for each section fixes the problem (see attached patch). -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils