216 lines
5.2 KiB
Text
216 lines
5.2 KiB
Text
# frv testcase for cfmovs $FRj,$FRk,$CCi,$cond
|
|
# mach: fr500 fr550 frv
|
|
|
|
.include "testutils.inc"
|
|
|
|
float_constants
|
|
start
|
|
load_float_constants
|
|
|
|
.global cfmovs
|
|
cfmovs:
|
|
set_spr_immed 0x1b1b,cccr
|
|
|
|
cfmovs fr0,fr1,cc0,1
|
|
test_fr_fr fr0,fr1
|
|
cfmovs fr4,fr1,cc0,1
|
|
test_fr_fr fr4,fr1
|
|
cfmovs fr8,fr1,cc0,1
|
|
test_fr_fr fr8,fr1
|
|
cfmovs fr12,fr1,cc0,1
|
|
test_fr_fr fr12,fr1
|
|
cfmovs fr16,fr1,cc0,1
|
|
test_fr_fr fr16,fr1
|
|
cfmovs fr20,fr1,cc0,1
|
|
test_fr_fr fr20,fr1
|
|
cfmovs fr24,fr1,cc0,1
|
|
test_fr_fr fr24,fr1
|
|
cfmovs fr28,fr1,cc0,1
|
|
test_fr_fr fr28,fr1
|
|
cfmovs fr32,fr1,cc4,1
|
|
test_fr_fr fr32,fr1
|
|
cfmovs fr36,fr1,cc4,1
|
|
test_fr_fr fr36,fr1
|
|
cfmovs fr40,fr1,cc4,1
|
|
test_fr_fr fr40,fr1
|
|
cfmovs fr44,fr1,cc4,1
|
|
test_fr_fr fr44,fr1
|
|
cfmovs fr48,fr1,cc4,1
|
|
test_fr_fr fr48,fr1
|
|
cfmovs fr52,fr1,cc4,1
|
|
test_fr_fr fr52,fr1
|
|
cfmovs fr56,fr1,cc4,1
|
|
test_fr_iimmed 0x7fc00000,fr1
|
|
cfmovs fr60,fr1,cc4,1
|
|
test_fr_iimmed 0x7f800001,fr1
|
|
|
|
cfmovs fr0,fr1,cc1,0
|
|
test_fr_fr fr0,fr1
|
|
cfmovs fr4,fr1,cc1,0
|
|
test_fr_fr fr4,fr1
|
|
cfmovs fr8,fr1,cc1,0
|
|
test_fr_fr fr8,fr1
|
|
cfmovs fr12,fr1,cc1,0
|
|
test_fr_fr fr12,fr1
|
|
cfmovs fr16,fr1,cc1,0
|
|
test_fr_fr fr16,fr1
|
|
cfmovs fr20,fr1,cc1,0
|
|
test_fr_fr fr20,fr1
|
|
cfmovs fr24,fr1,cc1,0
|
|
test_fr_fr fr24,fr1
|
|
cfmovs fr28,fr1,cc1,0
|
|
test_fr_fr fr28,fr1
|
|
cfmovs fr32,fr1,cc5,0
|
|
test_fr_fr fr32,fr1
|
|
cfmovs fr36,fr1,cc5,0
|
|
test_fr_fr fr36,fr1
|
|
cfmovs fr40,fr1,cc5,0
|
|
test_fr_fr fr40,fr1
|
|
cfmovs fr44,fr1,cc5,0
|
|
test_fr_fr fr44,fr1
|
|
cfmovs fr48,fr1,cc5,0
|
|
test_fr_fr fr48,fr1
|
|
cfmovs fr52,fr1,cc5,0
|
|
test_fr_fr fr52,fr1
|
|
cfmovs fr56,fr1,cc5,0
|
|
test_fr_iimmed 0x7fc00000,fr1
|
|
cfmovs fr60,fr1,cc5,0
|
|
test_fr_iimmed 0x7f800001,fr1
|
|
|
|
set_fr_iimmed 0xdead,0xbeef,fr1
|
|
cfmovs fr0,fr1,cc0,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr4,fr1,cc0,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr8,fr1,cc0,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr12,fr1,cc0,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr16,fr1,cc0,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr20,fr1,cc0,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr24,fr1,cc0,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr28,fr1,cc0,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr32,fr1,cc4,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr36,fr1,cc4,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr40,fr1,cc4,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr44,fr1,cc4,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr48,fr1,cc4,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr52,fr1,cc4,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr56,fr1,cc4,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr60,fr1,cc4,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
|
|
set_fr_iimmed 0xdead,0xbeef,fr1
|
|
cfmovs fr0,fr1,cc1,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr4,fr1,cc1,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr8,fr1,cc1,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr12,fr1,cc1,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr16,fr1,cc1,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr20,fr1,cc1,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr24,fr1,cc1,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr28,fr1,cc1,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr32,fr1,cc5,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr36,fr1,cc5,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr40,fr1,cc5,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr44,fr1,cc5,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr48,fr1,cc5,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr52,fr1,cc5,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr56,fr1,cc5,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr60,fr1,cc5,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
|
|
set_fr_iimmed 0xdead,0xbeef,fr1
|
|
cfmovs fr0,fr1,cc2,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr4,fr1,cc2,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr8,fr1,cc2,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr12,fr1,cc2,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr16,fr1,cc2,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr20,fr1,cc2,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr24,fr1,cc2,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr28,fr1,cc2,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr32,fr1,cc6,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr36,fr1,cc6,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr40,fr1,cc6,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr44,fr1,cc6,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr48,fr1,cc6,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr52,fr1,cc6,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr56,fr1,cc6,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr60,fr1,cc6,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
|
|
set_fr_iimmed 0xdead,0xbeef,fr1
|
|
cfmovs fr0,fr1,cc3,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr4,fr1,cc3,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr8,fr1,cc3,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr12,fr1,cc3,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr16,fr1,cc3,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr20,fr1,cc3,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr24,fr1,cc3,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr28,fr1,cc3,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr32,fr1,cc7,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr36,fr1,cc7,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr40,fr1,cc7,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr44,fr1,cc7,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr48,fr1,cc7,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr52,fr1,cc7,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr56,fr1,cc7,1
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
cfmovs fr60,fr1,cc7,0
|
|
test_fr_iimmed 0xdeadbeef,fr1
|
|
|
|
pass
|