aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2001-06-24 16:43:31 +0000
committerJakub Jelinek <jakub@redhat.com>2001-06-24 16:43:31 +0000
commit6f112c47dc1a63ff7197355fe53a802385252697 (patch)
treea4c7d421d1b565e4d353f7e84360326b00b29ac3 /gas
parent6d900bf62cab3b563736b20e97dc388ad6d2eb3a (diff)
downloadgdb-6f112c47dc1a63ff7197355fe53a802385252697.zip
gdb-6f112c47dc1a63ff7197355fe53a802385252697.tar.gz
gdb-6f112c47dc1a63ff7197355fe53a802385252697.tar.bz2
* config/tc-alpha.c (tc_gen_reloc): Handle relocs against SEC_MERGE
section symbols the same way as externs.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-alpha.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 678dea5..8ce479f 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2001-06-24 Jakub Jelinek <jakub@redhat.com>
+
+ * config/tc-alpha.c (tc_gen_reloc): Handle relocs against SEC_MERGE
+ section symbols the same way as externs.
+
2001-06-24 Ben Elliston <bje@redhat.com>
* config/tc-m88k.c (md_number_to_imm): Remove; unused since 1993.
diff --git a/gas/config/tc-alpha.c b/gas/config/tc-alpha.c
index ba42aaa..65bc4f8 100644
--- a/gas/config/tc-alpha.c
+++ b/gas/config/tc-alpha.c
@@ -1591,7 +1591,8 @@ tc_gen_reloc (sec, fixp)
* at assembly time. bfd_perform_reloc doesn't know about this sort
* of thing, and as a result we need to fake it out here.
*/
- if ((S_IS_EXTERN (fixp->fx_addsy) || S_IS_WEAK (fixp->fx_addsy))
+ if ((S_IS_EXTERN (fixp->fx_addsy) || S_IS_WEAK (fixp->fx_addsy)
+ || (S_GET_SEGMENT (fixp->fx_addsy)->flags & SEC_MERGE))
&& !S_IS_COMMON (fixp->fx_addsy))
reloc->addend -= symbol_get_bfdsym (fixp->fx_addsy)->value;
#endif