int.cgs   [plain text]


# fr30 testcase for int $u8
# mach(): fr30

	.include "testutils.inc"

	START

	.text
	.global int
int:
	; Test int $u8 - setup and test an interrupt #0xfd (randomly chosen)
	mvr_h_gr   	tbr,r7
	inci_h_gr	8,r7
	mvi_h_mem	pass,r7
	mvi_h_gr	doint,r9
	inci_h_gr	2,r9
	mvr_h_gr	ssp,r10
	set_cc          0x0f		; Condition codes should not change
	set_s_user			; Set opposite of expected
	set_i		1		; Set opposite of expected
	mvr_h_gr	ps,r8
doint:	int		0xfd
	fail

pass:
	test_cc		1 1 1 1
	test_s_system
	test_i		0
	inci_h_gr	-4,r10
	testr_h_mem	r8,r10
	inci_h_gr	-4,r10
	testr_h_mem	r9,r10
	testr_h_dr	r10,ssp

	pass