blob: efe3278864c8da4231979feae721dd260672fce7 [file] [log] [blame]
# frv testcase for mcutss $ACC40i,$FRj,$FRk
# mach: all
.include "testutils.inc"
start
.global mcutss
mcutss:
set_accg_immed 0xffffffe7,accg0
set_acc_immed 0x89abcdef,acc0
set_fr_iimmed 0,0,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xe789abcd,fr11
set_fr_iimmed 0,1,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xcf13579b,fr11
set_fr_iimmed 0,2,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x9e26af37,fr11
set_fr_iimmed 0,3,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,4,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,5,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,6,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,7,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,8,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,9,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,10,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,11,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,12,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,13,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,14,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,15,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,16,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,17,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,18,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,19,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,20,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,21,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,22,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,23,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,24,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,25,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,26,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,27,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,28,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,29,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,30,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,31,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_fr_iimmed 0,64,fr10 ; same as 0
mcutss acc0,fr10,fr11
test_fr_iimmed 0xe789abcd,fr11
set_fr_iimmed 0xffff,0xffff,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xf3c4d5e6,fr11
set_fr_iimmed 0x0000,0x003e,fr10 ; only lower 6 bits matter
mcutss acc0,fr10,fr11
test_fr_iimmed 0xf9e26af3,fr11
set_fr_iimmed 0xffff,0xfffd,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfcf13579,fr11
set_fr_iimmed 0xffff,0xfffc,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfe789abc,fr11
set_fr_iimmed 0xffff,0xfffb,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xff3c4d5e,fr11
set_fr_iimmed 0xffff,0xfffa,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xff9e26af,fr11
set_fr_iimmed 0xffff,0xfff9,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffcf1357,fr11
set_fr_iimmed 0xffff,0xfff8,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffe789ab,fr11
set_fr_iimmed 0xffff,0xfff7,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfff3c4d5,fr11
set_fr_iimmed 0xffff,0xfff6,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfff9e26a,fr11
set_fr_iimmed 0xffff,0xfff5,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfffcf135,fr11
set_fr_iimmed 0xffff,0xfff4,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfffe789a,fr11
set_fr_iimmed 0xffff,0xfff3,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffff3c4d,fr11
set_fr_iimmed 0xffff,0xfff2,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffff9e26,fr11
set_fr_iimmed 0xffff,0xfff1,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffcf13,fr11
set_fr_iimmed 0xffff,0xfff0,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffe789,fr11
set_fr_iimmed 0xffff,0xffef,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfffff3c4,fr11
set_fr_iimmed 0xffff,0xffee,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfffff9e2,fr11
set_fr_iimmed 0xffff,0xffed,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfffffcf1,fr11
set_fr_iimmed 0xffff,0xffec,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfffffe78,fr11
set_fr_iimmed 0xffff,0xffeb,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffff3c,fr11
set_fr_iimmed 0xffff,0xffea,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffff9e,fr11
set_fr_iimmed 0xffff,0xffe9,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffffcf,fr11
set_fr_iimmed 0xffff,0xffe8,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffffe7,fr11
set_fr_iimmed 0xffff,0xffe7,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfffffff3,fr11
set_fr_iimmed 0xffff,0xffe6,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfffffff9,fr11
set_fr_iimmed 0xffff,0xffe5,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfffffffc,fr11
set_fr_iimmed 0xffff,0xffe4,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfffffffe,fr11
set_fr_iimmed 0xffff,0xffe3,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffffff,fr11
set_fr_iimmed 0xffff,0xffe2,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffffff,fr11
set_fr_iimmed 0xffff,0xffe1,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffffff,fr11
set_fr_iimmed 0xffff,0xffe0,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffffff,fr11
set_fr_iimmed 0,32,fr10 ; same as -32
mcutss acc0,fr10,fr11
test_fr_iimmed 0xffffffff,fr11
set_accg_immed 0xffffff67,accg0
set_acc_immed 0x89abcdef,acc0
set_fr_iimmed 0xffff,0xffff,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x33c4d5e6,fr11
set_fr_iimmed 0x0000,0x003e,fr10 ; only lower 6 bits matter
mcutss acc0,fr10,fr11
test_fr_iimmed 0x19e26af3,fr11
set_fr_iimmed 0xffff,0xfffd,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x0cf13579,fr11
set_fr_iimmed 0xffff,0xfffc,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x06789abc,fr11
set_fr_iimmed 0xffff,0xfffb,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x033c4d5e,fr11
set_fr_iimmed 0xffff,0xfffa,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x019e26af,fr11
set_fr_iimmed 0xffff,0xfff9,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00cf1357,fr11
set_fr_iimmed 0xffff,0xfff8,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x006789ab,fr11
set_fr_iimmed 0xffff,0xfff7,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x0033c4d5,fr11
set_fr_iimmed 0xffff,0xfff6,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x0019e26a,fr11
set_fr_iimmed 0xffff,0xfff5,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x000cf135,fr11
set_fr_iimmed 0xffff,0xfff4,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x0006789a,fr11
set_fr_iimmed 0xffff,0xfff3,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00033c4d,fr11
set_fr_iimmed 0xffff,0xfff2,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00019e26,fr11
set_fr_iimmed 0xffff,0xfff1,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x0000cf13,fr11
set_fr_iimmed 0xffff,0xfff0,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00006789,fr11
set_fr_iimmed 0xffff,0xffef,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x000033c4,fr11
set_fr_iimmed 0xffff,0xffee,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x000019e2,fr11
set_fr_iimmed 0xffff,0xffed,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000cf1,fr11
set_fr_iimmed 0xffff,0xffec,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000678,fr11
set_fr_iimmed 0xffff,0xffeb,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x0000033c,fr11
set_fr_iimmed 0xffff,0xffea,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x0000019e,fr11
set_fr_iimmed 0xffff,0xffe9,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x000000cf,fr11
set_fr_iimmed 0xffff,0xffe8,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000067,fr11
set_fr_iimmed 0xffff,0xffe7,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000033,fr11
set_fr_iimmed 0xffff,0xffe6,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000019,fr11
set_fr_iimmed 0xffff,0xffe5,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x0000000c,fr11
set_fr_iimmed 0xffff,0xffe4,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000006,fr11
set_fr_iimmed 0xffff,0xffe3,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000003,fr11
set_fr_iimmed 0xffff,0xffe2,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000001,fr11
set_fr_iimmed 0xffff,0xffe1,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000000,fr11
set_fr_iimmed 0xffff,0xffe0,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000000,fr11
set_fr_iimmed 0,32,fr10 ; same as -32
mcutss acc0,fr10,fr11
test_fr_iimmed 0x00000000,fr11
; Examples from the customer
set_accg_immed 0xffffffff,accg0
set_acc_immed 0xffe00000,acc0
set_fr_iimmed 0,16,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xe0000000,fr11
set_fr_iimmed 0,17,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xc0000000,fr11
set_fr_iimmed 0,18,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11
set_accg_immed 0,accg0
set_acc_immed 0x003fffff,acc0
set_fr_iimmed 0,16,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x3fffff00,fr11
set_fr_iimmed 0,17,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x7ffffe00,fr11
set_accg_immed 0x7f,accg0
set_acc_immed 0xffe00000,acc0
set_fr_iimmed 0,16,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x7fffffff,fr11 ; saturated
set_fr_iimmed 0,17,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x7fffffff,fr11 ; saturated
set_fr_iimmed 0,18,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x7fffffff,fr11 ; saturated
set_accg_immed 0x08,accg0
set_acc_immed 0x003fffff,acc0
set_fr_iimmed 0,16,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x7fffffff,fr11 ; saturated
set_fr_iimmed 0,17,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x7fffffff,fr11 ; saturated
set_accg_immed 0xff,accg0
set_acc_immed 0xefe00000,acc0
set_fr_iimmed 0,16,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11 ; saturated
set_fr_iimmed 0,17,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11 ; saturated
set_fr_iimmed 0,18,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11 ; saturated
set_accg_immed 0x80,accg0
set_acc_immed 0x003fffff,acc0
set_fr_iimmed 0,16,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11 ; saturated
set_fr_iimmed 0,17,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x80000000,fr11 ; saturated
set_accg_immed 0xffffffaf,accg0
set_acc_immed 0x5a5a5a5a,acc0
set_fr_iimmed 0xffff,0xfffc,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0xfaf5a5a5,fr11
set_accg_immed 0x0000002f,accg0
set_acc_immed 0x5a5a5a5a,acc0
set_fr_iimmed 0xffff,0xfff9,fr10
mcutss acc0,fr10,fr11
test_fr_iimmed 0x005eb4b4,fr11
pass