aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 015a40c..fc4ac1f 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,10 @@
2008-06-30 Richard Sandiford <rdsandiford@googlemail.com>
+ * elf.c (_bfd_elf_get_synthetic_symtab): Increment p by
+ bed->s->int_rels_per_ext_rel.
+
+2008-06-30 Richard Sandiford <rdsandiford@googlemail.com>
+
* syms.c (BSF_SYNTHETIC): New flag.
* elf.c (_bfd_elf_get_synthetic_symtab): Set it.
* elf32-ppc.c (ppc_elf_get_synthetic_symtab): Likewise.
diff --git a/bfd/elf.c b/bfd/elf.c
index c79c311..28a593f 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -8761,7 +8761,7 @@ _bfd_elf_get_synthetic_symtab (bfd *abfd,
count = relplt->size / hdr->sh_entsize;
size = count * sizeof (asymbol);
p = relplt->relocation;
- for (i = 0; i < count; i++, p++)
+ for (i = 0; i < count; i++, p += bed->s->int_rels_per_ext_rel)
size += strlen ((*p->sym_ptr_ptr)->name) + sizeof ("@plt");
s = *ret = bfd_malloc (size);
@@ -8771,7 +8771,7 @@ _bfd_elf_get_synthetic_symtab (bfd *abfd,
names = (char *) (s + count);
p = relplt->relocation;
n = 0;
- for (i = 0; i < count; i++, p++)
+ for (i = 0; i < count; i++, p += bed->s->int_rels_per_ext_rel)
{
size_t len;
bfd_vma addr;