Numworks Epsilon  1.4.1
Graphing Calculator Operating System
fpclassifyf.c
Go to the documentation of this file.
1 #include <math.h>
2 #include <private/ieee754.h>
3 
4 int __fpclassifyf(float x) {
5  if (ieee754exp32(x) == 0) {
6  if (ieee754man32(x) == 0x0) {
7  return FP_ZERO;
8  } else {
9  return FP_SUBNORMAL;
10  }
11  }
12  if (ieee754exp32(x) == 0xFF) {
13  if (ieee754man32(x) == 0) {
14  return FP_INFINITE;
15  } else {
16  return FP_NAN;
17  }
18  }
19  return FP_NORMAL;
20 }
int __fpclassifyf(float x)
Definition: fpclassifyf.c:4
#define FP_NORMAL
Definition: math.h:34
#define FP_ZERO
Definition: math.h:36
#define FP_INFINITE
Definition: math.h:32
#define x0
Definition: b_tgamma.c:86
uint8_t ieee754exp32(float x)
Definition: ieee754.c:9
#define FP_SUBNORMAL
Definition: math.h:35
uint32_t ieee754man32(float x)
Definition: ieee754.c:4
#define FP_NAN
Definition: math.h:33