yuezonghe | 824eb0c | 2024-06-27 02:32:26 -0700 | [diff] [blame^] | 1 | /* |
2 | * Written by J.T. Conklin <jtc@netbsd.org>. | ||||
3 | * Public domain. | ||||
4 | */ | ||||
5 | |||||
6 | /* | ||||
7 | * isinff(x) returns 1 if x is inf, -1 if x is -inf, else 0; | ||||
8 | * no branching! | ||||
9 | */ | ||||
10 | |||||
11 | #include "math.h" | ||||
12 | #include "math_private.h" | ||||
13 | |||||
14 | int __isinff (float x) | ||||
15 | { | ||||
16 | int32_t ix,t; | ||||
17 | GET_FLOAT_WORD(ix,x); | ||||
18 | t = ix & 0x7fffffff; | ||||
19 | t ^= 0x7f800000; | ||||
20 | t |= -t; | ||||
21 | return ~(t >> 31) & (ix >> 30); | ||||
22 | } | ||||
23 | libm_hidden_def(__isinff) |