Exclude linker created file from dynobj
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 22 Apr 2016 04:45:57 +0000 (21:45 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 22 Apr 2016 04:45:57 +0000 (21:45 -0700)
Some ELF targets create a "linker stubs" fake bfd.  Don't use it to
set dynobj.

* elflink.c (_bfd_elf_link_create_dynstrtab): Exclude linker
created file from dynobj.

bfd/ChangeLog
bfd/elflink.c

index d668652e4b8fd9ce1d1407b00b03b7572c7b1a9c..a8a29bd298f2bee7f737192e6768bfca245d9b32 100644 (file)
@@ -1,3 +1,8 @@
+2016-04-21  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elflink.c (_bfd_elf_link_create_dynstrtab): Exclude linker
+       created file from dynobj.
+
 2016-04-21  H.J. Lu  <hongjiu.lu@intel.com>
 
        * elflink.c (_bfd_elf_link_create_dynstrtab): Set dynobj to a
index 13233cb50be2a86a9a6e789da2b0593125180c51..6f6726648fdc0c5f0d5bcb4de43a908173a3040a 100644 (file)
@@ -213,7 +213,8 @@ _bfd_elf_link_create_dynstrtab (bfd *abfd, struct bfd_link_info *info)
        {
          bfd *ibfd;
          for (ibfd = info->input_bfds; ibfd; ibfd = ibfd->link.next)
-           if ((ibfd->flags & (DYNAMIC | BFD_PLUGIN)) == 0)
+           if ((ibfd->flags
+                & (DYNAMIC | BFD_LINKER_CREATED | BFD_PLUGIN)) == 0)
              {
                abfd = ibfd;
                break;