mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-21 04:42:53 +08:00
1368b914e9
Now that all port tests live under testsuite/sim/*/, and none live in testsuite/ directly, flatten the structure by moving all of the dirs under testsuite/sim/ to testsuite/ directly. We need to stop passing --tool to dejagnu so that it searches all dirs and not just ones that start with "sim". Since we have no other dirs in this tree, and no plans to add any, should be fine.
506 lines
12 KiB
Plaintext
506 lines
12 KiB
Plaintext
# 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
|