diff options
author | Jiong Wang <jiong.wang@arm.com> | 2015-08-11 21:44:31 +0100 |
---|---|---|
committer | Jiong Wang <jiong.wang@arm.com> | 2015-08-11 21:44:31 +0100 |
commit | 07f9ddfeba5b572451471f905473f7ddbba1d472 (patch) | |
tree | b3a2c40afe3a4a0e86a2709ef7c79d46cf340a79 /ld/testsuite/ld-aarch64/farcall-b-gsym.d | |
parent | 40fbed84815b00960f7fac8d2e7857942df4308c (diff) | |
download | binutils-07f9ddfeba5b572451471f905473f7ddbba1d472.zip binutils-07f9ddfeba5b572451471f905473f7ddbba1d472.tar.gz binutils-07f9ddfeba5b572451471f905473f7ddbba1d472.tar.bz2 |
[AArch64] PR18668, repair long branch veneer for plt stub
2015-08-11 Jiong Wang <jiong.wang@arm.com>
bfd/
PR ld/18668
* elfnn-aarch64.c (aarch64_type_of_stub): Update destination for
calls go through plt stub.
(elfNN_aarch64_final_link_relocate): Adjust code logic for CALL26,
JUMP26 relocation to support inserting veneer for call to plt stub.
ld/testsuite/
* ld-aarch64/farcall-b-gsym.s: New test.
* ld-aarch64/farcall-b-plt.s: Likewise.
* ld-aarch64/farcall-bl-plt.s: Likewise.
* ld-aarch64/farcall-b-gsym.d: New expect file.
* ld-aarch64/farcall-b-plt.d: Likewise.
* ld-aarch64/farcall-bl-plt.d: Likewise.
Diffstat (limited to 'ld/testsuite/ld-aarch64/farcall-b-gsym.d')
-rw-r--r-- | ld/testsuite/ld-aarch64/farcall-b-gsym.d | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/ld/testsuite/ld-aarch64/farcall-b-gsym.d b/ld/testsuite/ld-aarch64/farcall-b-gsym.d new file mode 100644 index 0000000..eced18e --- /dev/null +++ b/ld/testsuite/ld-aarch64/farcall-b-gsym.d @@ -0,0 +1,5 @@ +#name: aarch64-farcall-b-gsym +#source: farcall-b-gsym.s +#as: +#ld: -Ttext 0x1000 +#error: .*\(.text\+0x0\): relocation truncated to fit: R_AARCH64_JUMP26 against symbol `bar_gsym'.* |