📄 s_isinfl.c
字号:
/* * Written by J.T. Conklin <jtc@netbsd.org>. * Change for long double by Ulrich Drepper <drepper@cygnus.com>. * Intel i387 specific version. * Public domain. */#if defined(LIBM_SCCS) && !defined(lint)static char rcsid[] = "$NetBSD: $";#endif/* * isinfl(x) returns 1 if x is inf, -1 if x is -inf, else 0; * no branching! */#include "math.h"#include "math_private.h"#ifdef __STDC__ int __isinfl(long double x)#else int __isinfl(x) long double x;#endif{ int32_t se,hx,lx; GET_LDOUBLE_WORDS(se,hx,lx,x); /* This additional ^ 0x80000000 is necessary because in Intel's internal representation of the implicit one is explicit. */ lx |= (hx ^ 0x80000000) | ((se & 0x7fff) ^ 0x7fff); lx |= -lx; se &= 0x8000; return ~(lx >> 31) & (1 - (se >> 14));}hidden_def (__isinfl)weak_alias (__isinfl, isinfl)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -