亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sqrt.s

?? 操作系統SunOS 4.1.3版本的源碼
?? S
字號:
	.seg	"data"	.asciz	"@(#)sqrt.S 1.1 92/07/30 SMI"#define LOCORE#include <machine/asm_linkage.h>! Copyright (c) 1988 by Sun Microsystems, Inc.!! double sqrt(x) ! Double precision IEEE sqrt on Sunrise! Code by K.C. Ng, March 9, 1987, revised on May 14,1988.!! Sqrt(x) returns the correctly rounded (according to the prevailing ! rounding mode) square root of x. !! Algorithm:!	1. Shift and add to get 7.8 bits approximation of 1/sqrt(x).!	2. Apply reciproot iteration 2 times, then switch to newton iteration!	   once to get an approximation of sqrt(x) to one ulp.!	3. Final adjustment using division to get correctly rounded sqrt(x).!	.seg	"data"	.align	8constant:twom57	= 0x0	.word	0x3c600000,0x0		! 2**-57two54	= 0x8	.word	0x43500000,0x0		! = 2**54twom27	= 0x10	.word	0x3e400000,0x0		! = 2**-27half	= 0x18	.word	0x3fe00000,0x0		! = 0.5one	= 0x20	.word	0x3ff00000,0x0		! = 1.0onehalf	= 0x28	.word	0x3ff80000,0x0		! = 1.5 onemulp	= 0x30	.word	0x3fefffff,0xffffffff	! = 1-2**-53table	= 0x38		.word	0x1500,0x2ef8,0x4d67,0x6b02,0x87be,0xa395,0xbe7a,0xd866	.word	0xf14a,0x1091b,0x11fcd,0x13552,0x14999,0x15c98,0x16e34	.word	0x17e5f,0x18d03,0x19a01,0x1a545,0x1ae8a,0x1b5c4,0x1bb01	.word	0x1bfde,0x1c28d,0x1c2de,0x1c0db,0x1ba7e,0x1b11c,0x1a4b5	.word	0x1953d,0x18266,0x16be0,0x1683e,0x179d8,0x18a4d,0x19992	.word	0x1a789,0x1b445,0x1bf61,0x1c989,0x1d16d,0x1d77b,0x1dddf	.word	0x1e2ad,0x1e5bf,0x1e6e8,0x1e654,0x1e3cd,0x1df2a,0x1d635	.word	0x1cb16,0x1be2c,0x1ae4e,0x19bde,0x1868e,0x16e2e,0x1527f	.word	0x1334a,0x11051,0xe951,0xbe01,0x8e0d,0x5924,0x1edd! local variable using fpx	= -0x8y	= -0x10tmp	= -0x18ofsr	= -0x20nfsr	= -0x24tfsr	= -0x28	.seg	"text"	.global	_SVID_libm_err	ENTRY(sqrt)insqrt:			save	%sp,-144,%sp	set	constant,%l0		! l0 = address of constant	std	%i0,[%fp+x]		! save x 	sethi	%hi(0x3ff00000),%o4	! o4 = 0x3ff00000	subcc	%i0,%o4,%o4	bne	1f	addcc	%o4,1,%o4    ! check whether x < 1+2**-27	sethi	%hi(0x02000000),%o3		cmp	%i1,%o3	bgu	2f	tst	%i1	bne	quickcrank    ! x = 1, return x	nop	ba	sqrt_return	ldd	[%fp+x],%f0		! load x    ! x = 1 +- tiny with tiny < 2**-27quickcrank:	ldd	[%l0+twom57],%f2	! f2 = 2**-57	sra	%i1,1,%o2	st	%o2,[%fp+x+4]	andcc	%i1,1,%g0		! x even?	bne	odd	ldd	[%fp+x],%f0	fnegs	%f2,%f2			! evenodd:	faddd	%f0,%f2,%f0	ba	sqrt_return	nop1:	bne	2f	sethi	%hi(0x7ff00000),%o4	sethi	%hi(0xfc000000),%o3	cmp	%i1,%o3	bgu	quickcrank	nop2:	sethi	%hi(0x00100000),%o3	and	%i0,%o4,%o2	cmp	%o2,%o3	bg	1f	sethi	%hi(0x80000000),%o3	! o3 = 0x80000000    ! x is 0 or very tiny, but may not be subnormal	andn	%i0,%o3,%o2		! purging signed zero	orcc	%o2,%i1,%g0	be	quickreturn		! x is +-zero, return x+x	tst	%i0	bl	NaN			! x < 0, return NaN	nop    ! tiny positive x 	ldd	[%l0+two54],%f2		! set f2 = 2**54	ldd	[%fp+x],%f0		! load x	fmuld	%f0,%f2,%f0		! scale up x by 2**54	std	%f0,[%fp+tmp]	ldd	[%fp+tmp],%o0		! get High part of new x	call	insqrt			! call sqrt again, avoid profiling	nop	ldd	[%l0+twom27],%f2	! f2 = 2**-(27)	fmuld	%f0,%f2,%f0		! scale down sqrt(x) by 2**27	ba	sqrt_return	nop1:    ! finite x, 0.5*x will not underflow	tst	%i0	bl	NaN			! x < 0 return NaN	cmp	%o2,%o4			! here o4 = 0x7ff00000	be	quickreturn		! x must be NaN or +INF; return x+x	nop    ! now for reciproot algorithm ...     ! save RD, NX flags; reset RD to RN; disable NX;  save f4-f11	st	%fsr,[%fp+ofsr]		! save fsr	ld	[%fp+ofsr],%o2		! o2 = fsr	sethi	%hi(0xff800000),%o3	! set mask to reset TEM,RP and RD	andn	%o2,%o3,%o2		! fsr with everything clear	sethi	%hi(0x40000000),%o3	! RD = RZ	or	%o2,%o3,%o2		! new fsr with RD = RZ	st	%o2,[%fp+nfsr]	st	%g0,[%fp+tfsr]	ld	[%fp+tfsr],%fsr		! disable TEM, and set RD to RN	ldd	[%fp+x],%f0	ldd	[%l0+half],%f2	fmuld	%f0,%f2,%f2		! f2 = 0.5*x    ! initial approximation for 1/sqrt(x)	srl	%i0,1,%o0		! high x >> 1	sethi	%hi(0x5fe80000),%o1	! offset constant	sub	%o1,%o0,%o0		! o0 = k = 0x5fe80000 - (hx >> 1)	add	%l0,table,%o2		! o2 = address of data table	srl	%o0,12,%o1		! o1 := 4*(k >> 14)	and	%o1,0xfc,%o1		! o1 := 4*[63&(o0>>14)]	add	%o2,%o1,%o2		! o2 = address of the adjusting data	ld	[%o2],%o3		! o3 = adjustment for the approximation	sub	%o0,%o3,%o0		! high y ~ 1/sqrt(x) to 7.8 bits	st	%o0,[%fp+y]		! tmp = y	ldd	[%fp+y],%f10		! f10 = y    ! reciproot iteration once	fmuld	%f2,%f10,%f4		! f4 = (0.5*x)*y	fmuld	%f10,%f4,%f6		! f6 = ((0.5*x)*y)*y)	ldd	[%l0+onehalf],%f8	! f8 = 1.5	fsubd	%f8,%f6,%f6		! f6 = 1.5-0.5*x*y*y	fmuld	%f10,%f6,%f4		! f4 = y' = y*(1.5-0.5*x*y*y)    ! reciproot iteration twice	sethi	%hi(0x00100000),%o4	fmuld	%f0,%f4,%f6		! f6 = x*y	std	%f4,[%fp+tmp]	ld	[%fp+tmp],%o3		! o3 = Hy	sub	%o3,%o4,%o3		! o3 = H(0.5*y)	st	%o3,[%fp+tmp]	ldd	[%fp+tmp],%f8		! f8 = 0.5*y	fmuld	%f8,%f6,%f8		! f8 = 0.5*x*y*y	ldd	[%l0+onehalf],%f10	! f10 = 1.5	fsubd	%f10,%f8,%f8		! f8 = 1.5-0.5*x*y*y	fmuld	%f6,%f8,%f4		! f4 = (x*y)*(1.5-0.5*x*y*y)					! now f4 is 29 bit to sqrt(x)    ! Now use Newton iteration, at the same time determine RD	fdivd	%f2,%f4,%f6		! f6 = (0.5*x)/y rounded	ld	[%fp+ofsr],%o4		! o4 = old fsr	or	%o4,0x21,%o0	st	%o0,[%fp+tfsr]		! old fsr with inexact accured	srl	%o4,30,%o3		! o3 = RD	sethi	%hi(0xf0000000),%o2	! o2 = mask for RD and RP	andn	%o4,%o2,%o4	sethi	%hi(0x40000000),%o2	or	%o4,%o2,%o4		! old fsr with RD=RZ and RP=0	or	%o4,0x20,%o4	xor	%o4,0x20,%o4		! with aexc (inexact)=0	st	%o4,[%fp+nfsr]	std	%f4,[%fp+tmp]	ld	[%fp+tmp],%o0		! o0 = Hy	sethi	%hi(0x00100000),%o1	sub	%o0,%o1,%o0		! o0 = H(0.5*y)	st	%o0,[%fp+tmp]	ldd	[%fp+tmp],%f10		! f10 = 0.5*y	faddd	%f6,%f10,%f4		! f4 = sqrt(x) to 1 ulp    ! Twisted last bit to make sqrt(x) correctly rounded	ld	[%fp+nfsr],%fsr		! restore INEXACT flags, RD=RZ	nop				! three nop after ldfsr	nop	nop	fdivd	%f2,%f4,%f0		! f6 = z = (0.5*x)/y chopped quotient	std	%f4,[%fp+tmp]		! y is f4	ldd	[%fp+tmp],%o0	sethi	%hi(0x00100000),%o4	sub	%o0,%o4,%o0		! y = y/2	st	%o0,[%fp+tmp]	ldd	[%fp+tmp],%f2		! f2 = y/2	addcc	%o1,1,%o1	addx	%o0,%g0,%o0		!  y/2+ulp	std	%o0,[%fp+tmp]		! now tmp+4 = y/2+ulp	ldd	[%l0+onemulp],%f4	! f4 = 0.9999999.... chopped	set	0x20,%o4		! o4 = inexact accrued mask					! o3 = RD from above	std	%f0,[%fp+x]		! make sure div is finished	st	%fsr,[%fp+nfsr]	fmuld	%f0,%f4,%f4		! f4 = Z-1	ld	[%fp+nfsr],%o0		! o0 = current fsr	andcc	%o0,%o4,%o0		! see if inexact flags was up	bne	1f	nop    ! exact division, if z=y then exit	fcmpd	%f0,%f2	nop	fbne	2f	nop	ld	[%fp+ofsr],%fsr		! restore old fsr	nop				! three nop after ldfsr	nop	nop	faddd	%f0,%f0,%f0	ba	sqrt_return	nop2:    ! z!=y, set z=z-1	fmovs	%f4,%f0	fmovs	%f5,%f1	std	%f4,[%fp+x]1:	andcc	%o3,1,%g0		! test RD	bne	1f			! goto 1f if RD is RZ or RM	ld	[%fp+x],%o4	ld	[%fp+x+4],%o2	addcc	%o2,1,%o2	addx	%o4,%g0,%o4	st	%o4,[%fp+x]	st	%o2,[%fp+x+4]		! fp+x store z+ulp	andcc	%o3,2,%g0	be	1f			! if RN goto 1f 	ldd	[%fp+x],%f0	ldd	[%fp+tmp],%f2		! RP: f2 <- y+ulp1:		faddd	%f0,%f2,%f0	nop	nop	ld	[%fp+tfsr],%fsrsqrt_return:	ret	restorequickreturn:	ldd	[%fp+x],%f0	ba	sqrt_return	faddd	%f0,%f0,%f0NaN:    ! reload x in %f0	ldd	[%fp+x],%f0    ! purge off NaN argument	ldd	[%fp+x],%o0	set	0xfff00000,%o2	and	%o0,%o2,%o3	cmp	%o3,%o2	bne	invalid	andn	%o0,%o2,%o0	orcc	%o0,%o1,%g0	be	invalid	nop    ! input is -NaN, just return x+x	ba	sqrt_return	faddd	%f0,%f0,%f0    ! result is invalidinvalid:!	fsubd	%f0,%f0,%f0!	fdivd	%f0,%f0,%f0		! 0/0 create invalid signal	!	! Call SVID_libm_err to create invalid signal	!	    ! set input parameter for system V error handling routine		ldd	[%fp+x],%o0		mov	%o0,%o2		mov	%o1,%o3		set	26,%o4		! private error type 1: sqrt(-ve)	    ! call system V error handling routine		call	_SVID_libm_err		nop		ba	sqrt_return		nop	!	! end of codes for System V	!

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品成人一区二区在线| 国产成人av影院| 亚洲国产日韩一级| 亚洲视频精选在线| 亚洲欧美激情视频在线观看一区二区三区| 日本一区二区三级电影在线观看| 欧美变态tickling挠脚心| 日韩精品一区二区三区中文不卡| 日韩精品一区二区三区四区| 精品日韩欧美一区二区| 日韩欧美在线综合网| 精品理论电影在线观看 | 精品国产伦一区二区三区观看体验| 欧美一区二区三区公司| 日韩精品中午字幕| 26uuu国产日韩综合| 久久在线免费观看| 中文字幕在线观看一区| 亚洲精品视频在线看| 亚洲综合色噜噜狠狠| 日韩精品成人一区二区三区| 久久精品国产秦先生| 国产黄色91视频| 94色蜜桃网一区二区三区| 91国模大尺度私拍在线视频| 欧美视频在线一区| 日韩一区二区三区视频| 欧美精品一区二区三区高清aⅴ| 国产午夜精品久久久久久免费视| 国产精品美女一区二区三区| 蜜臀av一区二区三区| 精品一区二区综合| 波多野结衣视频一区| 91福利视频在线| 欧美一区二区精品| 亚洲国产高清不卡| 亚洲一区在线播放| 久久99精品国产91久久来源| 成人精品免费网站| 欧美日韩精品一区二区三区| 欧美v日韩v国产v| 中文字幕一区二区在线播放| 亚洲成人手机在线| 国产精品综合二区| 在线亚洲人成电影网站色www| 日韩一区二区电影| 国产精品国产馆在线真实露脸| 亚洲成人精品在线观看| 国产麻豆精品theporn| 色综合天天综合网天天看片| 日韩欧美视频在线| 亚洲欧洲99久久| 久久成人精品无人区| 99久久99久久精品国产片果冻 | 欧美一区二区三区白人| 国产欧美一区二区三区在线看蜜臀| 亚洲自拍偷拍网站| 国产麻豆精品在线观看| 欧美手机在线视频| 国产精品乱码妇女bbbb| 午夜精品在线看| 97se亚洲国产综合在线| 日韩美女视频在线| 亚洲自拍偷拍九九九| 国产mv日韩mv欧美| 日韩亚洲欧美一区二区三区| 国产女人aaa级久久久级| 亚洲一区二区偷拍精品| 午夜电影网亚洲视频| 国产69精品久久久久777| 91精品国产一区二区三区香蕉| 国产精品美女视频| 国产乱淫av一区二区三区| 欧美午夜精品理论片a级按摩| 国产欧美精品一区| 精品一区二区三区久久| 欧美色中文字幕| 亚洲欧美日韩电影| 懂色av中文一区二区三区| 欧美成人性福生活免费看| 一区二区三区四区国产精品| 成人黄色av电影| 久久久久高清精品| 麻豆久久久久久久| 欧美日韩高清在线| 亚洲精品欧美二区三区中文字幕| 成人免费毛片嘿嘿连载视频| 精品欧美黑人一区二区三区| 婷婷综合五月天| 欧美亚洲一区二区三区四区| 亚洲欧美综合网| 91免费国产在线| 国产精品理伦片| 不卡一二三区首页| 91国产免费看| 日韩精品一区二区三区四区 | 国产在线精品一区二区夜色| 欧美日韩一本到| 亚洲图片欧美一区| 欧美日韩激情一区| 亚洲国产欧美在线| 欧美视频一区二区三区在线观看 | 亚洲另类在线视频| 99国产精品久| 亚洲黄色av一区| 色婷婷精品久久二区二区蜜臀av| 亚洲色图视频网| 色婷婷综合久久久久中文一区二区| 日韩毛片高清在线播放| www.66久久| 亚洲欧美日韩成人高清在线一区| av成人老司机| 亚洲欧美福利一区二区| 日本精品一区二区三区高清| 伊人婷婷欧美激情| 欧美日本一区二区| 日本一不卡视频| 日韩美女视频在线| 国产成人欧美日韩在线电影| 国产欧美视频在线观看| 国产69精品久久久久777| 国产精品无圣光一区二区| 成人激情小说网站| 亚洲乱码中文字幕综合| 欧美视频第二页| 开心九九激情九九欧美日韩精美视频电影 | **性色生活片久久毛片| 91免费版pro下载短视频| 亚洲一区中文在线| 欧美成人性战久久| www.在线欧美| 午夜精品福利视频网站| 日韩欧美一二三四区| 国产精品888| 一区二区三区视频在线看| 911精品国产一区二区在线| 久久疯狂做爰流白浆xx| 中文字幕欧美日韩一区| 色播五月激情综合网| 青青草国产精品97视觉盛宴| 久久精品水蜜桃av综合天堂| 一本色道久久加勒比精品| 日韩精品每日更新| 国产精品丝袜在线| 欧美日产国产精品| 成人午夜视频网站| 亚洲国产精品欧美一二99| 欧美xingq一区二区| 91小视频免费观看| 麻豆国产欧美一区二区三区| 国产精品午夜在线观看| 欧美理论在线播放| 一区二区三区在线播| 色婷婷激情一区二区三区| 奇米在线7777在线精品 | 日韩高清在线观看| 国产欧美一区二区三区在线老狼| 欧美性高清videossexo| 国产麻豆精品在线观看| 亚洲午夜免费电影| 国产欧美精品一区二区色综合朱莉| 在线观看欧美黄色| 国产久卡久卡久卡久卡视频精品| 亚洲最快最全在线视频| 久久久一区二区| 欧美老人xxxx18| 97超碰欧美中文字幕| 蜜桃视频在线观看一区二区| 一区二区三区在线高清| 国产亚洲精品超碰| 欧美成人精品3d动漫h| 日本韩国精品在线| 丁香六月综合激情| 激情文学综合插| 日韩精品色哟哟| 亚洲一区二区精品久久av| 国产欧美日韩在线视频| 日韩一区二区在线看| 欧美在线免费视屏| 91麻豆国产在线观看| 国产成人在线免费观看| 全部av―极品视觉盛宴亚洲| 亚洲精品大片www| 国产精品入口麻豆原神| 日韩欧美激情在线| 91精品国产麻豆| 欧美午夜精品理论片a级按摩| 91丨porny丨国产入口| 国产高清精品在线| 精东粉嫩av免费一区二区三区| 日韩电影在线免费看| 亚洲福利一区二区三区| 亚洲裸体xxx| 一区视频在线播放| 中文字幕av一区二区三区| 久久综合国产精品| 久久色在线观看| 久久综合999| 久久久亚洲综合| 久久综合九色综合欧美98|