From: Nick Clifton Date: Wed, 18 May 2011 13:36:11 +0000 (+0000) Subject: PR ld/12778 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9c489990bb00f32858569d48f79ce8116e0ee050;p=binutils-gdb.git PR ld/12778 * elf32-arm.c (elf32_arm_gc_sweep_hook): Use the computed dynamic reloc pointer. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 11a1afeebe5..02b19414a36 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2011-05-18 Rafał Krypa + + PR ld/12778 + * elf32-arm.c (elf32_arm_gc_sweep_hook): Use the computed dynamic + reloc pointer. + 2011-05-18 Tristan Gingold * xcofflink.c (xcoff_link_add_symbols): Handle C_DWARF symbols. diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index faf18d0044c..671a20996ee 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -12025,7 +12025,7 @@ elf32_arm_gc_sweep_hook (bfd * abfd, struct elf_dyn_relocs *p; if (h != NULL) - pp = &((struct elf32_arm_link_hash_entry *) h)->dyn_relocs; + pp = &(eh->dyn_relocs); else { Elf_Internal_Sym *isym; @@ -12038,7 +12038,7 @@ elf32_arm_gc_sweep_hook (bfd * abfd, if (pp == NULL) return FALSE; } - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; pp = &p->next) + for (; (p = *pp) != NULL; pp = &p->next) if (p->sec == sec) { /* Everything must go for SEC. */