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

📄 lib1funcs.asm

📁 gcc-2.95.3 Linux下最常用的C编译器
💻 ASM
📖 第 1 页 / 共 2 页
字号:
	ds		%r1,divisor,%r1	addc		dividend,dividend,dividend	ds		%r1,divisor,%r1	addc		dividend,dividend,dividend	ds		%r1,divisor,%r1	addc		dividend,dividend,dividend	comclr,>=	%r1,%r0,%r0	addl		%r1,divisor,%r1	comclr,>=	quotient,%r0,%r0	; skip of no need to negate	sub		%r0,%r1,%r1	bv		%r0(ret)	copy		%r1,quotientL$largedivisor	sub,>>=		dividend,divisor,quotient	copy		dividend,quotient	bv,n		%r0(ret)	.exit	.procend#endif#if defined (L_divU_3) && !defined (SMALL_LIB)#undef L_divU_3#define dividend %r26#define divisor %r25#define tmp %r1#define result %r29#define ret %r31	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align 4	.export	$$divU_3$$divU_3	.proc	.callinfo	frame=0,no_calls	.entry	sh2add	%r26,%r26,%r29		; r29 = lo(101 x r)	shd	%r0,%r26,30,%r1		;  r1 = hi(100 x r)	addc	%r1,%r0,%r1		;  r1 = hi(101 x r); r in r1,,r29	zdep	%r29,27,28,%r25		; r25 = lo(10000 x r)	add	%r25,%r29,%r25		; r25 = lo(10001 x r)	shd	%r1,%r29,28,%r29	; r29 = hi(10000 x r)	addc	%r29,%r1,%r29		; r29 = hi(10001 x r); r in r29,,r25	zdep	%r25,23,24,%r1		;  r1 = lo(100000000 x r)	add	%r1,%r25,%r1		;  r1 = lo(100000001 x r)	shd	%r29,%r25,24,%r25	; r25 = hi(100000000 x r)	addc	%r25,%r29,%r25		; r25 = hi(100000001 x r); r in r25,,r1	zdep	%r1,15,16,%r29	add	%r29,%r1,%r29	shd	%r25,%r1,16,%r1	addc	%r1,%r25,%r1; r in r1,,r29	sh1add	%r29,%r26,%r0		;  r0 = lo(10 x r) + dividend	shd	%r1,%r29,31,%r29	; r29 = hi(10 x r)	addc	%r29,%r0,%r29	bv	%r0(ret)	extru	%r29,30,31,result	.exit	.procend#endif#if defined (L_divU_5) && !defined (SMALL_LIB)#undef L_divU_5#define dividend %r26#define divisor %r25#define tmp %r1#define result %r29#define ret %r31	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align 4	.export	$$divU_5$$divU_5	.proc	.callinfo	frame=0,no_calls	.entry	sh1add	%r26,%r26,%r29		; r29 = lo(11 x r)	shd	%r0,%r26,31,%r1		;  r1 = hi(10 x r)	addc	%r1,%r0,%r1		;  r1 = hi(11 x r); r in r1,,r29	zdep	%r29,27,28,%r25		; r25 = lo(10000 x r)	add	%r25,%r29,%r25		; r25 = lo(10001 x r)	shd	%r1,%r29,28,%r29	; r29 = hi(10000 x r)	addc	%r29,%r1,%r29		; r29 = hi(10001 x r); r in r29,,r25	zdep	%r25,23,24,%r1		;  r1 = lo(100000000 x r)	add	%r1,%r25,%r1		;  r1 = lo(100000001 x r)	shd	%r29,%r25,24,%r25	; r25 = hi(100000000 x r)	addc	%r25,%r29,%r25		; r25 = hi(100000001 x r); r in r25,,r1	zdep	%r1,15,16,%r29	add	%r29,%r1,%r29	shd	%r25,%r1,16,%r1	addc	%r1,%r25,%r1; r in r1,,r29	sh2add	%r29,%r26,%r0		;  r0 = lo(1000 x r) + dividend	shd	%r1,%r29,30,%r29	; r29 = hi(1000 x r)	addc	%r29,%r0,%r29	bv	%r0(ret)	extru	%r29,29,30,result	.exit	.procend#endif#if defined (L_divU_6) && !defined (SMALL_LIB)#undef L_divU_6#define dividend %r26#define divisor %r25#define tmp %r1#define result %r29#define ret %r31	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align 4	.export	$$divU_6$$divU_6	.proc	.callinfo	frame=0,no_calls	.entry	sh2add	%r26,%r26,%r29		; r29 = lo(101 x r)	shd	%r0,%r26,30,%r1		;  r1 = hi(100 x r)	addc	%r1,%r0,%r1		;  r1 = hi(101 x r); r in r1,,r29	zdep	%r29,27,28,%r25		; r25 = lo(10000 x r)	add	%r25,%r29,%r25		; r25 = lo(10001 x r)	shd	%r1,%r29,28,%r29	; r29 = hi(10000 x r)	addc	%r29,%r1,%r29		; r29 = hi(10001 x r); r in r29,,r25	zdep	%r25,23,24,%r1		;  r1 = lo(100000000 x r)	add	%r1,%r25,%r1		;  r1 = lo(100000001 x r)	shd	%r29,%r25,24,%r25	; r25 = hi(100000000 x r)	addc	%r25,%r29,%r25		; r25 = hi(100000001 x r); r in r25,,r1	zdep	%r1,15,16,%r29	add	%r29,%r1,%r29	shd	%r25,%r1,16,%r1	addc	%r1,%r25,%r1; r in r1,,r29	sh1add	%r29,%r26,%r0		;  r0 = lo(10 x r) + dividend	shd	%r1,%r29,31,%r29	; r29 = hi(10 x r)	addc	%r29,%r0,%r29	bv	%r0(ret)	extru	%r29,29,30,result	.exit	.procend#endif#if defined (L_divU_9) && !defined (SMALL_LIB)#undef L_divU_9#define dividend %r26#define divisor %r25#define tmp %r1#define result %r29#define ret %r31	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align 4	.export	$$divU_9$$divU_9	.proc	.callinfo	frame=0,no_calls	.entry	zdep	%r26,28,29,%r29	sub	%r29,%r26,%r29	shd	0,%r26,29,%r1	subb	%r1,0,%r1		/* 111 */	zdep	%r29,25,26,%r25	add	%r25,%r29,%r25	shd	%r1,%r29,26,%r29	addc	%r29,%r1,%r29		/* 111000111 */	sh3add	%r25,%r26,%r1	shd	%r29,%r25,29,%r25	addc	%r25,0,%r25		/* 111000111001 */	zdep	%r1,16,17,%r29	sub	%r29,%r1,%r29	shd	%r25,%r1,17,%r1	subb	%r1,%r25,%r1		/* 111000111000111000111000111 */	sh3add	%r29,%r26,%r0	shd	%r1,%r29,29,%r29	addc	%r29,0,%r29		/* 111000111000111000111000111001 */	bv	%r0(ret)	extru	%r29,30,31,result	.exit	.procend#endif#if defined (L_divU_10) && !defined (SMALL_LIB)#undef L_divU_10#define dividend %r26#define divisor %r25#define tmp %r1#define result %r29#define ret %r31	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align 4	.export	$$divU_10$$divU_10	.proc	.callinfo	frame=0,no_calls	.entry	sh1add	%r26,%r26,%r29		; r29 = lo(11 x r)	shd	%r0,%r26,31,%r1		;  r1 = hi(10 x r)	addc	%r1,%r0,%r1		;  r1 = hi(11 x r); r in r1,,r29	zdep	%r29,27,28,%r25		; r25 = lo(10000 x r)	add	%r25,%r29,%r25		; r25 = lo(10001 x r)	shd	%r1,%r29,28,%r29	; r29 = hi(10000 x r)	addc	%r29,%r1,%r29		; r29 = hi(10001 x r); r in r29,,r25	zdep	%r25,23,24,%r1		;  r1 = lo(100000000 x r)	add	%r1,%r25,%r1		;  r1 = lo(100000001 x r)	shd	%r29,%r25,24,%r25	; r25 = hi(100000000 x r)	addc	%r25,%r29,%r25		; r25 = hi(100000001 x r); r in r25,,r1	zdep	%r1,15,16,%r29	add	%r29,%r1,%r29	shd	%r25,%r1,16,%r1	addc	%r1,%r25,%r1; r in r1,,r29	sh2add	%r29,%r26,%r0		;  r0 = lo(1000 x r) + dividend	shd	%r1,%r29,30,%r29	; r29 = hi(1000 x r)	addc	%r29,%r0,%r29	bv	%r0(ret)	extru	%r29,28,29,result	.exit	.procend#endif#if defined (L_divU_12) && !defined (SMALL_LIB)#undef L_divU_12#define dividend %r26#define divisor %r25#define tmp %r1#define result %r29#define ret %r31	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align 4	.export	$$divU_12$$divU_12	.proc	.callinfo	frame=0,no_calls	.entry	sh2add	%r26,%r26,%r29		; r29 = lo(101 x r)	shd	%r0,%r26,30,%r1		;  r1 = hi(100 x r)	addc	%r1,%r0,%r1		;  r1 = hi(101 x r); r in r1,,r29	zdep	%r29,27,28,%r25		; r25 = lo(10000 x r)	add	%r25,%r29,%r25		; r25 = lo(10001 x r)	shd	%r1,%r29,28,%r29	; r29 = hi(10000 x r)	addc	%r29,%r1,%r29		; r29 = hi(10001 x r); r in r29,,r25	zdep	%r25,23,24,%r1		;  r1 = lo(100000000 x r)	add	%r1,%r25,%r1		;  r1 = lo(100000001 x r)	shd	%r29,%r25,24,%r25	; r25 = hi(100000000 x r)	addc	%r25,%r29,%r25		; r25 = hi(100000001 x r); r in r25,,r1	zdep	%r1,15,16,%r29	add	%r29,%r1,%r29	shd	%r25,%r1,16,%r1	addc	%r1,%r25,%r1; r in r1,,r29	sh1add	%r29,%r26,%r0		;  r0 = lo(10 x r) + dividend	shd	%r1,%r29,31,%r29	; r29 = hi(10 x r)	addc	%r29,%r0,%r29	bv	%r0(ret)	extru	%r29,28,29,result	.exit	.procend#endif#ifdef L_divU_3	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divU_3$$divU_3	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divU	ldi		3,%r25	.exit	.procend	.import		$$divU,MILLICODE#endif#ifdef L_divU_5	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divU_5$$divU_5	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divU	ldi		5,%r25	.exit	.procend	.import		$$divU,MILLICODE#endif#ifdef L_divU_6	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divU_6$$divU_6	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divU	ldi		6,%r25	.exit	.procend	.import		$$divU,MILLICODE#endif#ifdef L_divU_7	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divU_7$$divU_7	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divU	ldi		7,%r25	.exit	.procend	.import		$$divU,MILLICODE#endif#ifdef L_divU_9	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divU_9$$divU_9	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divU	ldi		9,%r25	.exit	.procend	.import		$$divU,MILLICODE#endif#ifdef L_divU_10	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divU_10$$divU_10	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divU	ldi		10,%r25	.exit	.procend	.import		$$divU,MILLICODE#endif#ifdef L_divU_12	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divU_12$$divU_12	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divU	ldi		12,%r25	.exit	.procend	.import		$$divU,MILLICODE#endif#ifdef L_divU_14	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divU_14$$divU_14	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divU	ldi		14,%r25	.exit	.procend	.import		$$divU,MILLICODE#endif#ifdef L_divU_15	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divU_15$$divU_15	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divU	ldi		15,%r25	.exit	.procend	.import		$$divU,MILLICODE#endif#ifdef L_divI_3	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divI_3$$divI_3	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divI	ldi		3,%r25	.exit	.procend	.import		$$divI,MILLICODE#endif#ifdef L_divI_5	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divI_5$$divI_5	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divI	ldi		5,%r25	.exit	.procend	.import		$$divI,MILLICODE#endif#ifdef L_divI_6	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divI_6$$divI_6	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divI	ldi		6,%r25	.exit	.procend	.import		$$divI,MILLICODE#endif#ifdef L_divI_7	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divI_7$$divI_7	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divI	ldi		7,%r25	.exit	.procend	.import		$$divI,MILLICODE#endif#ifdef L_divI_9	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divI_9$$divI_9	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divI	ldi		9,%r25	.exit	.procend	.import		$$divI,MILLICODE#endif#ifdef L_divI_10	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divI_10$$divI_10	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divI	ldi		10,%r25	.exit	.procend	.import		$$divI,MILLICODE#endif#ifdef L_divI_12	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divI_12$$divI_12	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divI	ldi		12,%r25	.exit	.procend	.import		$$divI,MILLICODE#endif#ifdef L_divI_14	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divI_14$$divI_14	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divI	ldi		14,%r25	.exit	.procend	.import		$$divI,MILLICODE#endif#ifdef L_divI_15	.space	$TEXT$	.subspa	$MILLICODE$,quad=0,align=8,access=0x2c,sort=8	.align	4	.export	$$divI_15$$divI_15	.proc	.callinfo	frame=0,no_calls	.entry	b		$$divI	ldi		15,%r25	.exit	.procend	.import		$$divI,MILLICODE#endif

⌨️ 快捷键说明

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