summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils
diff options
context:
space:
mode:
authorPhilip Guenther <guenther@cvs.openbsd.org>2014-08-14 19:43:46 +0000
committerPhilip Guenther <guenther@cvs.openbsd.org>2014-08-14 19:43:46 +0000
commit3ca925723ab0a0e64faf3682c41412e64c98d14a (patch)
tree5aa7bce370cd510d9ff684e5711260f357475c56 /gnu/usr.bin/binutils
parentee7f302207ef213a05a8d9bfa2fb7d54d1575ee9 (diff)
Backport from binutils-2.17:
2005-08-17 Alan Modra <amodra@bigpond.net.au> * elfxx-mips.c (_bfd_mips_elf_hide_symbol): Cope with being called without any got section. ok miod@
Diffstat (limited to 'gnu/usr.bin/binutils')
-rw-r--r--gnu/usr.bin/binutils/bfd/elfxx-mips.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/gnu/usr.bin/binutils/bfd/elfxx-mips.c b/gnu/usr.bin/binutils/bfd/elfxx-mips.c
index 1992bbedd08..8a1f0ea0168 100644
--- a/gnu/usr.bin/binutils/bfd/elfxx-mips.c
+++ b/gnu/usr.bin/binutils/bfd/elfxx-mips.c
@@ -7642,11 +7642,10 @@ _bfd_mips_elf_hide_symbol (struct bfd_link_info *info,
h->forced_local = force_local;
dynobj = elf_hash_table (info)->dynobj;
- if (dynobj != NULL && force_local)
+ if (dynobj != NULL && force_local && h->root.type != STT_TLS
+ && (got = mips_elf_got_section (dynobj, FALSE)) != NULL
+ && (g = mips_elf_section_data (got)->u.got_info) != NULL)
{
- got = mips_elf_got_section (dynobj, FALSE);
- g = mips_elf_section_data (got)->u.got_info;
-
if (g->next)
{
struct mips_got_entry e;