2 /* @(#)z_numtestf.c 1.0 98/08/13 */
3 /******************************************************************
7 * x - pointer to a floating point value
10 * An integer that indicates what kind of number was passed in:
11 * NUM = 3 - a finite value
12 * NAN = 2 - not a number
13 * INF = 1 - an infinite value
17 * This routine returns an integer that indicates the character-
18 * istics of the number that was passed in.
20 *****************************************************************/
31 GET_FLOAT_WORD (wx
, x
);
33 exp
= (wx
& 0x7f800000) >> 23;
35 /* Check for a zero input. */
41 /* Check for not a number or infinity. */
50 /* Otherwise it's a finite value. */
55 #ifdef _DOUBLE_IS_32BITS
57 int numtest (double x
)
59 return numtestf ((float) x
);
62 #endif /* defined(_DOUBLE_IS_32BITS) */