# frv testcase for nfitos $FRj,$FRk
# mach: fr500 fr550 frv

	.include "testutils.inc"

	float_constants
	start
	load_float_constants

	.global nfitos
nfitos:
	set_fr_iimmed	0,0,fr1
	nfitos		fr1,fr1
	test_fr_fr	fr1,fr16
	test_fr_fr	fr1,fr20
	test_spr_immed	0,fner1
	test_spr_immed	0,fner0

	set_fr_iimmed	0x0000,0x0002,fr1
	nfitos		fr1,fr1
	test_fr_fr	fr1,fr32
	test_spr_immed	0,fner1
	test_spr_immed	0,fner0

	set_fr_iimmed	0xdead,0xbeef,fr1
	nfitos		fr1,fr1
	test_fr_iimmed	0xce054904,fr1
	test_spr_immed	0,fner1
	test_spr_immed	0,fner0

	; These were an attempt to cause overflow
	set_fr_iimmed	0x7fff,0xffff,fr1
	nfitos		fr1,fr1
	test_fr_iimmed	0x4f000000,fr1
	test_spr_immed	0,fner1
	test_spr_immed	0,fner0

	set_fr_iimmed	0x8000,0x0000,fr1
	nfitos		fr1,fr1
	test_fr_iimmed	0xcf000000,fr1
	test_spr_immed	0,fner1
	test_spr_immed	0,fner0

	pass
