diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elf32-arm.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 93291ef..7c513d8 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,10 @@ 2011-01-17 Richard Sandiford <richard.sandiford@linaro.org> + * elf32-arm.c (elf32_arm_check_relocs): Check needs_plt rather than + h->needs_plt when deciding whether to record a possible dynamic reloc. + +2011-01-17 Richard Sandiford <richard.sandiford@linaro.org> + * elf32-arm.c (elf32_arm_gc_sweep_hook): Remove all registered dynamic relocs for the removed section. diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index 8e9e30f..54001a3 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -11576,7 +11576,7 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info, if ((info->shared || htab->root.is_relocatable_executable) && (sec->flags & SEC_ALLOC) != 0 && ((r_type == R_ARM_ABS32 || r_type == R_ARM_ABS32_NOI) - || (h != NULL && ! h->needs_plt + || (h != NULL && ! needs_plt && (! info->symbolic || ! h->def_regular)))) { struct elf_dyn_relocs *p, **head; |