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

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

?? mathhardalib.s

?? Vxworks OS source code
?? S
?? 第 1 頁 / 共 2 頁
字號:
/* mathHardALib.s - C-callable math routines for the i80387 *//* Copyright 1984-2001 Wind River Systems, Inc. *//*modification history --------------------01g,28aug01,hdn  changed "fldl %st" to "fld %st" to shut off warning		 added mathHardFmodIeee() for IEEE compliance		 replaced .align with .balign		 moved round-mode bit macros to fppI86Lib.h		 added FUNC/FUNC_LABEL and GTEXT/GDATA macros01f,09may00,pai  fixed _mathHardFmod to test for partial remainder (SPR                 #30548).01e,29sep97,hdn  fixed a bug in _mathHardPow.01d,17jun96,hdn  fixed a bug in _mathHardSincos.01c,16jun93,hdn  updated to 5.1.01b,14oct92,hdn  aligned all functions.01a,16sep92,hdn  written by modifying Tron's mathHardALib.s.*//*DESCRIPTIONThis library provides a C interface to the high-level math functionson the i80387 floating-point coprocessor.  All angle-relatedparameters and return values are expressed in radians.  Functionscapable errors, will set errno upon an error. All functionsincluded in this library whos names correspond to the ANSI C specificationare, indeed, ANSI-compatable. In the spirit of ANSI, HUGE_VAL is nowsupported.WARNINGThis library works only if an i80387 coprocessor is in the system! Attempts to use these routines with no coprocessor present will result in illegal instruction traps.SEE ALSO:fppLib (1), floatLib (1), The C Programming Language - Second EditionINCLUDE FILE: math.hINTERNALEach routine has the following format:    o calculate floating-point function using double parameter     o store result to %st0 register*/#define _ASMLANGUAGE#include "vxWorks.h"#include "asm.h"#include "fppLib.h"#include "errno.h"	.data	.globl	FUNC(copyright_wind_river)	.long	FUNC(copyright_wind_river)	/* externals */	/* internals */        .globl  GTEXT(mathHardLog2)        .globl  GTEXT(mathHardLog10)        .globl  GTEXT(mathHardLog)        .globl  GTEXT(mathHardExp)	.globl  GTEXT(mathHardAsin)	.globl  GTEXT(mathHardAcos)	.globl  GTEXT(mathHardAtan)	.globl  GTEXT(mathHardAtan2)        .globl  GTEXT(mathHardTan)        .globl  GTEXT(mathHardCos)        .globl  GTEXT(mathHardSin)        .globl  GTEXT(mathHardPow)        .globl  GTEXT(mathHardSqrt)        .globl  GTEXT(mathHardFabs)	.globl  GTEXT(mathHardFmod)	.globl  GTEXT(mathHardFmodIeee)	.globl  GTEXT(mathHardSincos)	.globl  GTEXT(mathHardFloor)	.globl  GTEXT(mathHardCeil)	.globl  GTEXT(mathHardTrunc)	.globl  GTEXT(mathHardRound)	.globl  GTEXT(mathHardIround)	.globl  GTEXT(mathHardIrint)	.globl  GTEXT(mathHardInfinity)        .text	.balign 16/********************************************************************************* mathHardAcos - ANSI-compatable hardware floating-point arc-cosine** RETURNS: The arc-cosine in the range -pi/2 to pi/2 radians.** double mathHardAcos (dblParam)*     double dblParam;	/* angle in radians ***/FUNC_LABEL(mathHardAcos)	/* acos(x) = pi/2 - atan(x/sqrt(1-x**2)) */	pushl	%ebp	movl	%esp,%ebp	fldl	DARG1(%ebp)	fldl	DARG1(%ebp)	fmul	%st,%st(1)	fxch	%st(1)	fld1	fsubp	%st,%st(1)	fsqrt	fpatan	fld1	fld1	faddp	%st,%st(1)	fldpi	fdivp	%st,%st(1)	fsubp	%st,%st(1)	leave	ret/********************************************************************************* mathHardAsin - ANSI-compatable hardware floating-point arc-sine** RETURNS: The arc-sine in the range 0.0 to pi radians.* * SEE ALSO: * floatLib (1), "The C Programming Language - Second Edition"** double mathHardAsin (dblParam)*     double dblParam;	/* angle in radians ***/	.balign 16,0x90FUNC_LABEL(mathHardAsin)	/* asin(x) = atan(x/sqrt(1-x**2)) */	pushl	%ebp	movl	%esp,%ebp	fldl	DARG1(%ebp)	fldl	DARG1(%ebp)	fmul	%st,%st(1)	fxch	%st(1)	fld1	fsubp	%st,%st(1)	fsqrt	fpatan	leave	ret/********************************************************************************* mathHardAtan - ANSI-compatable hardware floating-point arc-tangent** RETURNS: The arc-tangent of dblParam in the range -pi/2 to pi/2.** SEE ALSO: floatLib (1), acos (2), asin (2)** double mathHardAtan (dblParam)*     double dblParam;	/* angle in radians ***/	.balign 16,0x90FUNC_LABEL(mathHardAtan)	pushl	%ebp	movl	%esp,%ebp	fldl	DARG1(%ebp)	fld1	fpatan	leave	ret/********************************************************************************* mathHardAtan2 - hardware floating point function for arctangent of (dblY/dblX)** RETURNS:*    The arc-tangent of (dblY/dblX) in the range -pi to pi.** SEE ALSO: * floatLib (1), "The C Programming Language - Second Edition"** double mathHardAtan2 (dblY, dblX)*     double dblY;		/* Y **     double dblX;		/* X ***/	.balign 16,0x90FUNC_LABEL(mathHardAtan2)	pushl	%ebp	movl	%esp,%ebp	fldl	DARG1(%ebp)	fldl	DARG2(%ebp)	fpatan	leave	ret    /********************************************************************************* mathHardCos - ANSI-compatable hardware floating-point cosine** RETURNS: the cosine of the radian argument dblParam** SEE ALSO: * floatLib (1), sin (2), cos (2), tan(2),* "The C Programming Language - Second Edition"** double mathHardCos (dblParam)*     double dblParam;	/* angle in radians ***/	.balign 16,0x90FUNC_LABEL(mathHardCos)	pushl	%ebp	movl	%esp,%ebp	fldl	DARG1(%ebp)	fcos	fstl	DARG1(%ebp)	fwait	movl	DARG1+4(%ebp),%eax	movl	DARG1(%ebp),%edx	leave	ret/********************************************************************************* mathHardExp - hardware floating-point exponential function** RETURNS:*    Floating-point inverse natural logarithm (e ** (dblExponent)).** SEE ALSO: * floatLib (1), "The C Programming Language - Second Edition"** double mathHardExp (dblExponent)*     double dblExponent;	/* argument ***/	.balign 16,0x90powerOftwo:	/* 2**z. 	 * z1 is integer of z. z2 is fractal of z.	 * if z2 is greater than 0.5, z2 -= 0.5, then	 *     2**z = 2**(z1 + z2 + 0.5) = 2**(z1) * 2**(z2) * 2**(0.5)	 * if z2 is less than 0.5, then	 *     2**z = 2**(z1 + z2) = 2**(z1) * 2**(z2)	 */	pushl	%ebp	movl	%esp,%ebp	/* change the Round Control bits */	subl	$8,%esp	fstcw	-4(%ebp)	fwait	movw	-4(%ebp),%ax	andw	$ FPCR_RC_MASK,%ax	orw	$ FPCR_RC_DOWN,%ax	movw	%ax,-8(%ebp)	fldcw	-8(%ebp)	/* get z1(integer part of z) and z2(fractal part of z) */	fld	%st	frndint	fldcw	-4(%ebp)	fsub	%st,%st(1)	fxch	%st(1)	fchs	/* get a value 0.5 */	fld1	fchs	fld1	fscale	fxch	%st(1)	fstp	%st	/* get z2 % 0.5 */	fxch	%st(1)	fprem	fstsw	%ax	fstp	%st(1)	/* get A = 2**(z2) */	f2xm1	fld1	faddp	%st,%st(1)	test	$0x0200,%ax	jz	powerOftwo0	/* get A = 2**(z2) * 2**(0.5) */	fld1	fadd	%st,%st(0)	fsqrt	fmulp	%st,%st(1)powerOftwo0:	/* get 2**z = A * 2**(z1) */	fscale	fstp	%st(1)	addl	$8,%esp	leave	ret	.balign 16,0x90FUNC_LABEL(mathHardExp)		/* e**y = 2**(y * log2(e)) */	pushl	%ebp	movl	%esp,%ebp	fldl	DARG1(%ebp)	fldl2e	fmulp	%st,%st(1)	call	powerOftwo	leave	ret/********************************************************************************* mathHardFabs - ANSI-compatable hardware floating-point absolute value** RETURNS: The floating-point absolute value of dblParam.** SEE ALSO: * floatLib (1), "The C Programming Language - Second Edition"** double mathHardFabs (dblParam)*     double dblParam;	/* argument ***/	.balign 16,0x90FUNC_LABEL(mathHardFabs) 	pushl	%ebp	movl	%esp,%ebp	fldl	DARG1(%ebp)	fabs	leave	ret/********************************************************************************* mathHardLog - ANSI-compatable hardware floating-point natural logarithm ** RETURNS: The natural logarithm of dblParam.** SEE ALSO: * floatLib (1), "The C Programming Language - Second Edition"** double mathHardLog (dblParam)*     double dblParam;	/* argument ***/	.balign 16,0x90FUNC_LABEL(mathHardLog)		/* loge(x) = loge(2) * log2(x) */	pushl	%ebp	movl	%esp,%ebp	fldln2			/* st0 = loge(2) */	fldl	DARG1(%ebp)	/* st0 = x, st1 = loge(2) */	fyl2x			/* st0 = loge(2) * log2(x) */	leave	ret/********************************************************************************* mathHardLog10 - ANSI-compatable hardware floating-point base 10 logarithm** RETURNS: The logarithm (base 10) of dblParam.** SEE ALSO: floatLib (1), log2 (2)** double mathHardLog10 (dblParam)*     double dblParam;	/* argument ***/	.balign 16,0x90FUNC_LABEL(mathHardLog10)	/* log10(x) = log10(2) * log2(x) */	pushl	%ebp	movl	%esp,%ebp	fldlg2			/* st0 = log10(2) */	fldl	DARG1(%ebp)	/* st0 = x, st1 = log10(2) */	fyl2x			/* st0 = log10(2) * log2(x) */	leave	ret/********************************************************************************* mathHardLog2 - ANSI-compatable hardware floating-point logarithm base 2 ** RETURNS: The logarithm (base 2) of dblParam.** SEE ALSO: floatLib (1), log10 (2)** double mathHardLog2 (dblParam)*     double dblParam;	/* argument ***/	.balign 16,0x90FUNC_LABEL(mathHardLog2)	pushl	%ebp	movl	%esp,%ebp	fld1	fldl	DARG1(%ebp)	fyl2x	leave	ret/********************************************************************************* mathHardPow - ANSI-compatable hardware floating-point power function** RETURNS: The floating-point value of dblX to the power of dblY.** SEE ALSO: floatLib (1), sqrt (2)** double mathHardPow (dblX, dblY)*     double dblX;	/* X **     double dblY;	/* Y ***/	.balign 16,0x90FUNC_LABEL(mathHardPow) 		/* x**y = 2**(y * log2(x)) */	pushl	%ebp	movl	%esp,%ebp	fldz	fldl	DARG1(%ebp)	fcompp	fstsw	%ax	sahf	je	powZeroX		/* if (x == 0) */	jb	powNegX			/* if (x < 0) */	fldl	DARG2(%ebp)		/* x > 0 */	fldl	DARG1(%ebp)		/* x**y = 2**(y * log2(x)) */	fyl2x	call	powerOftwo	jmp	powExitpowZeroX:				/* x == 0 */	fldz	fldl	DARG2(%ebp)	fcompp	fstsw	%ax	sahf	ja	powNan			/* if (y > 0),  (0**y = 0) */	je	powOne			/* if (y == 0), (0**0 = 1) */	fldl	mathHardInfinity0	/* if (y < 0),  (0**y = HUGE_VALUE */	fldl2t

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产资源在线一区| 7777精品伊人久久久大香线蕉| 日本电影欧美片| 日韩视频免费观看高清在线视频| 国产精品传媒入口麻豆| 奇米精品一区二区三区在线观看| 成人精品国产免费网站| 日韩欧美亚洲另类制服综合在线| 中文字幕一区二区三区在线播放| 久久激五月天综合精品| 欧美人与z0zoxxxx视频| 最新热久久免费视频| 精品亚洲成a人在线观看| 欧美午夜精品一区二区蜜桃 | 久久精品国产亚洲a| av中文字幕亚洲| 欧美一区二区日韩| 亚洲国产wwwccc36天堂| 99久久精品国产精品久久| 欧美成人性战久久| 天涯成人国产亚洲精品一区av| 91首页免费视频| 亚洲成人资源在线| 日韩精品一二区| 色婷婷精品大在线视频| 国产精品美女久久久久久久久久久| 久久成人免费电影| 7777女厕盗摄久久久| 亚洲综合久久av| 91丨九色丨国产丨porny| 国产精品久久毛片| 成人涩涩免费视频| 国产精品免费视频观看| 国产福利视频一区二区三区| 精品国产99国产精品| 亚洲午夜久久久久久久久久久| 99久久精品情趣| 日韩理论片网站| 色综合色综合色综合色综合色综合 | 成人国产精品免费网站| 国产日韩欧美精品综合| 高清国产午夜精品久久久久久| 久久九九99视频| 粉嫩aⅴ一区二区三区四区| 欧美激情一区二区三区不卡| 成人av资源下载| 亚洲伦在线观看| 欧美日韩在线播放三区四区| 日本三级亚洲精品| 欧美成人精精品一区二区频| 国产精品99久久久久久有的能看| 久久婷婷成人综合色| 国产91精品在线观看| 亚洲免费观看在线观看| 欧美日韩小视频| 久久99久久久久| 国产精品久久久久7777按摩| 欧美午夜片在线看| 美女网站在线免费欧美精品| 久久久亚洲欧洲日产国码αv| av毛片久久久久**hd| 午夜精品久久久久久| 久久久.com| 欧美中文字幕亚洲一区二区va在线| 五月婷婷久久丁香| 国产喂奶挤奶一区二区三区| 日本道在线观看一区二区| 免费看欧美美女黄的网站| 久久精品亚洲麻豆av一区二区| 99久久伊人网影院| 日本美女一区二区| 国产午夜精品一区二区| 欧美亚洲丝袜传媒另类| 裸体健美xxxx欧美裸体表演| 中文字幕在线不卡| 在线91免费看| 99久久婷婷国产| 国产原创一区二区三区| 亚洲h在线观看| 国产精品国模大尺度视频| 4438成人网| 91蜜桃在线免费视频| 国产真实乱对白精彩久久| 一区二区视频免费在线观看| 亚洲精品一区在线观看| 欧美日韩性生活| 成人三级在线视频| 黄色日韩三级电影| 亚洲一区二区三区四区的| 国产精品视频一区二区三区不卡| 欧美喷潮久久久xxxxx| 色综合久久久久综合| 国产精品一区二区久激情瑜伽| 首页亚洲欧美制服丝腿| 一区二区三区中文在线| 国产精品福利电影一区二区三区四区| 日韩欧美高清一区| 欧美日韩在线播放三区四区| 日本久久一区二区三区| 99久久久精品| 99免费精品在线| 不卡av在线网| 成人丝袜18视频在线观看| 国产精品一卡二卡在线观看| 日本不卡免费在线视频| 日本中文字幕一区| 午夜免费欧美电影| 亚洲成人动漫在线观看| 一区二区三区欧美日| 亚洲伦理在线精品| 亚洲一区在线看| 亚洲国产日韩a在线播放性色| 亚洲欧美aⅴ...| ●精品国产综合乱码久久久久| 亚洲国产精品av| 国产午夜一区二区三区| 国产片一区二区| 久久精品欧美日韩精品| 日本一区二区三级电影在线观看 | 91精品在线一区二区| 精品婷婷伊人一区三区三| 欧美三级日韩三级国产三级| 日韩毛片高清在线播放| 亚洲欧洲综合另类| 国产日韩av一区| 一本色道a无线码一区v| 波多野结衣中文字幕一区二区三区| 国产在线麻豆精品观看| 蜜臀av一区二区| 亚洲国产精品久久一线不卡| 亚洲成人先锋电影| 久久久久99精品一区| 国产色爱av资源综合区| 欧美不卡一区二区三区| 色综合色狠狠天天综合色| 97成人超碰视| 欧美日韩国产一级片| 欧美日韩免费观看一区三区| 亚洲日本一区二区| 精品国免费一区二区三区| 亚洲第一av色| 日韩黄色免费电影| 蜜桃视频一区二区三区在线观看| 蜜臀久久99精品久久久画质超高清| 色婷婷亚洲精品| 一级精品视频在线观看宜春院 | 91精品国产高清一区二区三区 | 91福利精品视频| 国产成人亚洲综合色影视| 日本不卡在线视频| 国产精品一二三四五| 91官网在线观看| 91香蕉视频污| 精品剧情在线观看| 日本aⅴ精品一区二区三区 | 精品一区二区在线视频| 欧美在线观看一区二区| 欧美国产成人精品| 91免费视频网| 亚洲精品水蜜桃| 青青草97国产精品免费观看无弹窗版| 成人激情综合网站| 日韩色视频在线观看| 国产精品天天摸av网| 天天射综合影视| 欧美在线看片a免费观看| 国产精品国产三级国产专播品爱网| 亚洲国产aⅴ天堂久久| 成人黄页毛片网站| 91麻豆精品国产91久久久久久久久| 国产日韩精品久久久| 成人蜜臀av电影| 国产精品欧美一级免费| 盗摄精品av一区二区三区| 在线观看亚洲精品视频| 26uuu亚洲综合色欧美| 天天操天天干天天综合网| 91捆绑美女网站| 亚洲精品视频观看| 国产精品自拍毛片| 91精品国产色综合久久不卡电影 | 91精品国产麻豆| 日本中文一区二区三区| 成人免费福利片| 亚洲国产精品久久人人爱蜜臀| 国产欧美日韩亚州综合| 欧美天堂一区二区三区| 亚洲超丰满肉感bbw| 一区二区免费看| 丁香亚洲综合激情啪啪综合| 欧美一卡二卡在线观看| 怡红院av一区二区三区| av在线不卡网| 最好看的中文字幕久久| 成人丝袜高跟foot| 国产精品色婷婷| 国产91丝袜在线播放九色| 亚洲精品一区在线观看| 老司机精品视频在线| 精品久久久网站|