diff options
author | Daniel Jacobowitz <drow@false.org> | 2008-06-25 14:28:48 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@false.org> | 2008-06-25 14:28:48 +0000 |
commit | 7413f23fb41cf2a09614c4db4703074ae878ee89 (patch) | |
tree | 50c723e2c83c56d63290c119528a3fba766636a8 /ld | |
parent | 92677fa666331d50978d88a969c3bb275ceea1a9 (diff) | |
download | gdb-7413f23fb41cf2a09614c4db4703074ae878ee89.zip gdb-7413f23fb41cf2a09614c4db4703074ae878ee89.tar.gz gdb-7413f23fb41cf2a09614c4db4703074ae878ee89.tar.bz2 |
* elf32-arm.c (STUB_ENTRY_NAME): Define.
(arm_thumb_thumb_long_branch_stub): Use bx instead of b.n.
(arm_pic_long_branch_stub): Mention R_ARM_REL32 instead of
R_ARM_ABS32.
(struct elf32_arm_stub_hash_entry): Add output_name.
(arm_build_one_stub): Move offsets into the offset argument
of _bfd_final_link_relocate. Correct offset for
arm_thumb_arm_v4t_stub_long_branch.
(elf32_arm_size_stubs): Set stub_entry->output_name.
(elf32_arm_ouput_plt_map_sym): Rename to elf32_arm_output_map_sym.
Update all callers.
(elf32_arm_output_stub_sym): New.
(arm_map_one_stub): Correct formatting. Use elf32_arm_output_stub_sym.
* ld-arm/farcall-arm-arm-be8.d, ld-arm/farcall-arm-arm-pic-veneer.d,
ld-arm/farcall-arm-arm.d, ld-arm/farcall-arm-thumb-blx-pic-veneer.d,
ld-arm/farcall-arm-thumb-blx.d, ld-arm/farcall-arm-thumb-pic-veneer.d,
ld-arm/farcall-arm-thumb.d, ld-arm/farcall-group-size2.d,
ld-arm/farcall-group.d, ld-arm/farcall-mix.d, ld-arm/farcall-mix2.d,
ld-arm/farcall-thumb-arm-blx-pic-veneer.d,
ld-arm/farcall-thumb-arm-blx.d, ld-arm/farcall-thumb-arm.d,
ld-arm/farcall-thumb-thumb-blx-pic-veneer.d,
ld-arm/farcall-thumb-thumb-blx.d, ld-arm/farcall-thumb-thumb-m.d,
ld-arm/thumb2-bl-as-thumb1-bad.d, ld-arm/thumb2-bl-bad.d: Update for
stub symbols and stub corrections.
Diffstat (limited to 'ld')
20 files changed, 120 insertions, 90 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index c703407..02614c7 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,17 @@ +2008-06-24 Daniel Jacobowitz <dan@codesourcery.com> + + * ld-arm/farcall-arm-arm-be8.d, ld-arm/farcall-arm-arm-pic-veneer.d, + ld-arm/farcall-arm-arm.d, ld-arm/farcall-arm-thumb-blx-pic-veneer.d, + ld-arm/farcall-arm-thumb-blx.d, ld-arm/farcall-arm-thumb-pic-veneer.d, + ld-arm/farcall-arm-thumb.d, ld-arm/farcall-group-size2.d, + ld-arm/farcall-group.d, ld-arm/farcall-mix.d, ld-arm/farcall-mix2.d, + ld-arm/farcall-thumb-arm-blx-pic-veneer.d, + ld-arm/farcall-thumb-arm-blx.d, ld-arm/farcall-thumb-arm.d, + ld-arm/farcall-thumb-thumb-blx-pic-veneer.d, + ld-arm/farcall-thumb-thumb-blx.d, ld-arm/farcall-thumb-thumb-m.d, + ld-arm/thumb2-bl-as-thumb1-bad.d, ld-arm/thumb2-bl-bad.d: Update for + stub symbols and stub corrections. + 2008-06-20 Alan Modra <amodra@bigpond.net.au> * ld-spu/ovl.d: Update. diff --git a/ld/testsuite/ld-arm/farcall-arm-arm-be8.d b/ld/testsuite/ld-arm/farcall-arm-arm-be8.d index b409517..524ce6a 100644 --- a/ld/testsuite/ld-arm/farcall-arm-arm-be8.d +++ b/ld/testsuite/ld-arm/farcall-arm-arm-be8.d @@ -2,7 +2,7 @@ Disassembly of section .text: -00001000 <_start-0x8>: +00001000 <__bar_veneer>: 1000: 04f01fe5 .* 1004: 02001020 .word 0x02001020 diff --git a/ld/testsuite/ld-arm/farcall-arm-arm-pic-veneer.d b/ld/testsuite/ld-arm/farcall-arm-arm-pic-veneer.d index 1d0af22..1fd79a7 100644 --- a/ld/testsuite/ld-arm/farcall-arm-arm-pic-veneer.d +++ b/ld/testsuite/ld-arm/farcall-arm-arm-pic-veneer.d @@ -2,14 +2,14 @@ Disassembly of section .text: -00001000 <_start-0x10>: - 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <_start-0x8> +00001000 <__bar_veneer>: + 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <__bar_veneer\+0x8> 1004: e08ff00c add pc, pc, ip 1008: 02000018 .word 0x02000018 100c: 00000000 .word 0x00000000 00001010 <_start>: - 1010: ebfffffa bl 1000 <_start-0x10> + 1010: ebfffffa bl 1000 <__bar_veneer> Disassembly of section .foo: 02001020 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-arm-arm.d b/ld/testsuite/ld-arm/farcall-arm-arm.d index 3ccb2c4..e4c8ca3 100644 --- a/ld/testsuite/ld-arm/farcall-arm-arm.d +++ b/ld/testsuite/ld-arm/farcall-arm-arm.d @@ -2,12 +2,12 @@ Disassembly of section .text: -00001000 <_start-0x8>: - 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <_start-0x4> +00001000 <__bar_veneer>: + 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <__bar_veneer\+0x4> 1004: 02001020 .word 0x02001020 00001008 <_start>: - 1008: ebfffffc bl 1000 <_start-0x8> + 1008: ebfffffc bl 1000 <__bar_veneer> Disassembly of section .foo: 02001020 <bar>: 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 3ede5de..4fbba82 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 @@ -2,14 +2,14 @@ Disassembly of section .text: -00001000 <_start-0x10>: - 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <_start-0x8> +00001000 <__bar_from_arm>: + 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <__bar_from_arm\+0x8> 1004: e08ff00c add pc, pc, ip 1008: 0200000d .word 0x0200000d 100c: 00000000 .word 0x00000000 00001010 <_start>: - 1010: ebfffffa bl 1000 <_start-0x10> + 1010: ebfffffa bl 1000 <__bar_from_arm> Disassembly of section .foo: 02001014 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-arm-thumb-blx.d b/ld/testsuite/ld-arm/farcall-arm-thumb-blx.d index 86aaf39..d67387c 100644 --- a/ld/testsuite/ld-arm/farcall-arm-thumb-blx.d +++ b/ld/testsuite/ld-arm/farcall-arm-thumb-blx.d @@ -2,12 +2,12 @@ Disassembly of section .text: -00001000 <_start-0x8>: - 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <_start-0x4> +00001000 <__bar_from_arm>: + 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <__bar_from_arm\+0x4> 1004: 02001015 .word 0x02001015 00001008 <_start>: - 1008: ebfffffc bl 1000 <_start-0x8> + 1008: ebfffffc bl 1000 <__bar_from_arm> 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 3ede5de..4fbba82 100644 --- a/ld/testsuite/ld-arm/farcall-arm-thumb-pic-veneer.d +++ b/ld/testsuite/ld-arm/farcall-arm-thumb-pic-veneer.d @@ -2,14 +2,14 @@ Disassembly of section .text: -00001000 <_start-0x10>: - 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <_start-0x8> +00001000 <__bar_from_arm>: + 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <__bar_from_arm\+0x8> 1004: e08ff00c add pc, pc, ip 1008: 0200000d .word 0x0200000d 100c: 00000000 .word 0x00000000 00001010 <_start>: - 1010: ebfffffa bl 1000 <_start-0x10> + 1010: ebfffffa bl 1000 <__bar_from_arm> Disassembly of section .foo: 02001014 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-arm-thumb.d b/ld/testsuite/ld-arm/farcall-arm-thumb.d index c664eff..d7519a0 100644 --- a/ld/testsuite/ld-arm/farcall-arm-thumb.d +++ b/ld/testsuite/ld-arm/farcall-arm-thumb.d @@ -2,14 +2,14 @@ Disassembly of section .text: -00001000 <_start-0x10>: - 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <_start-0x8> +00001000 <__bar_from_arm>: + 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <__bar_from_arm\+0x8> 1004: e12fff1c bx ip 1008: 02001015 .word 0x02001015 100c: 00000000 .word 0x00000000 00001010 <_start>: - 1010: ebfffffa bl 1000 <_start-0x10> + 1010: ebfffffa bl 1000 <__bar_from_arm> Disassembly of section .foo: 02001014 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-group-size2.d b/ld/testsuite/ld-arm/farcall-group-size2.d index 7367151..bab6c68 100644 --- a/ld/testsuite/ld-arm/farcall-group-size2.d +++ b/ld/testsuite/ld-arm/farcall-group-size2.d @@ -3,31 +3,35 @@ Disassembly of section .text: -00001000 <_start-0x18>: - 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <_start-0x14> +00001000 <__bar2_veneer>: + 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <__bar2_veneer\+0x4> 1004: 02003024 .word 0x02003024 - 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <_start-0x8> +00001008 <__bar_from_arm>: + 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <__bar_from_arm\+0x8> 100c: e12fff1c bx ip 1010: 02003021 .word 0x02003021 1014: 00000000 .word 0x00000000 00001018 <_start>: - 1018: ebfffffa bl 1008 <_start-0x10> - 101c: ebfffff7 bl 1000 <_start-0x18> - 1020: e51ff004 ldr pc, \[pc, #-4\] ; 1024 <_start\+0xc> + 1018: ebfffffa bl 1008 <__bar_from_arm> + 101c: ebfffff7 bl 1000 <__bar2_veneer> +00001020 <__bar3_veneer>: + 1020: e51ff004 ldr pc, \[pc, #-4\] ; 1024 <__bar3_veneer\+0x4> 1024: 02003028 .word 0x02003028 - 1028: e59fc000 ldr ip, \[pc, #0\] ; 1030 <_start\+0x18> +00001028 <__bar5_from_arm>: + 1028: e59fc000 ldr ip, \[pc, #0\] ; 1030 <__bar5_from_arm\+0x8> 102c: e12fff1c bx ip 1030: 0200302f .word 0x0200302f - 1034: e59fc000 ldr ip, \[pc, #0\] ; 103c <_start\+0x24> +00001034 <__bar4_from_arm>: + 1034: e59fc000 ldr ip, \[pc, #0\] ; 103c <__bar4_from_arm\+0x8> 1038: e12fff1c bx ip 103c: 0200302d .word 0x0200302d ... 00001048 <myfunc>: - 1048: ebfffff4 bl 1020 <_start\+0x8> - 104c: ebfffff8 bl 1034 <_start\+0x1c> - 1050: ebfffff4 bl 1028 <_start\+0x10> + 1048: ebfffff4 bl 1020 <__bar3_veneer> + 104c: ebfffff8 bl 1034 <__bar4_from_arm> + 1050: ebfffff4 bl 1028 <__bar5_from_arm> Disassembly of section .foo: 02003020 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-group.d b/ld/testsuite/ld-arm/farcall-group.d index 813344d..95ebfb3 100644 --- a/ld/testsuite/ld-arm/farcall-group.d +++ b/ld/testsuite/ld-arm/farcall-group.d @@ -3,30 +3,34 @@ Disassembly of section .text: -00001000 <_start-0x40>: - 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <_start-0x3c> +00001000 <__bar2_veneer>: + 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <__bar2_veneer\+0x4> 1004: 02003024 .word 0x02003024 - 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <_start-0x30> +00001008 <__bar_from_arm>: + 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <__bar_from_arm\+0x8> 100c: e12fff1c bx ip 1010: 02003021 .word 0x02003021 - 1014: e51ff004 ldr pc, \[pc, #-4\] ; 1018 <_start-0x28> +00001014 <__bar3_veneer>: + 1014: e51ff004 ldr pc, \[pc, #-4\] ; 1018 <__bar3_veneer\+0x4> 1018: 02003028 .word 0x02003028 - 101c: e59fc000 ldr ip, \[pc, #0\] ; 1024 <_start-0x1c> +0000101c <__bar4_from_arm>: + 101c: e59fc000 ldr ip, \[pc, #0\] ; 1024 <__bar4_from_arm\+0x8> 1020: e12fff1c bx ip 1024: 0200302d .word 0x0200302d - 1028: e59fc000 ldr ip, \[pc, #0\] ; 1030 <_start-0x10> +00001028 <__bar5_from_arm>: + 1028: e59fc000 ldr ip, \[pc, #0\] ; 1030 <__bar5_from_arm\+0x8> 102c: e12fff1c bx ip 1030: 0200302f .word 0x0200302f ... 00001040 <_start>: - 1040: ebfffff0 bl 1008 <_start-0x38> - 1044: ebffffed bl 1000 <_start-0x40> + 1040: ebfffff0 bl 1008 <__bar_from_arm> + 1044: ebffffed bl 1000 <__bar2_veneer> 00001048 <myfunc>: - 1048: ebfffff1 bl 1014 <_start-0x2c> - 104c: ebfffff2 bl 101c <_start-0x24> - 1050: ebfffff4 bl 1028 <_start-0x18> + 1048: ebfffff1 bl 1014 <__bar3_veneer> + 104c: ebfffff2 bl 101c <__bar4_from_arm> + 1050: ebfffff4 bl 1028 <__bar5_from_arm> Disassembly of section .foo: 02003020 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-mix.d b/ld/testsuite/ld-arm/farcall-mix.d index 8a00798..1880ae8 100644 --- a/ld/testsuite/ld-arm/farcall-mix.d +++ b/ld/testsuite/ld-arm/farcall-mix.d @@ -3,28 +3,32 @@ Disassembly of section .text: -00001000 <_start-0x40>: - 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <_start-0x3c> +00001000 <__bar2_veneer>: + 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <__bar2_veneer\+0x4> 1004: 02002024 .word 0x02002024 - 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <_start-0x30> +00001008 <__bar_from_arm>: + 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <__bar_from_arm\+0x8> 100c: e12fff1c bx ip 1010: 02002021 .word 0x02002021 - 1014: e51ff004 ldr pc, \[pc, #-4\] ; 1018 <_start-0x28> +00001014 <__bar3_veneer>: + 1014: e51ff004 ldr pc, \[pc, #-4\] ; 1018 <__bar3_veneer\+0x4> 1018: 02002028 .word 0x02002028 - 101c: e59fc000 ldr ip, \[pc, #0\] ; 1024 <_start-0x1c> +0000101c <__bar4_from_arm>: + 101c: e59fc000 ldr ip, \[pc, #0\] ; 1024 <__bar4_from_arm\+0x8> 1020: e12fff1c bx ip 1024: 0200202d .word 0x0200202d - 1028: e59fc000 ldr ip, \[pc, #0\] ; 1030 <_start-0x10> +00001028 <__bar5_from_arm>: + 1028: e59fc000 ldr ip, \[pc, #0\] ; 1030 <__bar5_from_arm\+0x8> 102c: e12fff1c bx ip 1030: 0200202f .word 0x0200202f ... 00001040 <_start>: - 1040: ebfffff0 bl 1008 <_start-0x38> - 1044: ebffffed bl 1000 <_start-0x40> - 1048: ebfffff1 bl 1014 <_start-0x2c> - 104c: ebfffff2 bl 101c <_start-0x24> - 1050: ebfffff4 bl 1028 <_start-0x18> + 1040: ebfffff0 bl 1008 <__bar_from_arm> + 1044: ebffffed bl 1000 <__bar2_veneer> + 1048: ebfffff1 bl 1014 <__bar3_veneer> + 104c: ebfffff2 bl 101c <__bar4_from_arm> + 1050: ebfffff4 bl 1028 <__bar5_from_arm> Disassembly of section .foo: 02002020 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-mix2.d b/ld/testsuite/ld-arm/farcall-mix2.d index eb70843..0af3027 100644 --- a/ld/testsuite/ld-arm/farcall-mix2.d +++ b/ld/testsuite/ld-arm/farcall-mix2.d @@ -3,32 +3,35 @@ Disassembly of section .text: -00001000 <_start-0x18>: - 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <_start-0x14> +00001000 <__bar2_veneer>: + 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <__bar2_veneer\+0x4> 1004: 02003024 .word 0x02003024 - 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <_start-0x8> +00001008 <__bar_from_arm>: + 1008: e59fc000 ldr ip, \[pc, #0\] ; 1010 <__bar_from_arm\+0x8> 100c: e12fff1c bx ip 1010: 02003021 .word 0x02003021 1014: 00000000 .word 0x00000000 00001018 <_start>: - 1018: ebfffffa bl 1008 <_start-0x10> - 101c: ebfffff7 bl 1000 <_start-0x18> + 1018: ebfffffa bl 1008 <__bar_from_arm> + 101c: ebfffff7 bl 1000 <__bar2_veneer> Disassembly of section .mytext: -00002000 <.mytext>: - 2000: e59fc000 ldr ip, \[pc, #0\] ; 2008 <__exidx_end\+0xfe8> +00002000 <__bar5_from_arm>: + 2000: e59fc000 ldr ip, \[pc, #0\] ; 2008 <__bar5_from_arm\+0x8> 2004: e12fff1c bx ip 2008: 0200302f .word 0x0200302f - 200c: e51ff004 ldr pc, \[pc, #-4\] ; 2010 <__exidx_end\+0xff0> +0000200c <__bar3_veneer>: + 200c: e51ff004 ldr pc, \[pc, #-4\] ; 2010 <__bar3_veneer\+0x4> 2010: 02003028 .word 0x02003028 - 2014: e59fc000 ldr ip, \[pc, #0\] ; 201c <__exidx_end\+0xffc> +00002014 <__bar4_from_arm>: + 2014: e59fc000 ldr ip, \[pc, #0\] ; 201c <__bar4_from_arm\+0x8> 2018: e12fff1c bx ip 201c: 0200302d .word 0x0200302d ... - 2028: ebfffff7 bl 200c <__exidx_end\+0xfec> - 202c: ebfffff8 bl 2014 <__exidx_end\+0xff4> - 2030: ebfffff2 bl 2000 <__exidx_end\+0xfe0> + 2028: ebfffff7 bl 200c <__bar3_veneer> + 202c: ebfffff8 bl 2014 <__bar4_from_arm> + 2030: ebfffff2 bl 2000 <__bar5_from_arm> Disassembly of section .foo: 02003020 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-thumb-arm-blx-pic-veneer.d b/ld/testsuite/ld-arm/farcall-thumb-arm-blx-pic-veneer.d index 23db877..db4df3c 100644 --- a/ld/testsuite/ld-arm/farcall-thumb-arm-blx-pic-veneer.d +++ b/ld/testsuite/ld-arm/farcall-thumb-arm-blx-pic-veneer.d @@ -2,14 +2,14 @@ Disassembly of section .text: -00001000 <_start-0x10>: - 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <_start-0x8> +00001000 <__bar_from_thumb>: + 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <__bar_from_thumb\+0x8> 1004: e08ff00c add pc, pc, ip 1008: 0200000c .word 0x0200000c 100c: 00000000 .word 0x00000000 00001010 <_start>: - 1010: f7ff eff6 blx 1000 <_start-0x10> + 1010: f7ff eff6 blx 1000 <__bar_from_thumb> Disassembly of section .foo: 02001014 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-thumb-arm-blx.d b/ld/testsuite/ld-arm/farcall-thumb-arm-blx.d index 7a72ed4..21cf736 100644 --- a/ld/testsuite/ld-arm/farcall-thumb-arm-blx.d +++ b/ld/testsuite/ld-arm/farcall-thumb-arm-blx.d @@ -2,12 +2,12 @@ Disassembly of section .text: -00001000 <_start-0x8>: - 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <_start-0x4> +00001000 <__bar_from_thumb>: + 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <__bar_from_thumb\+0x4> 1004: 02001014 .word 0x02001014 00001008 <_start>: - 1008: f7ff effa blx 1000 <_start-0x8> + 1008: f7ff effa blx 1000 <__bar_from_thumb> Disassembly of section .foo: 02001014 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-thumb-arm.d b/ld/testsuite/ld-arm/farcall-thumb-arm.d index d733511..61e72be 100644 --- a/ld/testsuite/ld-arm/farcall-thumb-arm.d +++ b/ld/testsuite/ld-arm/farcall-thumb-arm.d @@ -2,17 +2,18 @@ Disassembly of section .text: -00001000 <_start-0x18>: +00001000 <__bar_from_thumb>: 1000: b540 push {r6, lr} - 1002: 4e03 ldr r6, \[pc, #12\] \(1010 <_start-0x8>\) + 1002: 4e03 ldr r6, \[pc, #12\] \(1010 <__bar_from_thumb\+0x10>\) 1004: 46fe mov lr, pc 1006: 4730 bx r6 1008: e8bd4040 pop {r6, lr} 100c: e12fff1e bx lr - ... + 1010: 02001014 .word 0x02001014 + 1014: 00000000 .word 0x00000000 00001018 <_start>: - 1018: f7ff fff2 bl 1000 <_start-0x18> + 1018: f7ff fff2 bl 1000 <__bar_from_thumb> 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 cadb620..06107b7 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 @@ -2,14 +2,14 @@ Disassembly of section .text: -00001000 <_start-0x10>: - 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <_start-0x8> +00001000 <__bar_veneer>: + 1000: e59fc000 ldr ip, \[pc, #0\] ; 1008 <__bar_veneer\+0x8> 1004: e08ff00c add pc, pc, ip 1008: 0200000d .word 0x0200000d 100c: 00000000 .word 0x00000000 00001010 <_start>: - 1010: f7ff eff6 blx 1000 <_start-0x10> + 1010: f7ff eff6 blx 1000 <__bar_veneer> Disassembly of section .foo: 02001014 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-thumb-thumb-blx.d b/ld/testsuite/ld-arm/farcall-thumb-thumb-blx.d index 11280c9..f8e9836 100644 --- a/ld/testsuite/ld-arm/farcall-thumb-thumb-blx.d +++ b/ld/testsuite/ld-arm/farcall-thumb-thumb-blx.d @@ -2,12 +2,12 @@ Disassembly of section .text: -00001000 <_start-0x8>: - 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <_start-0x4> +00001000 <__bar_veneer>: + 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <__bar_veneer\+0x4> 1004: 02001015 .word 0x02001015 00001008 <_start>: - 1008: f7ff effa blx 1000 <_start-0x8> + 1008: f7ff effa blx 1000 <__bar_veneer> Disassembly of section .foo: 02001014 <bar>: diff --git a/ld/testsuite/ld-arm/farcall-thumb-thumb-m.d b/ld/testsuite/ld-arm/farcall-thumb-thumb-m.d index 6415be7..2f7cdaf 100644 --- a/ld/testsuite/ld-arm/farcall-thumb-thumb-m.d +++ b/ld/testsuite/ld-arm/farcall-thumb-thumb-m.d @@ -2,17 +2,17 @@ Disassembly of section .text: -00001000 <_start-0x10>: +00001000 <__bar_veneer>: 1000: b540 push {r6, lr} - 1002: 4e02 ldr r6, \[pc, #8\] \(100c <_start-0x4>\) + 1002: 4e02 ldr r6, \[pc, #8\] \(100c <__bar_veneer\+0xc>\) 1004: 46fe mov lr, pc - 1006: e7fe b.n 1006 <_start-0xa> + 1006: 4730 bx r6 1008: bd40 pop {r6, pc} 100a: bf00 nop 100c: 02001015 .word 0x02001015 00001010 <_start>: - 1010: f7ff fff6 bl 1000 <_start-0x10> + 1010: f7ff fff6 bl 1000 <__bar_veneer> Disassembly of section .foo: 02001014 <bar>: diff --git a/ld/testsuite/ld-arm/thumb2-bl-as-thumb1-bad.d b/ld/testsuite/ld-arm/thumb2-bl-as-thumb1-bad.d index 1dfca21..28d1b29 100644 --- a/ld/testsuite/ld-arm/thumb2-bl-as-thumb1-bad.d +++ b/ld/testsuite/ld-arm/thumb2-bl-as-thumb1-bad.d @@ -2,12 +2,12 @@ Disassembly of section .text: -00001000 <_start-0x8>: - 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <_start-0x4> +00001000 <__bar_veneer>: + 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <__bar_veneer\+0x4> 1004: 0040100d .word 0x0040100d 00001008 <_start>: - 1008: f7ff effa blx 1000 <_start-0x8> + 1008: f7ff effa blx 1000 <__bar_veneer> Disassembly of section .foo: 0040100c <bar>: diff --git a/ld/testsuite/ld-arm/thumb2-bl-bad.d b/ld/testsuite/ld-arm/thumb2-bl-bad.d index ea38797..12674f9 100644 --- a/ld/testsuite/ld-arm/thumb2-bl-bad.d +++ b/ld/testsuite/ld-arm/thumb2-bl-bad.d @@ -2,12 +2,12 @@ Disassembly of section .text: -00001000 <_start-0x8>: - 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <_start-0x4> +00001000 <__bar_veneer>: + 1000: e51ff004 ldr pc, \[pc, #-4\] ; 1004 <__bar_veneer\+0x4> 1004: 0100100d .word 0x0100100d 00001008 <_start>: - 1008: f7ff effa blx 1000 <_start-0x8> + 1008: f7ff effa blx 1000 <__bar_veneer> Disassembly of section .foo: 0100100c <bar>: |