aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2008-12-15 02:10:27 +0000
committerHans-Peter Nilsson <hp@axis.com>2008-12-15 02:10:27 +0000
commitb2e254f9704b90a154fe9259a1ebdf43dd21cf8f (patch)
tree22c0ae772f54141e6b4089fc74bd288e8ec04b90
parentdeddc83b38f098c979fa1022174917a866aac1c2 (diff)
downloadbinutils-b2e254f9704b90a154fe9259a1ebdf43dd21cf8f.zip
binutils-b2e254f9704b90a154fe9259a1ebdf43dd21cf8f.tar.gz
binutils-b2e254f9704b90a154fe9259a1ebdf43dd21cf8f.tar.bz2
* elf32-cris.c (elf_cris_got_elt_size) <symtab_hdr>: Initialize
using ibfd, not abfd.
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf32-cris.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 9bb846d..c9ca962 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2008-12-15 Hans-Peter Nilsson <hp@axis.com>
+
+ * elf32-cris.c (elf_cris_got_elt_size) <symtab_hdr>: Initialize
+ using ibfd, not abfd.
+
2008-12-11 Alan Modra <amodra@bigpond.net.au>
PR 7041
diff --git a/bfd/elf32-cris.c b/bfd/elf32-cris.c
index 72916f2..87c8026 100644
--- a/bfd/elf32-cris.c
+++ b/bfd/elf32-cris.c
@@ -4094,13 +4094,13 @@ elf_cris_got_elt_size (bfd *abfd ATTRIBUTE_UNUSED,
unsigned long symndx)
{
struct elf_link_hash_entry *h = (struct elf_link_hash_entry *) hr;
- Elf_Internal_Shdr *symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
bfd_vma eltsiz = 0;
/* We may have one regular GOT entry or up to two TLS GOT
entries. */
if (h == NULL)
{
+ Elf_Internal_Shdr *symtab_hdr = &elf_tdata (ibfd)->symtab_hdr;
bfd_signed_vma *local_got_refcounts = elf_local_got_refcounts (ibfd);
BFD_ASSERT (local_got_refcounts != NULL);
@@ -4137,6 +4137,9 @@ elf_cris_got_elt_size (bfd *abfd ATTRIBUTE_UNUSED,
eltsiz += 4;
}
+ /* We're only called when h->got.refcount is non-zero, so we must
+ have a non-zero size. */
+ BFD_ASSERT (eltsiz != 0);
return eltsiz;
}