summaryrefslogtreecommitdiff
path: root/sim/testsuite/frv/stdc.pcgs
diff options
context:
space:
mode:
Diffstat (limited to 'sim/testsuite/frv/stdc.pcgs')
-rw-r--r--sim/testsuite/frv/stdc.pcgs38
1 files changed, 38 insertions, 0 deletions
diff --git a/sim/testsuite/frv/stdc.pcgs b/sim/testsuite/frv/stdc.pcgs
new file mode 100644
index 00000000000..46c49250566
--- /dev/null
+++ b/sim/testsuite/frv/stdc.pcgs
@@ -0,0 +1,38 @@
+# frv parallel testcase for stdc $CPk,@($GRi,$GRj)
+# mach: frv
+
+ .include "testutils.inc"
+
+ start
+
+ .global stdc
+stdc:
+ set_mem_limmed 0xbeef,0xdead,sp
+ inc_gr_immed -4,sp
+ set_mem_limmed 0xdead,0xbeef,sp
+ set_gr_immed 0,gr7
+ set_cpr_limmed 0xbeef,0xdead,cpr8
+ set_cpr_limmed 0xdead,0xbeef,cpr9
+ stdc cpr8,@(sp,gr7) ; non parallel
+ test_mem_limmed 0xbeef,0xdead,sp
+ inc_gr_immed 4,sp
+ test_mem_limmed 0xdead,0xbeef,sp
+
+ set_mem_limmed 0xbeef,0xdead,sp
+ inc_gr_immed -4,sp
+ set_mem_limmed 0xdead,0xbeef,sp
+ set_gr_immed 4,gr7
+ set_cpr_limmed 0xbeef,0xdead,cpr8
+ set_cpr_limmed 0xdead,0xbeef,cpr9
+ stdc.p cpr8,@(sp,gr0) ; parallel
+ addi sp,4,sp
+ subi sp,4,sp
+ ldc @(sp,gr0),cpr10
+ ldc @(sp,gr7),cpr11
+ test_mem_limmed 0xbeef,0xdead,sp ; memory is set
+ inc_gr_immed 4,sp
+ test_mem_limmed 0xdead,0xbeef,sp
+ test_cpr_limmed 0xbeef,0xdead,cpr10
+ test_cpr_limmed 0xdead,0xbeef,cpr11
+
+ pass