s_ilogbf.s

来自「Glibc 2.3.2源代码(解压后有100多M)」· S 代码 · 共 37 行

S
37
字号
/* * Written by J.T. Conklin <jtc@netbsd.org>. * Public domain. */#include <machine/asm.h>RCSID("$NetBSD: s_ilogbf.S,v 1.4 1995/10/22 20:32:43 pk Exp $")ENTRY(__ilogbf)	flds	4(%esp)/* I added the following ugly construct because ilogb(+-Inf) is   required to return INT_MAX in ISO C99.   -- jakub@redhat.com.  */	fxam			/* Is NaN or +-Inf?  */	fstsw   %ax	movb    $0x45, %dh	andb    %ah, %dh	cmpb    $0x05, %dh	je      1f		/* Is +-Inf, jump.  */	fxtract	pushl	%eax	fstp	%st	fistpl	(%esp)	fwait	popl	%eax	ret1:	fstp	%st	movl	$0x7fffffff, %eax	retEND (__ilogbf)weak_alias (__ilogbf, ilogbf)

⌨️ 快捷键说明

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