aboutsummaryrefslogtreecommitdiff
path: root/sim/testsuite/bfin/move.s
diff options
context:
space:
mode:
Diffstat (limited to 'sim/testsuite/bfin/move.s')
-rw-r--r--sim/testsuite/bfin/move.s36
1 files changed, 36 insertions, 0 deletions
diff --git a/sim/testsuite/bfin/move.s b/sim/testsuite/bfin/move.s
new file mode 100644
index 0000000..b8f41c8
--- /dev/null
+++ b/sim/testsuite/bfin/move.s
@@ -0,0 +1,36 @@
+# Blackfin testcase for register move instructions
+# mach: bfin
+
+
+ .include "testutils.inc"
+
+ start
+
+ .macro move reg0:req, reg1:req, clobber:req
+ imm32 \reg0, 0x5555aaaa
+ imm32 \reg1, 0x12345678
+ imm32 \clobber, 0x12345678
+ \reg0 = \reg1;
+ CC = \reg0 == \clobber;
+ if CC jump 1f;
+ fail
+1:
+ .endm
+
+ move R0, R1, R2
+ move R0, R2, R3
+ move R0, R2, R4
+ move R0, R3, R5
+ move R0, R4, R6
+ move R0, R5, R7
+ move R0, R6, R1
+ move R0, R7, R2
+ move R7, R0, R1
+ move R7, R1, R2
+ move R7, R2, R3
+ move R7, R3, R4
+ move R7, R4, R5
+ move R7, R5, R6
+ move R7, R6, R0
+
+ pass