aboutsummaryrefslogtreecommitdiff
path: root/sim/testsuite/frv/cscan.cgs
diff options
context:
space:
mode:
Diffstat (limited to 'sim/testsuite/frv/cscan.cgs')
-rw-r--r--sim/testsuite/frv/cscan.cgs394
1 files changed, 394 insertions, 0 deletions
diff --git a/sim/testsuite/frv/cscan.cgs b/sim/testsuite/frv/cscan.cgs
new file mode 100644
index 0000000..505bb5a
--- /dev/null
+++ b/sim/testsuite/frv/cscan.cgs
@@ -0,0 +1,394 @@
+# frv testcase for cscan $GRi,$GRj,$GRk,$CCi,$cond
+# mach: all
+
+ .include "testutils.inc"
+
+ start
+
+ .global cscan
+cscan:
+ set_spr_immed 0x1b1b,cccr
+
+ set_gr_limmed 0x2aaa,0xaaaa,gr7
+ set_gr_limmed 0xaaaa,0x5555,gr8
+ cscan gr7,gr8,gr9,cc0,1
+ test_gr_immed 0,gr9
+ test_gr_limmed 0x2aaa,0xaaaa,gr7
+ test_gr_limmed 0xaaaa,0x5555,gr8
+
+ set_gr_limmed 0x2aaa,0xaaaa,gr7
+ set_gr_limmed 0xaaaa,0xaaab,gr8
+ cscan gr7,gr8,gr9,cc0,1
+ test_gr_immed 0,gr9
+ test_gr_limmed 0x2aaa,0xaaaa,gr7
+ test_gr_limmed 0xaaaa,0xaaab,gr8
+
+ set_gr_limmed 0xd555,0x5555,gr7
+ set_gr_limmed 0xaaaa,0xaaaa,gr8
+ cscan gr7,gr8,gr9,cc0,1
+ test_gr_immed 63,gr9
+ test_gr_limmed 0xd555,0x5555,gr7
+ test_gr_limmed 0xaaaa,0xaaaa,gr8
+
+ set_gr_limmed 0xd555,0x5555,gr7
+ set_gr_limmed 0xaaaa,0xaaab,gr8
+ cscan gr7,gr8,gr9,cc0,1
+ test_gr_immed 63,gr9
+ test_gr_limmed 0xd555,0x5555,gr7
+ test_gr_limmed 0xaaaa,0xaaab,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0x7fff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc0,1
+ test_gr_immed 0,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0x7fff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xbfff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc4,1
+ test_gr_immed 2,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xbfff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xfffe,0xffff,gr8
+ cscan gr7,gr8,gr9,cc4,1
+ test_gr_immed 16,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xfffe,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xffff,0xfffd,gr8
+ cscan gr7,gr8,gr9,cc4,1
+ test_gr_immed 31,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xffff,0xfffd,gr8
+
+ set_gr_limmed 0xdead,0xbeef,gr7
+ set_gr_limmed 0xbeef,0xdead,gr8
+ cscan gr7,gr8,gr9,cc4,1
+ test_gr_immed 7,gr9
+ test_gr_limmed 0xdead,0xbeef,gr7
+ test_gr_limmed 0xbeef,0xdead,gr8
+
+ set_gr_immed 0x7fff,gr9
+ set_gr_limmed 0xaaaa,0xaaaa,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc0,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xaaaa,0xaaaa,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0xaaaa,0xaaab,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc0,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xaaaa,0xaaab,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0x5555,0x5555,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc0,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0x5555,0x5555,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0x5555,0x5555,gr7
+ set_gr_limmed 0x5555,0x5554,gr8
+ cscan gr7,gr8,gr9,cc0,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0x5555,0x5555,gr7
+ test_gr_limmed 0x5555,0x5554,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0x7fff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc0,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0x7fff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xbfff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc4,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xbfff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xfffe,0xffff,gr8
+ cscan gr7,gr8,gr9,cc4,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xfffe,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xffff,0xfffd,gr8
+ cscan gr7,gr8,gr9,cc4,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xffff,0xfffd,gr8
+
+ set_gr_limmed 0xdead,0xbeef,gr7
+ set_gr_limmed 0xbeef,0xdead,gr8
+ cscan gr7,gr8,gr9,cc4,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xdead,0xbeef,gr7
+ test_gr_limmed 0xbeef,0xdead,gr8
+
+ set_gr_limmed 0x2aaa,0xaaaa,gr7
+ set_gr_limmed 0xaaaa,0xaaaa,gr8
+ cscan gr7,gr8,gr9,cc1,0
+ test_gr_immed 0,gr9
+ test_gr_limmed 0x2aaa,0xaaaa,gr7
+ test_gr_limmed 0xaaaa,0xaaaa,gr8
+
+ set_gr_limmed 0x2aaa,0xaaaa,gr7
+ set_gr_limmed 0xaaaa,0xaaab,gr8
+ cscan gr7,gr8,gr9,cc1,0
+ test_gr_immed 0,gr9
+ test_gr_limmed 0x2aaa,0xaaaa,gr7
+ test_gr_limmed 0xaaaa,0xaaab,gr8
+
+ set_gr_limmed 0xd555,0x5555,gr7
+ set_gr_limmed 0xaaaa,0xaaaa,gr8
+ cscan gr7,gr8,gr9,cc1,0
+ test_gr_immed 63,gr9
+ test_gr_limmed 0xd555,0x5555,gr7
+ test_gr_limmed 0xaaaa,0xaaaa,gr8
+
+ set_gr_limmed 0xd555,0x5555,gr7
+ set_gr_limmed 0xaaaa,0xaaab,gr8
+ cscan gr7,gr8,gr9,cc1,0
+ test_gr_immed 63,gr9
+ test_gr_limmed 0xd555,0x5555,gr7
+ test_gr_limmed 0xaaaa,0xaaab,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0x7fff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc1,0
+ test_gr_immed 0,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0x7fff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xbfff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc5,0
+ test_gr_immed 2,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xbfff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xfffe,0xffff,gr8
+ cscan gr7,gr8,gr9,cc5,0
+ test_gr_immed 16,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xfffe,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xffff,0xfffd,gr8
+ cscan gr7,gr8,gr9,cc5,0
+ test_gr_immed 31,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xffff,0xfffd,gr8
+
+ set_gr_limmed 0xdead,0xbeef,gr7
+ set_gr_limmed 0xbeef,0xdead,gr8
+ cscan gr7,gr8,gr9,cc5,0
+ test_gr_immed 7,gr9
+ test_gr_limmed 0xdead,0xbeef,gr7
+ test_gr_limmed 0xbeef,0xdead,gr8
+
+ set_gr_immed 0x7fff,gr9
+ set_gr_limmed 0xaaaa,0xaaaa,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc1,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xaaaa,0xaaaa,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0xaaaa,0xaaab,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc1,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xaaaa,0xaaab,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0x5555,0x5555,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc1,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0x5555,0x5555,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0x5555,0x5555,gr7
+ set_gr_limmed 0x5555,0x5554,gr8
+ cscan gr7,gr8,gr9,cc1,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0x5555,0x5555,gr7
+ test_gr_limmed 0x5555,0x5554,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0x7fff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc1,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0x7fff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xbfff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc5,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xbfff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xfffe,0xffff,gr8
+ cscan gr7,gr8,gr9,cc5,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xfffe,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xffff,0xfffd,gr8
+ cscan gr7,gr8,gr9,cc5,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xffff,0xfffd,gr8
+
+ set_gr_limmed 0xdead,0xbeef,gr7
+ set_gr_limmed 0xbeef,0xdead,gr8
+ cscan gr7,gr8,gr9,cc5,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xdead,0xbeef,gr7
+ test_gr_limmed 0xbeef,0xdead,gr8
+
+ set_gr_immed 0x7fff,gr9
+ set_gr_limmed 0xaaaa,0xaaaa,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc2,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xaaaa,0xaaaa,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0xaaaa,0xaaab,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc2,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xaaaa,0xaaab,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0x5555,0x5555,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc2,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0x5555,0x5555,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0x5555,0x5555,gr7
+ set_gr_limmed 0x5555,0x5554,gr8
+ cscan gr7,gr8,gr9,cc2,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0x5555,0x5555,gr7
+ test_gr_limmed 0x5555,0x5554,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0x7fff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc2,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0x7fff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xbfff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc6,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xbfff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xfffe,0xffff,gr8
+ cscan gr7,gr8,gr9,cc6,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xfffe,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xffff,0xfffd,gr8
+ cscan gr7,gr8,gr9,cc6,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xffff,0xfffd,gr8
+
+ set_gr_limmed 0xdead,0xbeef,gr7
+ set_gr_limmed 0xbeef,0xdead,gr8
+ cscan gr7,gr8,gr9,cc6,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xdead,0xbeef,gr7
+ test_gr_limmed 0xbeef,0xdead,gr8
+
+ set_gr_immed 0x7fff,gr9
+ set_gr_limmed 0xaaaa,0xaaaa,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc3,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xaaaa,0xaaaa,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0xaaaa,0xaaab,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc3,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xaaaa,0xaaab,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0x5555,0x5555,gr7
+ set_gr_limmed 0x5555,0x5555,gr8
+ cscan gr7,gr8,gr9,cc3,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0x5555,0x5555,gr7
+ test_gr_limmed 0x5555,0x5555,gr8
+
+ set_gr_limmed 0x5555,0x5555,gr7
+ set_gr_limmed 0x5555,0x5554,gr8
+ cscan gr7,gr8,gr9,cc3,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0x5555,0x5555,gr7
+ test_gr_limmed 0x5555,0x5554,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0x7fff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc3,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0x7fff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xbfff,0xffff,gr8
+ cscan gr7,gr8,gr9,cc7,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xbfff,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xfffe,0xffff,gr8
+ cscan gr7,gr8,gr9,cc7,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xfffe,0xffff,gr8
+
+ set_gr_limmed 0xffff,0xffff,gr7
+ set_gr_limmed 0xffff,0xfffd,gr8
+ cscan gr7,gr8,gr9,cc7,0
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xffff,0xffff,gr7
+ test_gr_limmed 0xffff,0xfffd,gr8
+
+ set_gr_limmed 0xdead,0xbeef,gr7
+ set_gr_limmed 0xbeef,0xdead,gr8
+ cscan gr7,gr8,gr9,cc7,1
+ test_gr_immed 0x7fff,gr9
+ test_gr_limmed 0xdead,0xbeef,gr7
+ test_gr_limmed 0xbeef,0xdead,gr8
+
+ pass