diff --git a/gas/testsuite/gas/arm/bl-local-v4t.d b/gas/testsuite/gas/arm/bl-local-v4t.d index 2985ceee906a06111fcbca6a8d081a79405c4e6c..cf68093988d91d99903017ac772d593779ff46d6 100644 --- a/gas/testsuite/gas/arm/bl-local-v4t.d +++ b/gas/testsuite/gas/arm/bl-local-v4t.d @@ -2,7 +2,6 @@ #objdump: -drw --prefix-addresses --show-raw-insn #target: *-*-*eabi* *-*-nacl* #as: -#warning_output: blx-local-thumb.l .*: +file format .*arm.* Disassembly of section .text: diff --git a/gas/testsuite/gas/arm/blx-local-thumb.d b/gas/testsuite/gas/arm/blx-local-thumb.d new file mode 100644 index 0000000000000000000000000000000000000000..a0a2c048f0b5ddf614bf677953875dfe38dbe5e4 --- /dev/null +++ b/gas/testsuite/gas/arm/blx-local-thumb.d @@ -0,0 +1,24 @@ +#name: Local BLX instructions in Thumb mode. +#objdump: -drw --prefix-addresses --show-raw-insn +#skip: *-*-pe *-*-wince +#as: +#warning_output: blx-local-thumb.l + +.*: +file format .*arm.* +Disassembly of section .text: +[^<]* f000 f80e bl 00000020 +[^<]* f000 e812 blx 0000002c +[^<]* f000 f80a bl 00000020 +[^<]* f000 e80e blx 0000002c +[^<]* f000 e80e blx 00000030 +[^<]* f000 f80c bl 00000030 +[^<]* f000 e806 blx 00000028 +[^<]* f000 f804 bl 00000028 +[^<]* e7ee b.n 00000000 +[^<]* e003 b.n 0000002c +[^<]* 46c0 nop ; \(mov r8, r8\) +[^<]* 46c0 nop ; \(mov r8, r8\) +[^<]* 46c0 nop ; \(mov r8, r8\) + ... +[^<]* e1a00000 nop ; \(mov r0, r0\) +[^<]* e1a00000 nop ; \(mov r0, r0\) diff --git a/gas/testsuite/gas/arm/blx-local-thumb.s b/gas/testsuite/gas/arm/blx-local-thumb.s new file mode 100644 index 0000000000000000000000000000000000000000..504aa96e33e92b6da6cbdde24b610512184db585 --- /dev/null +++ b/gas/testsuite/gas/arm/blx-local-thumb.s @@ -0,0 +1,30 @@ + .text + .arch armv5t + .syntax unified + .thumb +one: + blx foo @ bl foo + blx foo2 @ blx foo2 + bl foo @ bl foo + bl foo2 @ blx foo2 + blx fooundefarm + bl fooundefarm + blx fooundefthumb + bl fooundefthumb + .thumb + .type foo, %function + .thumb_func +foo: + b one @no relocs + b foo2 @ THUMB_PCREL_JUMP + nop + nop +fooundefthumb: + nop + .type foo2, %function + .arm + .align 2 +foo2: + nop +fooundefarm: + nop