⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 do-flags.s

📁 这个是LINUX下的GDB调度工具的源码
💻 S
字号:
	# Test macro	.macro assert reg,value	cmpeq f0,\reg,\value	bra/fx fail	.endm	# PR 15964 - a.s	add  r8,r0,0x7fff7fff         ;	add  r9,r0,0x55555555         ;	add  r12,r0,0x11111111         ;	add  r1,r0,0x80000011   ; for psw	mvtsys psw,r1 ||nop	addhhhh r12,r8,r9 ||addhlll r13,r12,r12	mvfsys r20,psw              ||nop	mvtsys psw,r1 || add r2,r8, r9	mvfsys r21,psw              ||nop	assert r20, 0x80000000	assert r21, 0x80000014		# PR 15964 - b.s		add  r40,r0,0x7fffffff	add  r41,r0,0x7fffffff	add  r1,r0,0x80000000       ; for psw	mvtsys psw,r1,||nop	cmpeq f1,r40,r41,||cmpeq f0,r40,r41,;	mvfsys r42,psw		assert r42, 0x80005000			# PR 16993 - a.s	add  r8,r0,0x80005555  ; for psw	add  r9,r0,0x80000000  ; for psw	add  r40,r0,0x11111111  ;	add  r41,r0,0x22222222  ;	add  r42,r0,0x00000000  ;	mvtsys psw,r8 ||nop	mvtsys psw,r9 ||add r42,r40,r41,;	mvfsys r10,psw	assert r10, 0x80000000		# PR 16995 - b.s	add  r8,r0,0x80000000  ; for psw	add  r9,r0,0x80005555  ; for psw	add  r10,r0,0x00000000  ;	add  r40,r0,0x11111111  ;	add  r41,r0,0x22222222  ;	add  r42,r0,0x00000000  ;	mvtsys psw,r8 ||nop	mvtsys psw,r9 ||add r42,r40,r41,;	mvfsys r10,psw	assert r10, 0x80005544		# PR 17006 - c.s	add  r8,r0,0x80005555  ; for psw	add  r9,r0,0x80000000  ; for psw	add  r10,r0,0x00000000  ;	add  r40,r0,0x00000011  ;	add  r41,r0,0x00000011  ;	mvtsys psw,r8 ||nop	mvtsys psw,r9 ||cmpeq f5,r40,r41,;			mvfsys r10,psw	assert r10, 0x80000010	# PR 17006 - d.s	add  r9,r0,0x80000000  ; for psw	add  r40,r0,0x00000011  ;	add  r41,r0,0x00000011  ;	nop  ||nop	mvtsys psw, r9 || nop	nop  ||nop	nop ||cmpeq f5,r40,r41,;	mvfsys r10,psw	assert r10, 0x80000010		# PR 17106 - a.s	; test 000     ;  mvtsys(s=0) || sathl(s=0) prallel execution test	add  r8,r0,0x80005555  ; for psw	add  r9,r0,0x80000000  ; for psw	add  r40,r0,0x00000044  ;	add  r41,r0,0x00000008  ;	mvtsys psw,r8 ||nop	mvtsys psw,r9 ||sathl r30,r40,r41,;	mvfsys r20, psw ||nop	;-------------------------------	; test 001     ;  mvtsys(s=0) || sathl(s=1) prallel execution test	_test_001:	add  r40,r0,0x00004444  ;	add  r41,r0,0x00000008  ;	mvtsys psw,r8 ||nop	mvtsys psw,r9 ||sathl r31,r40,r41,;	mvfsys r21,psw ||nop	;-------------------------------	; test 002     ;  mvtsys(s=1) || sathl(s=0) prallel execution test	add  r8,r0,0x80000000  ; for psw	add  r9,r0,0x80005555  ; for psw	add  r40,r0,0x00000044  ;	add  r41,r0,0x00000008  ;	mvtsys psw,r8 ||nop	mvtsys psw,r9 ||sathl r32,r40,r41,;	mvfsys r22,psw             ||nop	;-------------------------------	; test 003     ;  mvtsys(s=1) || sathl(s=1) prallel execution test	;   init-reg	add  r40,r0,0x00004444  ;	add  r41,r0,0x00000008  ;	mvtsys psw,r8 ||nop	mvtsys psw,r9 ||sathl r33,r40,r41,;	mvfsys r23,psw             ||nop	assert r20, 0x80000000	assert r21, 0x80000040	assert r22, 0x80005555	assert r23, 0x80005515		# PR 18288 - a.s	;------------------------------------------------------------------------	; mvtsys (C =1, V= VA = 0) ||  addc (C= V= VA =0)	;------------------------------------------------------------------------	test_000b:	add r1,r0,1   ||nop  ; set C bit	mvtsys psw r0 ||nop	mvtsys psw r1 ||addc r20,r0,1 	mvfsys r10,psw ||nop	; C changed in MU is not used in IU.	; IU prevail for resulting C. 	;------------------------------------------------------------------------	; mvtsys (V =1, C = VA = 0) ||  add (C= V= VA =0)	;------------------------------------------------------------------------	test_001b:	add r1,r0,0x10 ||nop  ; set V bit	mvtsys psw r0 ||nop	mvtsys psw r1 ||add r0,r0,r0	mvfsys r11,psw ||nop	; IU prevail for resulting V.	;------------------------------------------------------------------------	; mvtsys (V = C= VA = 0) ||  add (C=0,V= VA =1)	;------------------------------------------------------------------------	test_002b:	add r1,r0,0x70000000	add r2,r0,0x30000000	mvtsys psw r0 ||nop	mvtsys psw r0 ||add r0,r1,r2	mvfsys r12,psw ||nop	; IU prevail for resulting V. 	; VA is set(OR'ed)	;------------------------------------------------------------------------	; mvtsys (C= 0 V = VA = 1) ||  add (C= V= VA =0)	;------------------------------------------------------------------------	test_003b:	add r1,r0,0x14 ||nop  ; set V and VA bit	mvtsys psw r0 ||nop	mvtsys psw r1 ||add r0,r0,r0	mvfsys r13,psw ||nop	; IU prevail for resulging V	; VA is set(OR'ed)	;------------------------------------------------------------------------	; mvtsys (f3 =1) ||  orfg (f3) : GROUP_B	;------------------------------------------------------------------------	test_004b:	add r1,r0,0x100 ; set f3	mvtsys psw r0 ||nop	mvtsys psw,r1 ||orfg f3,f3,0	mvfsys r14,psw ||nop	; results of IU prevail. 	;------------------------------------------------------------------------	; mvtsys (f4 =1) ||  sathp 	;------------------------------------------------------------------------	test_005b:	add r1,r0,0x40 ; set f4	mvtsys psw r0 ||nop	mvtsys psw r1 ||sathl r2,r1,3	mvfsys r15,psw ||nop	; results of MU is used in IU	assert r20, 0x1	assert r10, 0x0	assert r11, 0x0	assert r12, 0x14	assert r13, 0x4	assert r14, 0x0	assert r15, 0x0		# PR 18288 - b.s	add r7,r0,0x80000000	mvtsys psw,r7 || nop			add r8,r0,0x7fff7fff         ;	add r9,r0,0x55555555         ;	add r12,r0,0x11111111         ;	add r13,r0,0x00000000         ;	addhhhh r12,r8,r9 ||addhlll r13,r12,r12	mvfsys r60,psw              ||nop	;------------------------------------------	add r20,r0,0x66666666  ;	add r21,r0,0x77777777  ;	add r40,r0,0x22222222  ;	add r41,r0,0x55555555  ;	add r22,r20,r21 ||add r42,r40,r41,;	mvfsys r61,psw              ||nop	assert r60, 0x80000000	assert r61, 0x80000000		# PR 19224	add r7,r0,0x80000000	add r2,r0,r0            || nop	add r1,r0,0x1           || nop	# confirm that these insns do not kill the add in the right container	mvtsys psw,r7           -> add r2,r2,r1	mvtsys pswh,r7          -> add r2,r2,r1	mvtsys pswl,r7          -> add r2,r2,r1		mvtsys f0,r7            -> add r2,r2,r1				mvtsys mod_s,r7         -> add r2,r2,r1								assert r2, 0x5										# all okay	bra	okok:	add r2, r0, 0	.long 0x0e000004	nopfail:	add r2, r0, 47	.long 0x0e000004	nop

⌨️ 快捷键说明

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