aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog4
-rw-r--r--gas/config/tc-arm.c5
2 files changed, 8 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 8570281..cbcb93d 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,7 @@
+1999-06-12 Philip Blundell <philb@gnu.org>
+
+ * config/tc-arm.c (tc_gen_reloc): Fix handling of GOTPC relocs.
+
1999-06-13 Ian Lance Taylor <ian@zembu.com>
* write.c (adjust_reloc_syms): Rather than never reducing reloc
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c
index fa84ca0..eb39c78 100644
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
@@ -5713,7 +5713,10 @@ tc_gen_reloc (section, fixp)
if (code == BFD_RELOC_32_PCREL
&& GOT_symbol
&& fixp->fx_addsy == GOT_symbol)
- code = BFD_RELOC_ARM_GOTPC;
+ {
+ code = BFD_RELOC_ARM_GOTPC;
+ reloc->addend = fixp->fx_offset = reloc->address;
+ }
#endif
reloc->howto = bfd_reloc_type_lookup (stdoutput, code);