mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2025-02-22 02:21:19 +00:00
bfd/
* elf32-arm.c (elf32_arm_check_relocs): Check needs_plt rather than h->needs_plt when deciding whether to record a possible dynamic reloc. ld/testsuite/ * ld-arm/arm-rel32.s, ld-arm/arm-rel32.d: New testcase. * ld-arm/arm-elf.exp: Run it.
This commit is contained in:
parent
1e81e12b2c
commit
da17376b70
@ -1,3 +1,8 @@
|
||||
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
|
||||
|
@ -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;
|
||||
|
@ -1,3 +1,8 @@
|
||||
2011-01-17 Richard Sandiford <richard.sandiford@linaro.org>
|
||||
|
||||
* ld-arm/arm-rel32.s, ld-arm/arm-rel32.d: New testcase.
|
||||
* ld-arm/arm-elf.exp: Run it.
|
||||
|
||||
2011-01-17 Richard Sandiford <richard.sandiford@linaro.org>
|
||||
|
||||
* ld-arm/gc-thumb-lib.s, ld-arm/gc-thumb.s,
|
||||
|
@ -126,6 +126,9 @@ set armelftests {
|
||||
{"arm-rel31" "-static -T arm.ld" "" {arm-rel31.s}
|
||||
{{objdump -s arm-rel31.d}}
|
||||
"arm-rel31"}
|
||||
{"arm-rel32" "-shared -T arm-dyn.ld" "" {arm-rel32.s}
|
||||
{{objdump -Rsj.data arm-rel32.d}}
|
||||
"arm-rel32"}
|
||||
{"arm-call" "-static -T arm.ld" "-meabi=4" {arm-call1.s arm-call2.s}
|
||||
{{objdump -d arm-call.d}}
|
||||
"arm-call"}
|
||||
|
12
ld/testsuite/ld-arm/arm-rel32.d
Normal file
12
ld/testsuite/ld-arm/arm-rel32.d
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
.*: file format .*
|
||||
|
||||
DYNAMIC RELOCATION RECORDS
|
||||
OFFSET +TYPE +VALUE
|
||||
[^ ]+ R_ARM_REL32 +foo
|
||||
[^ ]+ R_ARM_REL32 +foo
|
||||
[^ ]+ R_ARM_JUMP_SLOT +foo
|
||||
|
||||
|
||||
Contents of section \.data:
|
||||
[^ ]+ 00000000 00010000 .*
|
8
ld/testsuite/ld-arm/arm-rel32.s
Normal file
8
ld/testsuite/ld-arm/arm-rel32.s
Normal file
@ -0,0 +1,8 @@
|
||||
.globl foo
|
||||
foo:
|
||||
mov pc,lr
|
||||
bal foo(PLT)
|
||||
|
||||
.data
|
||||
.word foo-.
|
||||
.word foo-.+0x100
|
Loading…
x
Reference in New Issue
Block a user