diff options
author | Jens Remus <jremus@linux.ibm.com> | 2024-07-12 16:53:47 +0200 |
---|---|---|
committer | Jens Remus <jremus@linux.ibm.com> | 2024-07-12 16:53:47 +0200 |
commit | 6f8b365b653dc9a7370b3bb906a945b5bf5f867c (patch) | |
tree | b4b64b1751dbe4e3b61ed9d9fc1197821f8b799e /ld/testsuite/ld-elf/group9b.d | |
parent | 83511d2679bbcc4b8d6ac42fb71cfbc35e77107e (diff) | |
download | gdb-6f8b365b653dc9a7370b3bb906a945b5bf5f867c.zip gdb-6f8b365b653dc9a7370b3bb906a945b5bf5f867c.tar.gz gdb-6f8b365b653dc9a7370b3bb906a945b5bf5f867c.tar.bz2 |
s390: Avoid reloc overflows on undefined weak symbols (cont)
This complements and reuses logic from Andreas Krebbel's commit
896a639babe2 ("s390: Avoid reloc overflows on undefined weak symbols").
Replace relative long addressing instructions of weak symbols, which
will definitely resolve to zero, with either a load address of 0 or a
a trapping insn.
This prevents the PLT32DBL relocation from overflowing in case the
binary will be loaded at 4GB or more.
bfd/
* elf64-s390.c (elf_s390_relocate_section): Replace
instructions using undefined weak symbols with relative
addressing to avoid relocation overflows.
ld/
* testsuite/ld-s390/s390.exp: Add new test.
* testsuite/ld-s390/weakundef-2.s: New test.
* testsuite/ld-s390/weakundef-2.dd: Likewise.
Reported-by: Alexander Gordeev <agordeev@linux.ibm.com>
Suggested-by: Ilya Leoshkevich <iii@linux.ibm.com>
Suggested-by: Andreas Krebbel <krebbel@linux.ibm.com>
Signed-off-by: Jens Remus <jremus@linux.ibm.com>
Diffstat (limited to 'ld/testsuite/ld-elf/group9b.d')
0 files changed, 0 insertions, 0 deletions