summaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorDaniel Jacobowitz <dan@debian.org>2009-02-24 22:44:18 +0000
committerDaniel Jacobowitz <dan@debian.org>2009-02-24 22:44:18 +0000
commit41decb480ef66d3715f9947121632b1d8c059234 (patch)
treee8f1afbbd07244cde0f0b898a4b023448af6380d /ld
parentbeae7debbf30731b1c579395b5384378e3165685 (diff)
downloadbinutils-redhat-41decb480ef66d3715f9947121632b1d8c059234.tar.gz
bfd/
* elf32-arm.c (elf32_arm_stub_long_branch_any_any_pic): Rename to elf32_arm_stub_long_branch_any_arm_pic. (elf32_arm_stub_long_branch_any_thumb_pic): New. (enum elf32_arm_stub_type, arm_type_of_stub) (arm_size_one_stub): Handle any to ARM PIC and any to Thumb PIC separately. ld/testsuite/ * ld-arm/farcall-arm-thumb-blx-pic-veneer.d, ld-arm/farcall-arm-thumb-pic-veneer.d, ld-arm/farcall-thumb-thumb-blx-pic-veneer.d: Update for fixed Thumb PIC stub.
Diffstat (limited to 'ld')
-rw-r--r--ld/testsuite/ChangeLog7
-rw-r--r--ld/testsuite/ld-arm/farcall-arm-thumb-blx-pic-veneer.d8
-rw-r--r--ld/testsuite/ld-arm/farcall-arm-thumb-pic-veneer.d8
-rw-r--r--ld/testsuite/ld-arm/farcall-thumb-thumb-blx-pic-veneer.d8
4 files changed, 19 insertions, 12 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index cdbc267bb8..16a9a033b1 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,5 +1,12 @@
2009-02-24 Daniel Jacobowitz <dan@codesourcery.com>
+ * ld-arm/farcall-arm-thumb-blx-pic-veneer.d,
+ ld-arm/farcall-arm-thumb-pic-veneer.d,
+ ld-arm/farcall-thumb-thumb-blx-pic-veneer.d: Update for fixed
+ Thumb PIC stub.
+
+2009-02-24 Daniel Jacobowitz <dan@codesourcery.com>
+
* ld-arm/arm-elf.exp (armeabitests): Update duplicate test names.
Use normal output files for big-endian.
* ld-arm/farcall-arm-arm-be.d, ld-arm/farcall-thumb-arm-be.d: Delete.
diff --git a/ld/testsuite/ld-arm/farcall-arm-thumb-blx-pic-veneer.d b/ld/testsuite/ld-arm/farcall-arm-thumb-blx-pic-veneer.d
index 15c2274cb7..45bc01c7a8 100644
--- a/ld/testsuite/ld-arm/farcall-arm-thumb-blx-pic-veneer.d
+++ b/ld/testsuite/ld-arm/farcall-arm-thumb-blx-pic-veneer.d
@@ -7,10 +7,10 @@ Disassembly of section .text:
1004: 00000000 andeq r0, r0, r0
00001008 <__bar_from_arm>:
- 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <__bar_from_arm\+0x8>
- 100c: e08ff00c add pc, pc, ip
- 1010: 02000001 .word 0x02000001
- 1014: 00000000 .word 0x00000000
+ 1008: e59fc004 ldr ip, \[pc, #4\] ; 1014 <__bar_from_arm\+0xc>
+ 100c: e08fc00c add ip, pc, ip
+ 1010: e12fff1c bx ip
+ 1014: 02000001 .word 0x02000001
Disassembly of section .foo:
02001014 <bar>:
diff --git a/ld/testsuite/ld-arm/farcall-arm-thumb-pic-veneer.d b/ld/testsuite/ld-arm/farcall-arm-thumb-pic-veneer.d
index 15c2274cb7..45bc01c7a8 100644
--- a/ld/testsuite/ld-arm/farcall-arm-thumb-pic-veneer.d
+++ b/ld/testsuite/ld-arm/farcall-arm-thumb-pic-veneer.d
@@ -7,10 +7,10 @@ Disassembly of section .text:
1004: 00000000 andeq r0, r0, r0
00001008 <__bar_from_arm>:
- 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <__bar_from_arm\+0x8>
- 100c: e08ff00c add pc, pc, ip
- 1010: 02000001 .word 0x02000001
- 1014: 00000000 .word 0x00000000
+ 1008: e59fc004 ldr ip, \[pc, #4\] ; 1014 <__bar_from_arm\+0xc>
+ 100c: e08fc00c add ip, pc, ip
+ 1010: e12fff1c bx ip
+ 1014: 02000001 .word 0x02000001
Disassembly of section .foo:
02001014 <bar>:
diff --git a/ld/testsuite/ld-arm/farcall-thumb-thumb-blx-pic-veneer.d b/ld/testsuite/ld-arm/farcall-thumb-thumb-blx-pic-veneer.d
index d5bc3b1d44..86c0ca09a7 100644
--- a/ld/testsuite/ld-arm/farcall-thumb-thumb-blx-pic-veneer.d
+++ b/ld/testsuite/ld-arm/farcall-thumb-thumb-blx-pic-veneer.d
@@ -8,10 +8,10 @@ Disassembly of section .text:
\.\.\.
00001008 <__bar_veneer>:
- 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <__bar_veneer\+0x8>
- 100c: e08ff00c add pc, pc, ip
- 1010: 02000001 .word 0x02000001
- 1014: 00000000 .word 0x00000000
+ 1008: e59fc004 ldr ip, \[pc, #4\] ; 1014 <__bar_veneer\+0xc>
+ 100c: e08fc00c add ip, pc, ip
+ 1010: e12fff1c bx ip
+ 1014: 02000001 .word 0x02000001
Disassembly of section .foo:
02001014 <bar>: