mp_exception.cgs

来自「这个是LINUX下的GDB调度工具的源码」· CGS 代码 · 共 290 行

CGS
290
字号
# frv testcase for mp_exception# mach: fr500 fr550 frv# xerror:# This program no longer assembles because the assembler# now detects the unaligned registers. For this reason# this test is now marked as "xerror" and prints the# expected message "fail"	.include "testutils.inc"	start	.global mp_exceptionmpx:.if 1	fail.else	or_spr_immed	2,msr0		; Set msr0.ovf	or_spr_immed	2,msr1		; Set msr1.ovf	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mcmpsh		fr10,fr11,fcc1	; mp_exception: cr-not-aligned	test_spr_bits	0x7000,12,3,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf is set	or_spr_immed	2,msr0		; Set msr0.ovf	or_spr_immed	2,msr1		; Set msr1.ovf	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mcmpsh.p	fr10,fr11,fcc0	; no exception	mcmpsh		fr10,fr11,fcc2	; no exception	test_spr_bits	0x7000,12,0,msr0; msr0.mtt is clear	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	mmulhs.p	fr10,fr11,acc3	; no exception	mmulhs		fr10,fr11,acc1	; mp_exception: acc-not-aligned	test_spr_bits	0x7000,12,2,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	or_spr_immed	2,msr0		; Set msr0.ovf	or_spr_immed	2,msr1		; Set msr1.ovf	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mmulhu		fr10,fr11,acc0	; no exception	test_spr_bits	0x7000,12,0,msr0; msr0.mtt is clear	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,1,msr0	; msr0.ovf is still set	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf still set	set_spr_immed	0,msr0	set_spr_immed	0,msr1	mmulxhs.p	fr10,fr11,acc3	; no exception	mmulxhs		fr10,fr11,acc1	; mp_exception: acc-not-aligned	test_spr_bits	0x7000,12,2,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	or_spr_immed	2,msr0		; Set msr0.ovf	or_spr_immed	2,msr1		; Set msr1.ovf	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mmulxhu		fr10,fr11,acc0	; no exception	test_spr_bits	0x7000,12,0,msr0; msr0.mtt is clear	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,1,msr0	; msr0.ovf is still set	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf still set	set_spr_immed	0,msr0	set_spr_immed	0,msr1	mmachs.p	fr10,fr11,acc3	; no exception	mmachs		fr10,fr11,acc1	; mp_exception: acc-not-aligned	test_spr_bits	0x7000,12,2,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	or_spr_immed	2,msr0		; Set msr0.ovf	or_spr_immed	2,msr1		; Set msr1.ovf	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mmachu		fr10,fr11,acc0	; no exception	test_spr_bits	0x7000,12,0,msr0; msr0.mtt is clear	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf still set	set_spr_immed	0,msr0	set_spr_immed	0,msr1	mqaddhss.p	fr10,fr12,fr17	; mp_exception: register-not-aligned	mqaddhss	fr10,fr12,fr14	; no exception	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	set_spr_immed	0,msr0	set_spr_immed	0,msr1	mqaddhss.p	fr10,fr12,fr14	; no exception	mqaddhss	fr10,fr13,fr16	; mp_exception: register-not-aligned	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	set_spr_immed	0,msr0	set_spr_immed	0,msr1	mqaddhss.p	fr19,fr12,fr14	; mp_exception: register-not-aligned	mqaddhss	fr10,fr13,fr16	; mp_exception: register-not-aligned	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	or_spr_immed	2,msr0		; Set msr0.ovf	or_spr_immed	2,msr1		; Set msr1.ovf	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqaddhss	fr10,fr12,fr14	; no exception	test_spr_bits	0x7000,12,0,msr0; msr0.mtt is clear	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf still set	set_spr_immed	0,msr0	set_spr_immed	0,msr1	mqmulhs.p	fr10,fr11,acc3	; no exception	mqmulhs		fr10,fr11,acc2	; mp_exception: acc-not-aligned	test_spr_bits	0x7000,12,2,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	or_spr_immed	2,msr0		; Set msr0.ovf	or_spr_immed	2,msr1		; Set msr1.ovf	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqmulhu		fr10,fr11,acc0	; mp_exception: register_not_aligned	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,1,msr0	; msr0.ovf is still set	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf still set	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqmulhu		fr10,fr12,acc0	; no exception	test_spr_bits	0x7000,12,0,msr0; msr0.mtt is clear	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,1,msr0	; msr0.ovf is still set	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf still set	set_spr_immed	0,msr0	set_spr_immed	0,msr1	mqmulxhs.p	fr10,fr11,acc3	; no exception	mqmulxhs	fr10,fr11,acc2	; mp_exception: acc-not-aligned	test_spr_bits	0x7000,12,2,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	or_spr_immed	2,msr0		; Set msr0.ovf	or_spr_immed	2,msr1		; Set msr1.ovf	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqmulxhu	fr10,fr11,acc0	; mp_exception: register-not-aligned	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,1,msr0	; msr0.ovf is still set	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf still set	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqmulxhu	fr10,fr12,acc0	; no exception	test_spr_bits	0x7000,12,0,msr0; msr0.mtt is clear	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,1,msr0	; msr0.ovf is still set	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf still set	set_spr_immed	0,msr0	set_spr_immed	0,msr1	mqmachs.p	fr10,fr12,acc3	; no exception	mqmachs		fr10,fr12,acc2	; mp_exception: acc-not-aligned	test_spr_bits	0x7000,12,2,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqmachu.p	fr19,fr12,acc0	; mp_exception: register-not-aligned	mqmachu		fr10,fr12,acc0	; no exception	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqmachu.p	fr10,fr12,acc0	; no exception	mqmachu		fr19,fr12,acc0	; mp_exception: register-not-aligned	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqmachu.p	fr19,fr12,acc0	; mp_exception: register-not-aligned	mqmachu		fr19,fr12,acc0	; mp_exception: register-not-aligned	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	or_spr_immed	2,msr0		; Set msr0.ovf	or_spr_immed	2,msr1		; Set msr1.ovf	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqmachu		fr10,fr12,acc0	; no exception	test_spr_bits	0x7000,12,0,msr0; msr0.mtt is clear	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf still set	set_spr_immed	0,msr0	set_spr_immed	0,msr1	mqcpxrs.p	fr10,fr12,acc0	; no exception	mqcpxrs		fr10,fr12,acc1	; mp_exception: acc-not-aligned	test_spr_bits	0x7000,12,2,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqcpxru.p	fr19,fr12,acc0	; mp_exception: register-not-aligned	mqcpxru		fr10,fr12,acc0	; no exception	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqcpxru.p	fr10,fr12,acc0	; no exception	mqcpxru		fr19,fr12,acc0	; mp_exception: register-not-aligned	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqcpxru.p	fr19,fr12,acc0	; mp_exception: register-not-aligned	mqcpxru		fr19,fr12,acc0	; mp_exception: register-not-aligned	test_spr_bits	0x7000,12,6,msr0; msr0.mtt is set	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,0,msr1	; msr1.ovf is clear	or_spr_immed	2,msr0		; Set msr0.ovf	or_spr_immed	2,msr1		; Set msr1.ovf	and_spr_immed	0xffff8fff,msr0	; Clear msr0.mtt	mqcpxru		fr10,fr12,acc0	; no exception	test_spr_bits	0x7000,12,0,msr0; msr0.mtt is clear	test_spr_bits	0x003c,2,0,msr0	; msr0.sie is clear	test_spr_bits	0x0002,1,0,msr0	; msr0.ovf is clear	test_spr_bits	0x003c,2,0,msr1	; msr1.sie is clear	test_spr_bits	0x0002,1,1,msr1	; msr1.ovf still set	pass.endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?