aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2009-09-01 21:27:47 +0000
committerH.J. Lu <hjl.tools@gmail.com>2009-09-01 21:27:47 +0000
commit90d6071096d9a14785faf4d585822de11d88c415 (patch)
tree361baefb66ff5396acf02607693ecb0b405e6d72
parent7bb7d81f10ee6ff8b27f5a9abbe869e2d4c69365 (diff)
downloadfsf-binutils-gdb-90d6071096d9a14785faf4d585822de11d88c415.zip
fsf-binutils-gdb-90d6071096d9a14785faf4d585822de11d88c415.tar.gz
fsf-binutils-gdb-90d6071096d9a14785faf4d585822de11d88c415.tar.bz2
2009-09-01 H.J. Lu <hongjiu.lu@intel.com>
* elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Declare plt earlier.
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf64-x86-64.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 89d77b9..7358db8 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2009-09-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Declare
+ plt earlier.
+
2009-09-01 Tristan Gingold <gingold@adacore.com>
* makefile.vms: Ported to Itanium VMS. Remove useless variable and
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index de6f6ec..4438976 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -3883,13 +3883,15 @@ elf64_x86_64_finish_dynamic_symbol (bfd *output_bfd,
}
else
{
+ asection *plt;
+
if (!h->pointer_equality_needed)
abort ();
/* For non-shared object, we can't use .got.plt, which
contains the real function addres if we need pointer
equality. We load the GOT entry with the PLT entry. */
- asection *plt = htab->elf.splt ? htab->elf.splt : htab->elf.iplt;
+ plt = htab->elf.splt ? htab->elf.splt : htab->elf.iplt;
bfd_put_64 (output_bfd, (plt->output_section->vma
+ plt->output_offset
+ h->plt.offset),