fenv.h raw

   1  #if defined(_SOFT_FLOAT) || defined(__NO_FPRS__)
   2  #define FE_ALL_EXCEPT 0
   3  #define FE_TONEAREST  0
   4  #else
   5  #define FE_TONEAREST	0
   6  #define FE_TOWARDZERO	1
   7  #define FE_UPWARD	2
   8  #define FE_DOWNWARD	3
   9  
  10  #define FE_INEXACT	0x02000000
  11  #define FE_DIVBYZERO	0x04000000
  12  #define FE_UNDERFLOW	0x08000000
  13  #define FE_OVERFLOW	0x10000000
  14  #define FE_INVALID	0x20000000
  15  
  16  #define FE_ALL_EXCEPT	0x3e000000
  17  
  18  #ifdef _GNU_SOURCE
  19  #define FE_INVALID_SNAN		0x01000000
  20  #define FE_INVALID_ISI		0x00800000
  21  #define FE_INVALID_IDI		0x00400000
  22  #define FE_INVALID_ZDZ		0x00200000
  23  #define FE_INVALID_IMZ		0x00100000
  24  #define FE_INVALID_COMPARE	0x00080000
  25  #define FE_INVALID_SOFTWARE	0x00000400
  26  #define FE_INVALID_SQRT		0x00000200
  27  #define FE_INVALID_INTEGER_CONVERSION	0x00000100
  28  
  29  #define FE_ALL_INVALID		0x01f80700
  30  #endif
  31  #endif
  32  
  33  typedef unsigned fexcept_t;
  34  typedef double fenv_t;
  35  
  36  #define FE_DFL_ENV ((const fenv_t *)-1)
  37