]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
* write.c (adjust_reloc_syms): Don't reduce SEC_MERGE fixups with
authorAlan Modra <amodra@gmail.com>
Wed, 20 Nov 2002 13:11:01 +0000 (13:11 +0000)
committerAlan Modra <amodra@gmail.com>
Wed, 20 Nov 2002 13:11:01 +0000 (13:11 +0000)
fx_subsy non-NULL.

gas/ChangeLog
gas/write.c

index 0b8750c3c6df50f84fe73d9c420b20a4454ab58e..94223d03ce89f03bef3d2684ea1c318c0700d6c1 100644 (file)
@@ -1,3 +1,8 @@
+2002-11-20  Alan Modra  <amodra@bigpond.net.au>
+
+       * write.c (adjust_reloc_syms): Don't reduce SEC_MERGE fixups with
+       fx_subsy non-NULL.
+
 2002-11-19  Richard Henderson  <rth@redhat.com>
 
        * config/obj-elf.c (obj_elf_visibility): Overwrite only the
index 323b95f83ced1c2494b31d2b25a8dfc97a37c363..f8120cbc7c79db5df5debd4661cbfe6db8d73374 100644 (file)
@@ -881,7 +881,8 @@ adjust_reloc_syms (abfd, sec, xxx)
 
        /* Never adjust a reloc against local symbol in a merge section
           with non-zero addend.  */
-       if ((symsec->flags & SEC_MERGE) && fixp->fx_offset)
+       if ((symsec->flags & SEC_MERGE) != 0
+           && (fixp->fx_offset != 0 || fixp->fx_subsy != NULL))
          {
            symbol_mark_used_in_reloc (fixp->fx_addsy);
            goto done;