PR ld/4267
authorAlan Modra <amodra@gmail.com>
Thu, 29 Mar 2007 01:11:30 +0000 (01:11 +0000)
committerAlan Modra <amodra@gmail.com>
Thu, 29 Mar 2007 01:11:30 +0000 (01:11 +0000)
* elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
unused entries.  Don't clear plt.plist in loop.

bfd/ChangeLog
bfd/elf32-ppc.c

index e920c702407fa799898ab478d03dbde1234d7316..7d9e2d86cf21b5c52a9521641aaac1f096ec66c4 100644 (file)
@@ -1,3 +1,9 @@
+2007-03-29  Alan Modra  <amodra@bigpond.net.au>
+
+       PR ld/4267
+       * elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
+       unused entries.  Don't clear plt.plist in loop.
+
 2007-03-28  Richard Sandiford  <richard@codesourcery.com>
 
        * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove append_rela.
index 2355687665dfc6b06aca00dd86288d581258c4e5..d1cd431810ad9acb5dd8f21fef454343aa42b93e 100644 (file)
@@ -4500,13 +4500,15 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
              }
            else
              ent->plt.offset = (bfd_vma) -1;
-
-           if (!doneone)
-             {
-               h->plt.plist = NULL;
-               h->needs_plt = 0;
-             }
          }
+       else
+         ent->plt.offset = (bfd_vma) -1;
+
+      if (!doneone)
+       {
+         h->plt.plist = NULL;
+         h->needs_plt = 0;
+       }
     }
   else
     {