aboutsummaryrefslogtreecommitdiff
path: root/bfd/elfxx-mips.c
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/elfxx-mips.c')
-rw-r--r--bfd/elfxx-mips.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 12d898e..22cc8a2 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -1584,10 +1584,11 @@ mips_elf_got_entry_hash (entry_)
{
const struct mips_got_entry *entry = (struct mips_got_entry *)entry_;
- return entry->abfd->id + entry->symndx
+ return entry->symndx
+ (! entry->abfd ? mips_elf_hash_bfd_vma (entry->d.address)
- : entry->symndx >= 0 ? mips_elf_hash_bfd_vma (entry->d.addend)
- : entry->d.h->root.root.root.hash);
+ : entry->abfd->id
+ + (entry->symndx >= 0 ? mips_elf_hash_bfd_vma (entry->d.addend)
+ : entry->d.h->root.root.root.hash));
}
static int