diff options
Diffstat (limited to 'sim/testsuite/sim/frv/stqcu.cgs')
-rw-r--r-- | sim/testsuite/sim/frv/stqcu.cgs | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/sim/testsuite/sim/frv/stqcu.cgs b/sim/testsuite/sim/frv/stqcu.cgs new file mode 100644 index 00000000000..a7746caa538 --- /dev/null +++ b/sim/testsuite/sim/frv/stqcu.cgs @@ -0,0 +1,66 @@ +# frv testcase for stqcu $CPRk,@($GRi,$GRj) +# mach: frv +# as(frv): -mcpu=frv + + .include "testutils.inc" + + start + + .global stqcu +stqcu: + set_mem_limmed 0xbeef,0xdead,sp + inc_gr_immed -4,sp + set_mem_limmed 0xdead,0xbeef,sp + inc_gr_immed -4,sp + set_mem_limmed 0xdead,0xdead,sp + inc_gr_immed -4,sp + set_mem_limmed 0xbeef,0xbeef,sp + set_gr_gr sp,gr20 + set_gr_immed 0,gr7 + set_cpr_limmed 0xbeef,0xdead,cpr8 + set_cpr_limmed 0xdead,0xbeef,cpr9 + set_cpr_limmed 0xdead,0xdead,cpr10 + set_cpr_limmed 0xbeef,0xbeef,cpr11 + stqcu cpr8,@(sp,gr7) + test_gr_gr sp,gr20 + test_mem_limmed 0xbeef,0xdead,sp + inc_gr_immed 4,sp + test_mem_limmed 0xdead,0xbeef,sp + inc_gr_immed 4,sp + test_mem_limmed 0xdead,0xdead,sp + inc_gr_immed 4,sp + test_mem_limmed 0xbeef,0xbeef,sp + + inc_gr_immed -28,sp + set_gr_immed 16,gr7 + set_cpr_limmed 0x1111,0x1111,cpr8 + set_cpr_limmed 0x2222,0x2222,cpr9 + set_cpr_limmed 0x3333,0x3333,cpr10 + set_cpr_limmed 0x4444,0x4444,cpr11 + stqcu cpr8,@(sp,gr7) + test_gr_gr sp,gr20 + test_mem_limmed 0x1111,0x1111,sp + inc_gr_immed 4,sp + test_mem_limmed 0x2222,0x2222,sp + inc_gr_immed 4,sp + test_mem_limmed 0x3333,0x3333,sp + inc_gr_immed 4,sp + test_mem_limmed 0x4444,0x4444,sp + + inc_gr_immed 4,sp + set_gr_immed -16,gr7 + set_cpr_limmed 0x5555,0x5555,cpr8 + set_cpr_limmed 0x6666,0x6666,cpr9 + set_cpr_limmed 0x7777,0x7777,cpr10 + set_cpr_limmed 0x8888,0x8888,cpr11 + stqcu cpr8,@(sp,gr7) + test_gr_gr sp,gr20 + test_mem_limmed 0x5555,0x5555,sp + inc_gr_immed 4,sp + test_mem_limmed 0x6666,0x6666,sp + inc_gr_immed 4,sp + test_mem_limmed 0x7777,0x7777,sp + inc_gr_immed 4,sp + test_mem_limmed 0x8888,0x8888,sp + + pass |