https://sourceware.org/bugzilla/show_bug.cgi?id=21700

--- Comment #5 from James Reynolds <james.reynolds at cristie dot com> ---
Created attachment 10252
  --> https://sourceware.org/bugzilla/attachment.cgi?id=10252&action=edit
Better patch and example

I think this patch fixes the issue and another issue - but unfortunately I
think this now gets blocked by a linker issue, which I can raise separately.

I've added the relocations to use R_NEG after R_POS[_64] and this seems to
match what the IBM linker is doing. I've also adjusted ppc_fix_adjustable so
that this code:

        .vbyte  4,LFB..0-$

generates an R_POS / R_NEG as well as this is what the IBM assembler does.

For a small test problem (in archive) this generates the same relocations as
IBM modulo positions in the TOC (I think).

Unfortunately... switching to use R_RBR_26 instead of R_BR causes an illegal
instruction. Just using R_BR generates a working program but the exception
isn't correctly caught. (This is using the IBM linker)

Should I now get this patch landed, close this bug and create another once I've
found the root cause of the illegal instruction / R_BR issues?

-- 
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

Reply via email to