aboutsummaryrefslogtreecommitdiff
path: root/gdb/python/py-lazy-string.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2025-07-12 01:25:53 +0100
committerMaciej W. Rozycki <macro@orcam.me.uk>2025-07-12 01:25:53 +0100
commit78f28b69ff1cdd8fcdf1944cfd82ea45f23e94d2 (patch)
treee1d1e93662803251bf61161fe27276cd109bcc21 /gdb/python/py-lazy-string.c
parent68f5cb38c27699e9b4840f22596ede96762c4796 (diff)
downloadfsf-binutils-gdb-78f28b69ff1cdd8fcdf1944cfd82ea45f23e94d2.zip
fsf-binutils-gdb-78f28b69ff1cdd8fcdf1944cfd82ea45f23e94d2.tar.gz
fsf-binutils-gdb-78f28b69ff1cdd8fcdf1944cfd82ea45f23e94d2.tar.bz2
MIPS: Correct HI/LO rel reloc howto special_function entries
This corrects the DTPREL_HI16/LO16 and TPREL_HI16/LO16 howtos to use _bfd_mips_elf_{hi,lo}16_reloc special functions, in order to support addends outside the range [0,32767] on these relocations. R_MIPS_GOT_HI16, R_MIPS_GOT_LO16, R_MIPS_CALL_HI16 and R_MIPS_CALL_LO16 are left alone as it seems that we (quite reasonably) only support zero addends for those relocs. PR 19977 bfd/ * elf32-mips.c (elf_mips_howto_table_rel): Set special_function to _bfd_mips_elf_hi16_reloc for R_MIPS_TLS_DTPREL_HI16 and R_MIPS_TLS_TPREL_HI16. Set special_function to _bfd_mips_elf_lo16_reloc for R_MIPS_TLS_DTPREL_LO16 and R_MIPS_TLS_TPREL_LO16 (elf_mips16_howto_table_rel): Likewise for R_MIPS16_TLS_DTPREL_HI16, R_MIPS16_TLS_DTPREL_LO16, R_MIPS16_TLS_TPREL_HI16 and R_MIPS16_TLS_TPREL_LO16. (elf_micromips_howto_table_rel): Likewise for R_MICROMIPS_TLS_DTPREL_HI16, R_MICROMIPS_TLS_DTPREL_LO16, R_MICROMIPS_TLS_TPREL_HI16 and R_MICROMIPS_TLS_TPREL_LO16. * elf64-mips.c (mips_elf64_howto_table_rel): Similarly. (mips16_elf64_howto_table_rel): Similarly. (micromips_elf64_howto_table_rel): Similarly. * elfn32-mips.c: As for elf64-mips.c. gas/ * testsuite/gas/mips/pr19977.d, * testsuite/gas/mips/pr19977.s: New test. * testsuite/gas/mips/mips.exp: Run it.
Diffstat (limited to 'gdb/python/py-lazy-string.c')
0 files changed, 0 insertions, 0 deletions