| 1 | #include <math.h> |
| 2 | #include <stdint.h> |
| 3 | |
| 4 | int __fpclassifyf(float x) |
| 5 | { |
| 6 | 	union {float f; uint32_t i;} u = {x}; |
| 7 | 	int e = u.i>>23 & 0xff; |
| 8 | 	if (!e) return u.i<<1 ? FP_SUBNORMAL : FP_ZERO; |
| 9 | 	if (e==0xff) return u.i<<9 ? FP_NAN : FP_INFINITE; |
| 10 | 	return FP_NORMAL; |
| 11 | } |