From: Richard Sandiford Date: Fri, 3 Aug 2001 18:33:34 +0000 (+0000) Subject: * config/tc-mips.c (md_apply_fix): Don't subtract the symbol value X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=236bd878b53a34c7d0ee76d60450ad53f2ea14a5;p=binutils-gdb.git * config/tc-mips.c (md_apply_fix): Don't subtract the symbol value from GPREL addends. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index ede25334b4d..0dca9480986 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2001-08-03 Richard Sandiford + + * config/tc-mips.c (md_apply_fix): Don't subtract the symbol value + from GPREL addends. + 2001-08-02 Richard Sandiford * doc/c-mips.tex (-mgp32, -mfp32): Added -mfp32, unified with -mgp32. diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index aa259907599..74e206a3ee2 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -9527,7 +9527,9 @@ md_apply_fix (fixP, valueP) { valueT symval = S_GET_VALUE (fixP->fx_addsy); value -= symval; - if (value != 0 && ! fixP->fx_pcrel) + if (value != 0 + && ! fixP->fx_pcrel + && fixP->fx_r_type != BFD_RELOC_MIPS_GPREL) { /* In this case, the bfd_install_relocation routine will incorrectly add the symbol value back in. We just want