summaryrefslogtreecommitdiff
path: root/sim/testsuite/sim/fr30/ldi32.cgs
diff options
context:
space:
mode:
Diffstat (limited to 'sim/testsuite/sim/fr30/ldi32.cgs')
-rw-r--r--sim/testsuite/sim/fr30/ldi32.cgs37
1 files changed, 37 insertions, 0 deletions
diff --git a/sim/testsuite/sim/fr30/ldi32.cgs b/sim/testsuite/sim/fr30/ldi32.cgs
new file mode 100644
index 00000000000..3e56db741e3
--- /dev/null
+++ b/sim/testsuite/sim/fr30/ldi32.cgs
@@ -0,0 +1,37 @@
+# fr30 testcase for ldi32 $i32,$Ri
+# mach(): fr30
+
+ .include "testutils.inc"
+
+ START
+
+ .text
+ .global ldi32
+ldi32:
+ ; Test ldi32 $i32,$Ri
+ set_cc 0x0f ; condition codes should not change
+ ldi32 #0x00000000,r7
+ test_cc 1 1 1 1
+ test_h_gr 0,r7
+
+ set_cc 0x07 ; condition codes should not change
+ ldi:32 1,r7
+ test_cc 0 1 1 1
+ test_h_gr 1,r7
+
+ set_cc 0x0b ; condition codes should not change
+ ldi32 0x7fffffff,r7
+ test_cc 1 0 1 1
+ test_h_gr 0x7fffffff,r7
+
+ set_cc 0x0d ; condition codes should not change
+ ldi:32 0x80000000,r7
+ test_cc 1 1 0 1
+ test_h_gr 0x80000000,r7
+
+ set_cc 0x0e ; condition codes should not change
+ ldi32 0xffffffff,r7
+ test_cc 1 1 1 0
+ test_h_gr -1,r7
+
+ pass