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

📄 log32.s

📁 VxWorks BSP框架源代码包含头文件和驱动
💻 S
字号:
/* log32.s - VxWorks conversion from Microtek tools to Sun native *//* Copyright 1984-1992 Wind River Systems, Inc. *//*modification history--------------------01a,06aug92,jwt  converted.*//*! ! ! ! !!	SPARClite		Floating Point Library!!	Copyright (C) 1992 By!	United States Software Corporation!	14215 N.W. Science Park Drive!	Portland, Oregon 97229!!	This software is furnished under a license and may be used!	and copied only in accordance with the terms of such license!	and with the inclusion of the above copyright notice.!	This software or any other copies thereof may not be provided!	or otherwise made available to any other person.  No title to!	and ownership of the software is hereby transferred.!!	The information in this software is subject to change without !	notice and should not be construed as a commitment by United!	States Software Corporation.!!	First Release:		V1.02	March 26 1992! ! ! ! !	.macro	scan,p1,p2,p3	.word	0x81602000 | (&p3<<25) | (&p1<<14) | p2	.endm	.macro	umul,p1,p2,p3	.word	0x80500000 | (&p3<<25) | (&p1<<14) | &p2	.endm	.macro	divscc,p1,p2,p3	.word	0x80e80000 | (&p3<<25) | (&p1<<14) | &p2	.endm*/#include "arch/sparc/ussSun4.h"	.global	_exadd	.global	_exmul	.global	_exdiv	.global	_sigmax	.data	.align	4logcon:	.word	0x88888889,0x8888888	.word	0xd89d89d9,0x9d89d89	.word	0x2e8ba2e9,0xba2e8ba	.word	0x38e38e39,0xe38e38e	.word	0x49249249,0x12492492	.word	0x9999999a,0x19999999	.word	0xaaaaaaab,0x2aaaaaaa	.word	0x0,0x80000000bastab:	.word	0xb17217f7,0xd1cf79ac,0x3fe	.word	0x934b1089,0xa6dc93c2,0x3fe	.word	0xf0a450d1,0x39366ca7,0x3fd	.word	0xbfd7d1de,0xc0a8df6f,0x3fd	.word	0x934b1089,0xa6dc93c2,0x3fd	.word	0xd49f69e4,0x56cf1b7a,0x3fc	.word	0x88bc7411,0x3f23def2,0x3fc	.word	0x842cc5ac,0xf1d03445,0x3fb	.word	0x0,0x0,0x0	.word	0xf1383b71,0x57972f50,0x3fb	.word	0xe47fbe3c,0xd4d10d61,0x3fc	.word	0xa30c5e10,0xe2f613e8,0x3fd	.word	0xcf991f65,0xfcc25f96,0x3fd	.word	0xf8947afd,0x7837659b,0x3fd	.word	0x8f42faf3,0x820681f0,0x3fe	.word	0xa0ec7f42,0x33957323,0x3fe	.text	.align	4	.global	_exlog_exlog:	save	%sp,-96,%sp	sethi   %hi(0xf0000000),%l7	and     %l7,%i0,%i5	or      %g0,%i1,%l2	or      %g0,%l2,%l5	srl     %i0,28,%i4	subcc   %i2,0x3ff,%g0	bl      i1       	NOP	or      %g0,0x3ff,%l3	sub     %i2,%l3,%i3	add     %i0,%i5,%l4	srl     %l5,1,%l5	sll     %l4,31,%l7	srl     %l4,1,%l4	or      %l5,%l7,%l5	sethi   %hi(0x80000000),%l7	or      %l4,%l7,%l4	or      %g0,0x400,%l6	ba      e1       	sub     %i0,%i5,%l1i1:	or      %g0,0x3fe,%l3	sub     %l3,%i2,%i3	sub     %i4,7,%i4	sethi   %hi(0x10000000),%l7	add     %i5,%l7,%i5	add     %i0,%i5,%l4	srl     %l5,1,%l5	sll     %l4,31,%l7	srl     %l4,1,%l4	or      %l5,%l7,%l5	sethi   %hi(0x80000000),%l7	or      %l4,%l7,%l4	or      %g0,0x3ff,%l6	sub     %i0,%i5,%l1	subcc   %g0,%l2,%l2	subx    %g0,%l1,%l1e1:/*	scan	%l1,0,%i5	*/	SCAN | (lo1 << 14) | 0 | (in5 << 25)	subcc	%i5,63,%g0	bne	L1             	NOP	or	%l2,0,%l1	or	%g0,0,%l2	sub	%l3,32,%l3/*	scan	%l1,0,%i5	*/	SCAN | (lo1 << 14) | 0 | (in5 << 25)	subcc	%i5,63,%g0	be,a	L1             	or	%i5,0,%l3L1:	subcc	%g0,%i5,%l0	be	L2             	sub	%l3,%i5,%l3	sll	%l1,%i5,%l1	srl	%l2,%l0,%l0	or	%l0,%l1,%l1	sll	%l2,%i5,%l2L2:	or      %g0,%l1,%o0	or      %g0,%l2,%o1	or      %g0,%l3,%o2	or      %g0,%l4,%o3	or      %g0,%l5,%o4	call    _exdiv	or      %g0,%l6,%o5	or      %g0,%o0,%l1	or      %g0,%o1,%l2	or      %g0,%o2,%l3	or      %g0,%o0,%o3	or      %g0,%o1,%o4	call    _exmul	or      %g0,%o2,%o5	or      %g0,0,%o3	sethi   %hi(logcon),%o4	call    _sigmax	or	%o4,%lo(logcon),%o4	or      %g0,%o0,%l4	or      %g0,%o1,%l5	or      %g0,%o2,%l6	add     %l6,1,%l6	or      %g0,%l1,%o0	or      %g0,%l2,%o1	or      %g0,%l3,%o2	or      %g0,%l4,%o3	or      %g0,%l5,%o4	call    _exmul	or      %g0,%l6,%o5	sethi   %hi(bastab),%g1	or	%g1,%lo(bastab),%g1	sll     %i4,2,%l7	add     %g1,%l7,%g1	add     %g1,%l7,%g1	add     %g1,%l7,%g1	ld      [%g1],%o3	ld      [%g1+4],%o4	call    _exadd	ld      [%g1+8],%o5	or      %g0,%o0,%l1	or      %g0,%o1,%l2	or      %g0,%o2,%l3	subcc   %i3,0,%i3	be      Aret     	NOP	or      %g0,0x41e,%l6/*	scan	%i3,0,%i5	*/	SCAN | (in3 << 14) | 0 | (in5 << 25)	sll	%i3,%i5,%i3	subcc	%l6,%i5,%l6	sethi   %hi(0xb17217f7),%i5	or      %i5,0x3f7,%i5	umul	%i3,%i5,%l5	rd	%y,%l4	sethi   %hi(0xd1cf79ac),%i5	or      %i5,0x1ac,%i5	umul	%i3,%i5,%l0	rd	%y,%i5	addcc   %l5,%i5,%l5	addxcc  %l4,0,%l4	bneg    i2       	NOP	addcc   %l0,%l0,%l0	addxcc  %l5,%l5,%l5	addx    %l4,%l4,%l4	sub     %l6,1,%l6i2:	addcc   %l0,%l0,%l0	addxcc  %l5,0,%l5	addx    %l4,0,%l4	or      %g0,%l1,%o0	or      %g0,%l2,%o1	or      %g0,%l3,%o2	or      %g0,%l4,%o3	or      %g0,%l5,%o4	call    _exadd	or      %g0,%l6,%o5	or      %g0,%o0,%l1	or      %g0,%o1,%l2	or      %g0,%o2,%l3Aret:	or      %g0,%l1,%i0	or      %g0,%l2,%i1	or      %g0,%l3,%i2A999:	jmpl	%i7+8,%g0	restore	%g0,0,%g0	.global	_dplog_dplog:	.global	_log_log:	save	%sp,-96,%sp	srl     %i0,20,%i4	sll     %i0,11,%i2	srl     %i1,21,%l4	or      %i2,%l4,%i2	sll     %i1,11,%i3	sethi   %hi(0x80000000),%l4	or      %i2,%l4,%i2	sub     %i4,1,%l4	subcc   %l4,0x7fe,%g0	bcc     Bspec          Blog5:	or      %g0,%i2,%o0	or      %g0,%i3,%o1	call    _exlog	or      %g0,%i4,%o2	or      %g0,%o0,%i5	or      %g0,%o1,%l0	or      %g0,%o2,%l1	srl     %l0,11,%i1	sll     %i5,21,%l4	or      %i1,%l4,%i1	srl     %i5,11,%i0	sethi   %hi(0xfffff),%l4	or      %l4,0x3ff,%l4	and     %i0,%l4,%i0	sll     %l1,20,%l4	or      %i0,%l4,%i0Bret2:	subcc   %i4,0x3ff,%g0	bge     Bret     	NOP	sethi   %hi(0x80000000),%l4	or      %i0,%l4,%i0Bret:B999:	jmpl	%i7+8,%g0	restore	%g0,0,%g0Bspec:	subcc   %i0,0,%i0	bneg    Bnan           	subcc   %i4,0,%i4	bne     i4       	NOP	addcc   %i3,%i3,%i3	addx    %i2,%i2,%i2	orcc    %i2,%i3,%l4	be      e4       	NOP/*	scan	%i2,0,%l2	*/	SCAN | (in2 << 14) | 0 | (lo2 << 25)	subcc	%l2,63,%g0	bne	L3             	NOP	or	%i3,0,%i2	or	%g0,0,%i3	sub	%i4,32,%i4/*	scan	%i2,0,%l2	*/	SCAN | (in2 << 14) | 0 | (lo2 << 25)	subcc	%l2,63,%g0	be,a	L3             	or	%l2,0,%i4L3:	subcc	%g0,%l2,%l3	be	Blog5          	sub	%i4,%l2,%i4	sll	%i2,%l2,%i2	srl	%i3,%l3,%l3	or	%l3,%i2,%i2	sll	%i3,%l2,%i3	ba,a    Blog5    i4:	sll     %i2,1,%l4	orcc    %l4,%i3,%l4	bne     Bnan     	NOPe4:	sethi   %hi(0x7ff00000),%i0	ba      Bret2    	or      %g0,0,%i1Bnan:	sethi   %hi(0xfff80000),%i0	ba      Bret     	or      %g0,0,%i1	.global	_dplog10_dplog10:	.global	_log10_log10:	save	%sp,-96,%sp	srl     %i0,20,%i4	sll     %i0,11,%i2	srl     %i1,21,%l4	or      %i2,%l4,%i2	sll     %i1,11,%i3	sethi   %hi(0x80000000),%l4	or      %i2,%l4,%i2	sub     %i4,1,%l4	subcc   %l4,0x7fe,%g0	bcc     Cspec          Clog5:	or      %g0,%i2,%o0	or      %g0,%i3,%o1	call    _exlog	or      %g0,%i4,%o2	sethi   %hi(0xde5bd8a9),%o3	or      %o3,0xa9,%o3	sethi   %hi(0x37287195),%o4	or      %o4,0x195,%o4	call    _exmul	or      %g0,0x3fd,%o5	or      %g0,%o0,%i5	or      %g0,%o1,%l0	or      %g0,%o2,%l1	srl     %l0,11,%i1	sll     %i5,21,%l4	or      %i1,%l4,%i1	srl     %i5,11,%i0	sethi   %hi(0xfffff),%l4	or      %l4,0x3ff,%l4	and     %i0,%l4,%i0	sll     %l1,20,%l4	or      %i0,%l4,%i0Cret2:	subcc   %i4,0x3ff,%g0	bge     Cret     	NOP	sethi   %hi(0x80000000),%l4	or      %i0,%l4,%i0Cret:C999:	jmpl	%i7+8,%g0	restore	%g0,0,%g0Cspec:	subcc   %i0,0,%i0	bneg    Cnan           	subcc   %i4,0,%i4	bne     i7       	NOP	addcc   %i3,%i3,%i3	addx    %i2,%i2,%i2	orcc    %i2,%i3,%l4	be      e7       	NOP/*	scan	%i2,0,%l2	*/	SCAN | (in2 << 14) | 0 | (lo2 << 25)	subcc	%l2,63,%g0	bne	L5             	NOP	or	%i3,0,%i2	or	%g0,0,%i3	sub	%i4,32,%i4/*	scan	%i2,0,%l2	*/	SCAN | (in2 << 14) | 0 | (lo2 << 25)	subcc	%l2,63,%g0	be,a	L5             	or	%l2,0,%i4L5:	subcc	%g0,%l2,%l3	be	Clog5          	sub	%i4,%l2,%i4	sll	%i2,%l2,%i2	srl	%i3,%l3,%l3	or	%l3,%i2,%i2	sll	%i3,%l2,%i3	ba,a    Clog5    i7:	sll     %i2,1,%l4	orcc    %l4,%i3,%l4	bne     Cnan     	NOPe7:	sethi   %hi(0x7ff00000),%i0	ba      Cret2    	or      %g0,0,%i1Cnan:	sethi   %hi(0xfff80000),%i0	ba      Cret     	or      %g0,0,%i1!	.end

⌨️ 快捷键说明

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