PR23980, powerpc64 ld segfault
authorAlan Modra <amodra@gmail.com>
Mon, 17 Dec 2018 22:29:59 +0000 (08:59 +1030)
committerAlan Modra <amodra@gmail.com>
Mon, 17 Dec 2018 22:33:45 +0000 (09:03 +1030)
PR 23980
* elf64-ppc.c (ppc64_elf_hide_symbol): Check hash table type
before referencing ppc64-only fields of hash entries.

bfd/ChangeLog
bfd/elf64-ppc.c

index 9e5717e89fbe5d331a67eb95d20fabeba195e55a..f8e936f92b8577976a1f53f83e85c48c1b2a0cbd 100644 (file)
@@ -1,3 +1,9 @@
+2018-12-18  Alan Modra  <amodra@gmail.com>
+
+       PR 23980
+       * elf64-ppc.c (ppc64_elf_hide_symbol): Check hash table type
+       before referencing ppc64-only fields of hash entries.
+
 2018-12-17  Alan Modra  <amodra@gmail.com>
 
        PR 23994
index a2d3ea067c37d4e26a2ed623d42440a0a8d48f50..31a3edfdae749eb5724a6f730e1b0f2f5d6ec624 100644 (file)
@@ -6193,6 +6193,9 @@ ppc64_elf_hide_symbol (struct bfd_link_info *info,
   struct ppc_link_hash_entry *eh;
   _bfd_elf_link_hash_hide_symbol (info, h, force_local);
 
+  if (ppc_hash_table (info) == NULL)
+    return;
+
   eh = (struct ppc_link_hash_entry *) h;
   if (eh->is_func_descriptor)
     {