summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2013-11-15 09:31:09 -0800
committerH.J. Lu <hjl.tools@gmail.com>2013-11-15 09:32:24 -0800
commitbb81b736af76774d76ca6adb8e7ba245b030a7d9 (patch)
treea672feabbb046bf6e806d60c0dcc9ccd183e64ea
parent8467a2fd5569f7345c025ca94467f50cd329560d (diff)
downloadbinutils-gdb-bb81b736af76774d76ca6adb8e7ba245b030a7d9.tar.gz
Make room for PLT0 directly
* elf32-i386.c (elf_i386_allocate_dynrelocs): Make room for PLT0 directly. * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf32-i386.c2
-rw-r--r--bfd/elf64-x86-64.c2
3 files changed, 8 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index c0c9fa80293..94b89a05c3e 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2013-11-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_allocate_dynrelocs): Make room for
+ PLT0 directly.
+ * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
+
2013-11-14 Nick Clifton <nickc@redhat.com>
PR ld/16017
diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c
index a623a13c7de..4574c598bad 100644
--- a/bfd/elf32-i386.c
+++ b/bfd/elf32-i386.c
@@ -2219,7 +2219,7 @@ elf_i386_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
/* If this is the first .plt entry, make room for the special
first entry. */
if (s->size == 0)
- s->size += plt_entry_size;
+ s->size = plt_entry_size;
h->plt.offset = s->size;
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index 3b3f890352d..6ff5f36d040 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -2318,7 +2318,7 @@ elf_x86_64_allocate_dynrelocs (struct elf_link_hash_entry *h, void * inf)
/* If this is the first .plt entry, make room for the special
first entry. */
if (s->size == 0)
- s->size += plt_entry_size;
+ s->size = plt_entry_size;
h->plt.offset = s->size;