[Bug ld/11088] Internal Error in ppc64_elf_gc_sweep_hook

Alan Modra amodra@bigpond.net.au
Thu Dec 17 00:08:00 GMT 2009


Applied.  I'll apply similar fixes later to elf32-ppc.c.  I'm on
holiday and supposed to be house painting, not sitting in front of a
computer.  :-)

	PR ld/11088
	* elf64-ppc.c (ppc64_elf_gc_sweep_hook): Don't abort if symbol
	hiding has nulled out plt.plist.

Index: bfd/elf64-ppc.c
===================================================================
RCS file: /cvs/src/src/bfd/elf64-ppc.c,v
retrieving revision 1.304
diff -u -p -r1.304 elf64-ppc.c
--- bfd/elf64-ppc.c	11 Dec 2009 13:42:03 -0000	1.304
+++ bfd/elf64-ppc.c	16 Dec 2009 23:30:45 -0000
@@ -5864,9 +5864,7 @@ ppc64_elf_gc_sweep_hook (bfd *abfd, stru
 	      for (ent = h->plt.plist; ent != NULL; ent = ent->next)
 		if (ent->addend == rel->r_addend)
 		  break;
-	      if (ent == NULL)
-		abort ();
-	      if (ent->plt.refcount > 0)
+	      if (ent != NULL && ent->plt.refcount > 0)
 		ent->plt.refcount -= 1;
 	    }
 	  break;

-- 
Alan Modra
Australia Development Lab, IBM



More information about the Binutils mailing list