diff options
Diffstat (limited to 'sim/testsuite/frv/clddu.cgs')
-rw-r--r-- | sim/testsuite/frv/clddu.cgs | 219 |
1 files changed, 219 insertions, 0 deletions
diff --git a/sim/testsuite/frv/clddu.cgs b/sim/testsuite/frv/clddu.cgs new file mode 100644 index 0000000..91df6d8 --- /dev/null +++ b/sim/testsuite/frv/clddu.cgs @@ -0,0 +1,219 @@ +# frv testcase for clddu @($GRi,$GRj),$GRk,$CCi,$cond +# mach: all + + .include "testutils.inc" + + start + + .global clddu +clddu: + set_spr_immed 0x1b1b,cccr + set_gr_gr sp,gr21 + + set_mem_limmed 0xdead,0xbeef,sp + inc_gr_immed -4,sp + set_mem_limmed 0xbeef,0xdead,sp + set_gr_gr sp,gr20 + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + + set_gr_immed 0,gr7 + clddu @(sp,gr7),gr8,cc0,1 + test_gr_limmed 0xbeef,0xdead,gr8 + test_gr_limmed 0xdead,0xbeef,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed -8,sp + set_gr_immed 8,gr7 + clddu @(sp,gr7),gr8,cc0,1 + test_gr_limmed 0xbeef,0xdead,gr8 + test_gr_limmed 0xdead,0xbeef,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed 8,sp + set_gr_immed -8,gr7 + clddu @(sp,gr7),gr8,cc4,1 + test_gr_limmed 0xbeef,0xdead,gr8 + test_gr_limmed 0xdead,0xbeef,gr9 + test_gr_gr sp,gr20 + + set_gr_gr gr21,sp + set_mem_limmed 0xdead,0xbeef,sp + inc_gr_immed -4,sp + set_mem_limmed 0xbeef,0xdead,sp + set_gr_gr sp,gr20 + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + + set_gr_immed 0,gr7 + clddu @(sp,gr7),gr8,cc0,0 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed -8,gr20 + inc_gr_immed -8,sp + set_gr_immed 8,gr7 + clddu @(sp,gr7),gr8,cc0,0 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed 16,gr20 + inc_gr_immed 16,sp + set_gr_immed -8,gr7 + clddu @(sp,gr7),gr8,cc4,0 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_gr gr21,sp + set_mem_limmed 0xdead,0xbeef,sp + inc_gr_immed -4,sp + set_mem_limmed 0xbeef,0xdead,sp + set_gr_gr sp,gr20 + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + + set_gr_immed 0,gr7 + clddu @(sp,gr7),gr8,cc1,0 + test_gr_limmed 0xbeef,0xdead,gr8 + test_gr_limmed 0xdead,0xbeef,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed -8,sp + set_gr_immed 8,gr7 + clddu @(sp,gr7),gr8,cc1,0 + test_gr_limmed 0xbeef,0xdead,gr8 + test_gr_limmed 0xdead,0xbeef,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed 8,sp + set_gr_immed -8,gr7 + clddu @(sp,gr7),gr8,cc5,0 + test_gr_limmed 0xbeef,0xdead,gr8 + test_gr_limmed 0xdead,0xbeef,gr9 + test_gr_gr sp,gr20 + + set_gr_gr gr21,sp + set_mem_limmed 0xdead,0xbeef,sp + inc_gr_immed -4,sp + set_mem_limmed 0xbeef,0xdead,sp + set_gr_gr sp,gr20 + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + + set_gr_immed 0,gr7 + clddu @(sp,gr7),gr8,cc1,1 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed -8,gr20 + inc_gr_immed -8,sp + set_gr_immed 8,gr7 + clddu @(sp,gr7),gr8,cc1,1 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed 16,gr20 + inc_gr_immed 16,sp + set_gr_immed -8,gr7 + clddu @(sp,gr7),gr8,cc5,1 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_gr gr21,sp + set_mem_limmed 0xdead,0xbeef,sp + inc_gr_immed -4,sp + set_mem_limmed 0xbeef,0xdead,sp + set_gr_gr sp,gr20 + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + + set_gr_immed 0,gr7 + clddu @(sp,gr7),gr8,cc2,0 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed -8,gr20 + inc_gr_immed -8,sp + set_gr_immed 8,gr7 + clddu @(sp,gr7),gr8,cc2,1 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed 16,gr20 + inc_gr_immed 16,sp + set_gr_immed -8,gr7 + clddu @(sp,gr7),gr8,cc6,0 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_gr gr21,sp + set_mem_limmed 0xdead,0xbeef,sp + inc_gr_immed -4,sp + set_mem_limmed 0xbeef,0xdead,sp + set_gr_gr sp,gr20 + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + + set_gr_immed 0,gr7 + clddu @(sp,gr7),gr8,cc3,1 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed -8,gr20 + inc_gr_immed -8,sp + set_gr_immed 8,gr7 + clddu @(sp,gr7),gr8,cc3,0 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_limmed 0xdead,0xbeef,gr8 + set_gr_limmed 0xbeef,0xdead,gr9 + inc_gr_immed 16,gr20 + inc_gr_immed 16,sp + set_gr_immed -8,gr7 + clddu @(sp,gr7),gr8,cc7,1 + test_gr_limmed 0xdead,0xbeef,gr8 + test_gr_limmed 0xbeef,0xdead,gr9 + test_gr_gr sp,gr20 + + set_gr_gr gr21,gr8 + inc_gr_immed -12,gr8 + set_gr_immed 8,gr7 + clddu @(gr8,gr7),gr8,cc0,1 + test_gr_limmed 0xbeef,0xdead,gr8 + test_gr_limmed 0xdead,0xbeef,gr9 + + pass |