Add test for ARMv6-M farcall with no profile info

2015-12-24  Thomas Preud'homme  <thomas.preudhomme@arm.com>

ld/testsuite/
    * ld-arm/arm-elf.exp: Run new test "Thumb-Thumb farcall v6-M (no
    profile)".
    * ld-arm/farcall-thumb-thumb-m-no-profile-a.s: New file.
    * ld-arm/farcall-thumb-thumb-m-no-profile-b.s: Likewise.
    * ld-arm/farcall-thumb-thumb-m-no-profile.d: Likewise.
This commit is contained in:
Thomas Preud'homme 2015-12-26 10:24:58 +08:00
parent 245d2ad7f5
commit 3e1a8f9569
5 changed files with 52 additions and 0 deletions

View File

@ -1,3 +1,11 @@
2015-12-26 Thomas Preud'homme <thomas.preudhomme@arm.com>
* ld-arm/arm-elf.exp: Run new test "Thumb-Thumb farcall v6-M (no
profile)".
* ld-arm/farcall-thumb-thumb-m-no-profile-a.s: New file.
* ld-arm/farcall-thumb-thumb-m-no-profile-b.s: Likewise.
* ld-arm/farcall-thumb-thumb-m-no-profile.d: Likewise.
2015-12-24 Thomas Preud'homme <thomas.preudhomme@arm.com>
* ld-arm/arm-elf.exp (armeabitests_common): Run new tests

View File

@ -481,6 +481,10 @@ set armeabitests_nonacl {
{"Thumb-Thumb farcall (PIC veneer)" "-Ttext 0x1000 --section-start .foo=0x2001014 --pic-veneer" "" "-march=armv4t" {farcall-thumb-thumb.s}
{{objdump -d farcall-thumb-thumb-pic-veneer.d}}
"farcall-thumb-thumb-pic-veneer"}
{"Thumb-Thumb farcall v6-M (no profile)" "-Ttext 0x1000" "" ""
{farcall-thumb-thumb-m-no-profile-a.s farcall-thumb-thumb-m-no-profile-b.s}
{{objdump -d farcall-thumb-thumb-m-no-profile.d}}
"farcall-thumb-thumb-m-no-profile"}
{"Thumb-ARM farcall" "-Ttext 0x1c01010 --section-start .foo=0x2001014" "" "-W" {farcall-thumb-arm.s}
{{objdump -d farcall-thumb-arm.d}}

View File

@ -0,0 +1,8 @@
.eabi_attribute Tag_CPU_arch, 11 @ V6-M
.thumb
.type _start, function
.global _start
.text
_start:
bl myfunc
b .

View File

@ -0,0 +1,8 @@
.eabi_attribute Tag_CPU_arch, 11 @ V6-M
.thumb
.type myfunc, function
.global myfunc
.text
.space 102400000
myfunc:
bx lr

View File

@ -0,0 +1,24 @@
.*: file format .*
Disassembly of section .text:
00001000 <_start>:
1000: f000 f802 bl 1008 <__myfunc_veneer>
1004: e7fe b.n 1004 <_start\+0x4>
\.\.\.
00001008 <__myfunc_veneer>:
1008: b401 push {r0}
100a: 4802 ldr r0, \[pc, #8\] ; \(1014 <__myfunc_veneer\+0xc>\)
100c: 4684 mov ip, r0
100e: bc01 pop {r0}
1010: 4760 bx ip
1012: bf00 nop
1014: 061a9019 .word 0x061a9019
\.\.\.
00080000 <_stack>:
\.\.\.
061a9018 <myfunc>:
61a9018: 4770 bx lr