diff options
Diffstat (limited to 'binutils-2.25/gas/testsuite/gas/arm/ldr-t.s')
-rw-r--r-- | binutils-2.25/gas/testsuite/gas/arm/ldr-t.s | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/binutils-2.25/gas/testsuite/gas/arm/ldr-t.s b/binutils-2.25/gas/testsuite/gas/arm/ldr-t.s new file mode 100644 index 00000000..4aaecdf6 --- /dev/null +++ b/binutils-2.25/gas/testsuite/gas/arm/ldr-t.s @@ -0,0 +1,84 @@ +.syntax unified +.arch armv7-a +.thumb + .global foo +foo: + @ldr-immediate + + @!wback && (n == t) + ldr r1, [r1, #5] + + @wback && !(n == t) + ldr r1, [r2, #5]! + + @!(rt == r15) && rn == r15 + @ && bits<0..1> (immediate) != 00 + ldr r1, [r15, #5] + + @rt == r15 && !(rn == r15) + @ && bits<0..1> (immediate) != 00 + ldr r15, [r1, #5] + + @rt == r15 && rn == r15 + @ && bits<0..1> (immediate) == 00 + ldr r15, [r15, #4] + + @inITBlock && !(rt == 15) && !lastInITBlock + ittt ge + ldrge r1, [r15, #4] + nopge + nopge + + @inITBlock && rt == 15 && lastInITBlock + it ge + ldrge r15, [r15, #4] + + @ldr-literal + + @inITBlock && !(rt == 15) && !lastInITBlock + ittt ge + ldrge r1, .-0xab4 + nopge + nopge + + @inITBlock && (rt == 15) && lastInITBlock + it ge + ldrge r15, .-0xab4 + + @!(rt == r15) && bits<0..1> (immediate) != 00 + ldr r1, .-0xab7 + + @rt == r15 && bits<0..1> (immediate) == 00 + ldr r15, .-0xab4 + + @ldr-register + + @inITBlock && !(rt == 15) && !lastInITBlock + ittt ge + ldrge r1, [r2, r1] + nopge + nopge + + @inITBlock && (rt == 15) && lastInITBlock + it ge + ldrge r15, [r2, r1] + + @!(rm == 13 || rm == 15) + ldr r1, [r2, r3] + + @str-immediate + + @!(rt == 15 || rn == 15) + str r1, [r2, #10] + + @!wback && (n == t) + str r1, [r1, #10] + + @wback && !(n == t) + str r1, [r2, #10]! + + @str-register + + @!(rt == 15 || rm == 13 || rm == 15) + str r1, [r2, r3] + |