From: Alan Modra Date: Sat, 19 Jan 2008 10:07:25 +0000 (+0000) Subject: PR 5646 X-Git-Tag: sid-snapshot-20080201~149 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=85f7a9cbe2b487f2e27a126161bdee27e77a05cf;p=thirdparty%2Fbinutils-gdb.git PR 5646 * elf64-ppc.c (ppc64_elf_tls_optimize): Ensure htab->tls_get_addr non-NULL before dereferencing. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 587745982c6..4a67372918d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2008-01-19 Alan Modra + + PR 5646 + * elf64-ppc.c (ppc64_elf_tls_optimize): Ensure htab->tls_get_addr + non-NULL before dereferencing. + 2008-01-15 Alan Modra PR 5604 diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c index a41269c5559..026c52e421e 100644 --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -7074,7 +7074,7 @@ ppc64_elf_tls_optimize (bfd *obfd ATTRIBUTE_UNUSED, struct bfd_link_info *info) break; } - if (expecting_tls_get_addr) + if (expecting_tls_get_addr && htab->tls_get_addr != NULL) { struct plt_entry *ent; for (ent = htab->tls_get_addr->elf.plt.plist; @@ -7091,7 +7091,7 @@ ppc64_elf_tls_optimize (bfd *obfd ATTRIBUTE_UNUSED, struct bfd_link_info *info) } } - if (expecting_tls_get_addr) + if (expecting_tls_get_addr && htab->tls_get_addr_fd != NULL) { struct plt_entry *ent; for (ent = htab->tls_get_addr_fd->elf.plt.plist;