diff options
author | Yufeng Zhang <yufeng.zhang@arm.com> | 2013-06-14 15:55:35 +0000 |
---|---|---|
committer | Yufeng Zhang <yufeng.zhang@arm.com> | 2013-06-14 15:55:35 +0000 |
commit | df1821a3927774888b9b152472a36e94519fc47d (patch) | |
tree | a94c31da84fc97f3662f16d1d422ec819c790ac9 | |
parent | 121cfa0ffc9e02b9a4e85f41d7dff251b0d40d0c (diff) | |
download | binutils-redhat-df1821a3927774888b9b152472a36e94519fc47d.tar.gz |
ld/
* emulparams/aarch64elf.sh: Add IREL_IN_PLT.
ld/testsuite/
* ld-aarch64/ifunc-1-local.d: Replace hard-coded immediate offset
with regexp.
* ld-aarch64/ifunc-1.d: Likewise.
* ld-aarch64/ifunc-2-local.d: Likewise.
* ld-aarch64/ifunc-2.d: Likewise.
* ld-aarch64/ifunc-3a.d: Likewise.
* ld-aarch64/ifunc-2-local.s: Change not to declare __GI_foo and foo
global.
-rw-r--r-- | ld/ChangeLog | 4 | ||||
-rw-r--r-- | ld/emulparams/aarch64elf.sh | 2 | ||||
-rw-r--r-- | ld/testsuite/ChangeLog | 11 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/ifunc-1-local.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/ifunc-1.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/ifunc-2-local.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/ifunc-2-local.s | 3 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/ifunc-2.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-aarch64/ifunc-3a.d | 2 |
9 files changed, 24 insertions, 10 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index e58945bb7a..c1435fe422 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,7 @@ +2013-06-14 Yufeng Zhang <yufeng.zhang@arm.com> + + * emulparams/aarch64elf.sh: Add IREL_IN_PLT. + 2013-06-12 Nick Clifton <nickc@redhat.com> * ldcref.c (output_one_cref): Place common definitions after diff --git a/ld/emulparams/aarch64elf.sh b/ld/emulparams/aarch64elf.sh index 53ccd6ab92..99f4844665 100644 --- a/ld/emulparams/aarch64elf.sh +++ b/ld/emulparams/aarch64elf.sh @@ -18,6 +18,8 @@ MAXPAGESIZE="CONSTANT (MAXPAGESIZE)" ENTRY=_start EMBEDDED=yes SEPARATE_GOTPLT=24 +IREL_IN_PLT= + TEXT_START_ADDR=0x00400000 DATA_START_SYMBOLS='__data_start = . ;'; diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index fa4c8420be..202c1eb55a 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,14 @@ +2013-06-14 Yufeng Zhang <yufeng.zhang@arm.com> + + * ld-aarch64/ifunc-1-local.d: Replace hard-coded immediate offset + with regexp. + * ld-aarch64/ifunc-1.d: Likewise. + * ld-aarch64/ifunc-2-local.d: Likewise. + * ld-aarch64/ifunc-2.d: Likewise. + * ld-aarch64/ifunc-3a.d: Likewise. + * ld-aarch64/ifunc-2-local.s: Change not to declare __GI_foo and foo + global. + 2013-06-13 Terry Guo <terry.guo@arm.com> PR ld/15302 diff --git a/ld/testsuite/ld-aarch64/ifunc-1-local.d b/ld/testsuite/ld-aarch64/ifunc-1-local.d index 0cce7f665f..0b49004de7 100644 --- a/ld/testsuite/ld-aarch64/ifunc-1-local.d +++ b/ld/testsuite/ld-aarch64/ifunc-1-local.d @@ -3,5 +3,5 @@ #target: aarch64-*-* #... -[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x2a0@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x[0-9a-f]+@plt> #pass diff --git a/ld/testsuite/ld-aarch64/ifunc-1.d b/ld/testsuite/ld-aarch64/ifunc-1.d index 8a17cd763a..0b49004de7 100644 --- a/ld/testsuite/ld-aarch64/ifunc-1.d +++ b/ld/testsuite/ld-aarch64/ifunc-1.d @@ -3,5 +3,5 @@ #target: aarch64-*-* #... -[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x2c0@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x[0-9a-f]+@plt> #pass diff --git a/ld/testsuite/ld-aarch64/ifunc-2-local.d b/ld/testsuite/ld-aarch64/ifunc-2-local.d index 07616ca007..07cc0bf008 100644 --- a/ld/testsuite/ld-aarch64/ifunc-2-local.d +++ b/ld/testsuite/ld-aarch64/ifunc-2-local.d @@ -3,7 +3,7 @@ #target: aarch64-*-* #... -[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x2c0@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x[0-9a-f]+@plt> [ \t0-9a-f]+:[ \t0-9a-f]+adrp[ \t]+x0, 0 <_GLOBAL_OFFSET_TABLE_> -[ \t0-9a-f]+:[ \t0-9a-f]+add[ \t]+x0, x0, #0x2b0 +[ \t0-9a-f]+:[ \t0-9a-f]+add[ \t]+x0, x0, #0x[0-9a-f]+ #pass diff --git a/ld/testsuite/ld-aarch64/ifunc-2-local.s b/ld/testsuite/ld-aarch64/ifunc-2-local.s index da350df631..632c31f456 100644 --- a/ld/testsuite/ld-aarch64/ifunc-2-local.s +++ b/ld/testsuite/ld-aarch64/ifunc-2-local.s @@ -1,9 +1,6 @@ .type foo, %gnu_indirect_function - .global __GI_foo - .hidden __GI_foo .set __GI_foo, foo .text -.globl foo .type foo, @function foo: ret diff --git a/ld/testsuite/ld-aarch64/ifunc-2.d b/ld/testsuite/ld-aarch64/ifunc-2.d index 07616ca007..07cc0bf008 100644 --- a/ld/testsuite/ld-aarch64/ifunc-2.d +++ b/ld/testsuite/ld-aarch64/ifunc-2.d @@ -3,7 +3,7 @@ #target: aarch64-*-* #... -[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x2c0@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x[0-9a-f]+@plt> [ \t0-9a-f]+:[ \t0-9a-f]+adrp[ \t]+x0, 0 <_GLOBAL_OFFSET_TABLE_> -[ \t0-9a-f]+:[ \t0-9a-f]+add[ \t]+x0, x0, #0x2b0 +[ \t0-9a-f]+:[ \t0-9a-f]+add[ \t]+x0, x0, #0x[0-9a-f]+ #pass diff --git a/ld/testsuite/ld-aarch64/ifunc-3a.d b/ld/testsuite/ld-aarch64/ifunc-3a.d index 1335480252..91ba4aa594 100644 --- a/ld/testsuite/ld-aarch64/ifunc-3a.d +++ b/ld/testsuite/ld-aarch64/ifunc-3a.d @@ -4,5 +4,5 @@ #target: aarch64-*-* #... -[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x2e0@plt> +[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x[0-9a-f]+@plt> #pass |