diff options
Diffstat (limited to 'sim/testsuite/frv/cstdfu.cgs')
-rw-r--r-- | sim/testsuite/frv/cstdfu.cgs | 248 |
1 files changed, 248 insertions, 0 deletions
diff --git a/sim/testsuite/frv/cstdfu.cgs b/sim/testsuite/frv/cstdfu.cgs new file mode 100644 index 0000000..b489bc9 --- /dev/null +++ b/sim/testsuite/frv/cstdfu.cgs @@ -0,0 +1,248 @@ +# frv testcase for cstdfu $GRk,@($GRi,$GRj),$CCi,$cond +# mach: all + + .include "testutils.inc" + + start + + .global cstdfu +cstdfu: + set_spr_immed 0x1b1b,cccr + set_gr_gr sp,gr20 + + set_mem_limmed 0xbeef,0xdead,sp + inc_gr_immed -4,sp + set_mem_limmed 0xdead,0xbeef,sp + set_gr_gr sp,gr21 + + set_gr_immed 0,gr7 + set_fr_iimmed 0xbeef,0xdead,fr8 + set_fr_iimmed 0xdead,0xbeef,fr9 + cstdfu fr8,@(sp,gr7),cc0,1 + set_gr_gr gr21,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + test_gr_gr sp,gr21 + + inc_gr_immed -8,sp + set_gr_immed 8,gr7 + set_fr_iimmed 0xaaaa,0xaaaa,fr8 + set_fr_iimmed 0xbbbb,0xbbbb,fr9 + cstdfu fr8,@(sp,gr7),cc0,1 + set_gr_gr gr21,gr22 + test_mem_limmed 0xaaaa,0xaaaa,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbbbb,0xbbbb,gr22 + test_gr_gr sp,gr21 + + inc_gr_immed 8,sp + set_gr_immed -8,gr7 + set_fr_iimmed 0xcccc,0xcccc,fr8 + set_fr_iimmed 0xdddd,0xdddd,fr9 + cstdfu fr8,@(sp,gr7),cc4,1 + set_gr_gr gr21,gr22 + test_mem_limmed 0xcccc,0xcccc,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xdddd,0xdddd,gr22 + test_gr_gr sp,gr21 + + set_gr_gr gr20,sp + set_mem_limmed 0xbeef,0xdead,sp + inc_gr_immed -4,sp + set_mem_limmed 0xdead,0xbeef,sp + set_gr_gr sp,gr21 + + set_gr_immed 0,gr7 + set_fr_iimmed 0xbeef,0xdead,fr8 + set_fr_iimmed 0xdead,0xbeef,fr9 + cstdfu fr8,@(sp,gr7),cc0,0 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr21 + + inc_gr_immed -8,sp + set_gr_gr sp,gr23 + set_gr_immed 8,gr7 + set_fr_iimmed 0xaaaa,0xaaaa,fr8 + set_fr_iimmed 0xbbbb,0xbbbb,fr9 + cstdfu fr8,@(sp,gr7),cc0,0 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr23 + + inc_gr_immed 16,sp + set_gr_gr sp,gr23 + set_gr_immed -8,gr7 + set_fr_iimmed 0xcccc,0xcccc,fr8 + set_fr_iimmed 0xdddd,0xdddd,fr9 + cstdfu fr8,@(sp,gr7),cc4,0 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr23 + + set_gr_gr gr20,sp + set_mem_limmed 0xbeef,0xdead,sp + inc_gr_immed -4,sp + set_mem_limmed 0xdead,0xbeef,sp + set_gr_gr sp,gr21 + + set_gr_immed 0,gr7 + set_fr_iimmed 0xbeef,0xdead,fr8 + set_fr_iimmed 0xdead,0xbeef,fr9 + cstdfu fr8,@(sp,gr7),cc1,0 + set_gr_gr gr21,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + test_gr_gr sp,gr21 + + inc_gr_immed -8,sp + set_gr_immed 8,gr7 + set_fr_iimmed 0xaaaa,0xaaaa,fr8 + set_fr_iimmed 0xbbbb,0xbbbb,fr9 + cstdfu fr8,@(sp,gr7),cc1,0 + set_gr_gr gr21,gr22 + test_mem_limmed 0xaaaa,0xaaaa,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbbbb,0xbbbb,gr22 + test_gr_gr sp,gr21 + + inc_gr_immed 8,sp + set_gr_immed -8,gr7 + set_fr_iimmed 0xcccc,0xcccc,fr8 + set_fr_iimmed 0xdddd,0xdddd,fr9 + cstdfu fr8,@(sp,gr7),cc5,0 + set_gr_gr gr21,gr22 + test_mem_limmed 0xcccc,0xcccc,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xdddd,0xdddd,gr22 + test_gr_gr sp,gr21 + + set_gr_gr gr20,sp + set_mem_limmed 0xbeef,0xdead,sp + inc_gr_immed -4,sp + set_mem_limmed 0xdead,0xbeef,sp + set_gr_gr sp,gr21 + + set_gr_immed 0,gr7 + set_fr_iimmed 0xbeef,0xdead,fr8 + set_fr_iimmed 0xdead,0xbeef,fr9 + cstdfu fr8,@(sp,gr7),cc1,1 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr21 + + inc_gr_immed -8,sp + set_gr_gr sp,gr23 + set_gr_immed 8,gr7 + set_fr_iimmed 0xaaaa,0xaaaa,fr8 + set_fr_iimmed 0xbbbb,0xbbbb,fr9 + cstdfu fr8,@(sp,gr7),cc1,1 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr23 + + inc_gr_immed 16,sp + set_gr_gr sp,gr23 + set_gr_immed -8,gr7 + set_fr_iimmed 0xcccc,0xcccc,fr8 + set_fr_iimmed 0xdddd,0xdddd,fr9 + cstdfu fr8,@(sp,gr7),cc5,1 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr23 + + set_gr_gr gr20,sp + set_mem_limmed 0xbeef,0xdead,sp + inc_gr_immed -4,sp + set_mem_limmed 0xdead,0xbeef,sp + set_gr_gr sp,gr21 + + set_gr_immed 0,gr7 + set_fr_iimmed 0xbeef,0xdead,fr8 + set_fr_iimmed 0xdead,0xbeef,fr9 + cstdfu fr8,@(sp,gr7),cc2,0 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr21 + + inc_gr_immed -8,sp + set_gr_gr sp,gr23 + set_gr_immed 8,gr7 + set_fr_iimmed 0xaaaa,0xaaaa,fr8 + set_fr_iimmed 0xbbbb,0xbbbb,fr9 + cstdfu fr8,@(sp,gr7),cc2,1 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr23 + + inc_gr_immed 16,sp + set_gr_gr sp,gr23 + set_gr_immed -8,gr7 + set_fr_iimmed 0xcccc,0xcccc,fr8 + set_fr_iimmed 0xdddd,0xdddd,fr9 + cstdfu fr8,@(sp,gr7),cc6,0 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr23 + + set_gr_gr gr20,sp + set_mem_limmed 0xbeef,0xdead,sp + inc_gr_immed -4,sp + set_mem_limmed 0xdead,0xbeef,sp + set_gr_gr sp,gr21 + + set_gr_immed 0,gr7 + set_fr_iimmed 0xbeef,0xdead,fr8 + set_fr_iimmed 0xdead,0xbeef,fr9 + cstdfu fr8,@(sp,gr7),cc3,1 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr21 + + inc_gr_immed -8,sp + set_gr_gr sp,gr23 + set_gr_immed 8,gr7 + set_fr_iimmed 0xaaaa,0xaaaa,fr8 + set_fr_iimmed 0xbbbb,0xbbbb,fr9 + cstdfu fr8,@(sp,gr7),cc3,0 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr23 + + inc_gr_immed 16,sp + set_gr_gr sp,gr23 + set_gr_immed -8,gr7 + set_fr_iimmed 0xcccc,0xcccc,fr8 + set_fr_iimmed 0xdddd,0xdddd,fr9 + cstdfu fr8,@(sp,gr7),cc7,1 + set_gr_gr gr21,gr22 + test_mem_limmed 0xdead,0xbeef,gr22 + inc_gr_immed 4,gr22 + test_mem_limmed 0xbeef,0xdead,gr22 + test_gr_gr sp,gr23 + + pass |