1570af302Sopenharmony_ci#if defined(_SOFT_FLOAT) || defined(__NO_FPRS__) 2570af302Sopenharmony_ci#define FE_ALL_EXCEPT 0 3570af302Sopenharmony_ci#define FE_TONEAREST 0 4570af302Sopenharmony_ci#else 5570af302Sopenharmony_ci#define FE_TONEAREST 0 6570af302Sopenharmony_ci#define FE_TOWARDZERO 1 7570af302Sopenharmony_ci#define FE_UPWARD 2 8570af302Sopenharmony_ci#define FE_DOWNWARD 3 9570af302Sopenharmony_ci 10570af302Sopenharmony_ci#define FE_INEXACT 0x02000000 11570af302Sopenharmony_ci#define FE_DIVBYZERO 0x04000000 12570af302Sopenharmony_ci#define FE_UNDERFLOW 0x08000000 13570af302Sopenharmony_ci#define FE_OVERFLOW 0x10000000 14570af302Sopenharmony_ci#define FE_INVALID 0x20000000 15570af302Sopenharmony_ci 16570af302Sopenharmony_ci#define FE_ALL_EXCEPT 0x3e000000 17570af302Sopenharmony_ci 18570af302Sopenharmony_ci#ifdef _GNU_SOURCE 19570af302Sopenharmony_ci#define FE_INVALID_SNAN 0x01000000 20570af302Sopenharmony_ci#define FE_INVALID_ISI 0x00800000 21570af302Sopenharmony_ci#define FE_INVALID_IDI 0x00400000 22570af302Sopenharmony_ci#define FE_INVALID_ZDZ 0x00200000 23570af302Sopenharmony_ci#define FE_INVALID_IMZ 0x00100000 24570af302Sopenharmony_ci#define FE_INVALID_COMPARE 0x00080000 25570af302Sopenharmony_ci#define FE_INVALID_SOFTWARE 0x00000400 26570af302Sopenharmony_ci#define FE_INVALID_SQRT 0x00000200 27570af302Sopenharmony_ci#define FE_INVALID_INTEGER_CONVERSION 0x00000100 28570af302Sopenharmony_ci 29570af302Sopenharmony_ci#define FE_ALL_INVALID 0x01f80700 30570af302Sopenharmony_ci#endif 31570af302Sopenharmony_ci#endif 32570af302Sopenharmony_ci 33570af302Sopenharmony_citypedef unsigned fexcept_t; 34570af302Sopenharmony_citypedef double fenv_t; 35570af302Sopenharmony_ci 36570af302Sopenharmony_ci#define FE_DFL_ENV ((const fenv_t *)-1) 37