For COFF and COFF/PE targets, skip relocations against absolute symbols.
authorLeon Winter <winter-gcc@bfw-online.de>
Wed, 9 Mar 2016 15:26:45 +0000 (15:26 +0000)
committerNick Clifton <nickc@redhat.com>
Wed, 9 Mar 2016 15:26:45 +0000 (15:26 +0000)
PR ld/19623
* cofflink.c (_bfd_coff_generic_relocate_section): Do not apply
relocations against absolute symbols.

bfd/ChangeLog
bfd/cofflink.c

index fc63219..d0dfd9b 100644 (file)
@@ -1,3 +1,9 @@
+2016-03-09  Leon Winter  <winter-gcc@bfw-online.de>
+
+       PR ld/19623
+       * cofflink.c (_bfd_coff_generic_relocate_section): Do not apply
+       relocations against absolute symbols.
+
 2016-03-09  Alan Modra  <amodra@gmail.com>
 
        PR binutils/19775
index 7652cc3..4756fc3 100644 (file)
@@ -3007,6 +3007,12 @@ _bfd_coff_generic_relocate_section (bfd *output_bfd,
          else
            {
              sec = sections[symndx];
+
+             /* PR 19623: Relocations against symbols in
+                the absolute sections should ignored.  */
+              if (bfd_is_abs_section (sec))
+               continue;
+
               val = (sec->output_section->vma
                     + sec->output_offset
                     + sym->n_value);