about summary refs log tree commit diff
path: root/sysdeps/ieee754/dbl-64/s_isinf_ns.c
blob: 0ce50352c788f0eeff62cfa7992bdb4ad6a2b7e2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/*
 * Written by Ulrich Drepper <drepper@gmail.com>.
 */

/*
 * __isinf_ns(x) returns != 0 if x is ±inf, else 0;
 * no branching!
 */

#include <math.h>
#include <math_private.h>

#undef __isinf_ns
int
__isinf_ns (double x)
{
	int32_t hx,lx;
	EXTRACT_WORDS(hx,lx,x);
	return !(lx | ((hx & 0x7fffffff) ^ 0x7ff00000));
}