summaryrefslogtreecommitdiff
path: root/sim/testsuite/frv/cmor.cgs
diff options
context:
space:
mode:
Diffstat (limited to 'sim/testsuite/frv/cmor.cgs')
-rw-r--r--sim/testsuite/frv/cmor.cgs101
1 files changed, 101 insertions, 0 deletions
diff --git a/sim/testsuite/frv/cmor.cgs b/sim/testsuite/frv/cmor.cgs
new file mode 100644
index 00000000000..ebdc5f2a313
--- /dev/null
+++ b/sim/testsuite/frv/cmor.cgs
@@ -0,0 +1,101 @@
+# frv testcase for cmor $FRinti,$FRintj,$FRintk,$CCi,$cond
+# mach: all
+
+ .include "testutils.inc"
+
+ start
+
+ .global cmor
+cmor:
+ set_spr_immed 0x1b1b,cccr
+
+ set_fr_iimmed 0xaaaa,0xaaaa,fr7
+ set_fr_iimmed 0x5555,0x5555,fr8
+ cmor fr7,fr8,fr8,cc0,1
+ test_fr_iimmed 0xffffffff,fr8
+
+ set_fr_iimmed 0x0000,0x0000,fr7
+ set_fr_iimmed 0x0000,0x0000,fr8
+ cmor fr7,fr8,fr8,cc0,1
+ test_fr_iimmed 0x00000000,fr8
+
+ set_fr_iimmed 0xdead,0x0000,fr7
+ set_fr_iimmed 0x0000,0xbeef,fr8
+ cmor fr7,fr8,fr8,cc4,1
+ test_fr_iimmed 0xdeadbeef,fr8
+
+ set_fr_iimmed 0xaaaa,0xaaaa,fr7
+ set_fr_iimmed 0x5555,0x5555,fr8
+ cmor fr7,fr8,fr8,cc1,0
+ test_fr_iimmed 0xffffffff,fr8
+
+ set_fr_iimmed 0x0000,0x0000,fr7
+ set_fr_iimmed 0x0000,0x0000,fr8
+ cmor fr7,fr8,fr8,cc1,0
+ test_fr_iimmed 0x00000000,fr8
+
+ set_fr_iimmed 0xdead,0x0000,fr7
+ set_fr_iimmed 0x0000,0xbeef,fr8
+ cmor fr7,fr8,fr8,cc5,0
+ test_fr_iimmed 0xdeadbeef,fr8
+
+ set_fr_iimmed 0xaaaa,0xaaaa,fr7
+ set_fr_iimmed 0x5555,0x5555,fr8
+ cmor fr7,fr8,fr8,cc0,0
+ test_fr_iimmed 0x55555555,fr8
+
+ set_fr_iimmed 0xdead,0xbeef,fr7
+ set_fr_iimmed 0x0000,0x0000,fr8
+ cmor fr7,fr8,fr8,cc0,0
+ test_fr_iimmed 0x00000000,fr8
+
+ set_fr_iimmed 0xdead,0x0000,fr7
+ set_fr_iimmed 0x0000,0xbeef,fr8
+ cmor fr7,fr8,fr8,cc4,0
+ test_fr_iimmed 0x0000beef,fr8
+
+ set_fr_iimmed 0xaaaa,0xaaaa,fr7
+ set_fr_iimmed 0x5555,0x5555,fr8
+ cmor fr7,fr8,fr8,cc1,1
+ test_fr_iimmed 0x55555555,fr8
+
+ set_fr_iimmed 0xdead,0xbeef,fr7
+ set_fr_iimmed 0x0000,0x0000,fr8
+ cmor fr7,fr8,fr8,cc1,1
+ test_fr_iimmed 0x00000000,fr8
+
+ set_fr_iimmed 0xdead,0x0000,fr7
+ set_fr_iimmed 0x0000,0xbeef,fr8
+ cmor fr7,fr8,fr8,cc5,1
+ test_fr_iimmed 0x0000beef,fr8
+
+ set_fr_iimmed 0xaaaa,0xaaaa,fr7
+ set_fr_iimmed 0x5555,0x5555,fr8
+ cmor fr7,fr8,fr8,cc2,0
+ test_fr_iimmed 0x55555555,fr8
+
+ set_fr_iimmed 0xdead,0xbeef,fr7
+ set_fr_iimmed 0x0000,0x0000,fr8
+ cmor fr7,fr8,fr8,cc2,1
+ test_fr_iimmed 0x00000000,fr8
+
+ set_fr_iimmed 0xdead,0x0000,fr7
+ set_fr_iimmed 0x0000,0xbeef,fr8
+ cmor fr7,fr8,fr8,cc6,0
+ test_fr_iimmed 0x0000beef,fr8
+
+ set_fr_iimmed 0xaaaa,0xaaaa,fr7
+ set_fr_iimmed 0x5555,0x5555,fr8
+ cmor fr7,fr8,fr8,cc3,1
+ test_fr_iimmed 0x55555555,fr8
+
+ set_fr_iimmed 0xdead,0xbeef,fr7
+ set_fr_iimmed 0x0000,0x0000,fr8
+ cmor fr7,fr8,fr8,cc3,0
+ test_fr_iimmed 0x00000000,fr8
+
+ set_fr_iimmed 0xdead,0x0000,fr7
+ set_fr_iimmed 0x0000,0xbeef,fr8
+ cmor fr7,fr8,fr8,cc7,1
+ test_fr_iimmed 0x0000beef,fr8
+ pass