summaryrefslogtreecommitdiff
path: root/bfd/elf32-i386.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2016-02-24 05:42:27 -0800
committerH.J. Lu <hjl.tools@gmail.com>2016-02-24 05:49:48 -0800
commit13f422778ff5307dad1f66d25a1d211bb8f76a8b (patch)
treef06e0ab10c988cf256ad0e0ef88cb32ea7ac06a2 /bfd/elf32-i386.c
parentbf74e428bca61022bd5cdf6bf28789a184748b4d (diff)
downloadbinutils-gdb-13f422778ff5307dad1f66d25a1d211bb8f76a8b.tar.gz
Set plt_got.offset to (bfd_vma) -1
Since plt_got.offset may be updated in x86 allocate_dynrelocs, set plt_got.offset to (bfd_vma) -1 when setting needs_plt to 0. * elf32-i386.c (elf_i386_allocate_dynrelocs): Set plt_got.offset to (bfd_vma) -1 when setting needs_plt to 0. * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
Diffstat (limited to 'bfd/elf32-i386.c')
-rw-r--r--bfd/elf32-i386.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c
index a8951d8d586..f6c9c657490 100644
--- a/bfd/elf32-i386.c
+++ b/bfd/elf32-i386.c
@@ -2490,12 +2490,14 @@ elf_i386_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
}
else
{
+ eh->plt_got.offset = (bfd_vma) -1;
h->plt.offset = (bfd_vma) -1;
h->needs_plt = 0;
}
}
else
{
+ eh->plt_got.offset = (bfd_vma) -1;
h->plt.offset = (bfd_vma) -1;
h->needs_plt = 0;
}