1 1.1.18.2 jdolecek /* $NetBSD: fenv.h,v 1.1.18.2 2017/12/03 11:36:34 jdolecek Exp $ */ 2 1.1.18.2 jdolecek 3 1.1.18.2 jdolecek /* 4 1.1.18.2 jdolecek * Based on ieeefp.h written by J.T. Conklin, Apr 28, 1995 5 1.1.18.2 jdolecek * Public domain. 6 1.1.18.2 jdolecek */ 7 1.1.18.2 jdolecek 8 1.1.18.2 jdolecek #ifndef _OR1K_FENV_H_ 9 1.1.18.2 jdolecek #define _OR1K_FENV_H_ 10 1.1.18.2 jdolecek 11 1.1.18.2 jdolecek typedef int fenv_t; /* FPSCR */ 12 1.1.18.2 jdolecek typedef int fexcept_t; 13 1.1.18.2 jdolecek 14 1.1.18.2 jdolecek #define FE_OVERFLOW 0x001 /* Result overflowed */ 15 1.1.18.2 jdolecek #define FE_UNDERFLOW 0x002 /* Result underflowed */ 16 1.1.18.2 jdolecek #define FE_SNAN 0x004 /* Result SNaN */ 17 1.1.18.2 jdolecek #define FE_QNAN 0x008 /* Result QNaN */ 18 1.1.18.2 jdolecek #define FE_ZERO 0x010 /* Result zero */ 19 1.1.18.2 jdolecek #define FE_INEXACT 0x020 /* Result inexact */ 20 1.1.18.2 jdolecek #define FE_INVALID 0x040 /* Result invalid */ 21 1.1.18.2 jdolecek #define FE_INFINITY 0x080 /* Result infinite */ 22 1.1.18.2 jdolecek #define FE_DIVBYZERO 0x100 /* divide-by-zero */ 23 1.1.18.2 jdolecek 24 1.1.18.2 jdolecek #define FE_ALL_EXCEPT 0x1ff 25 1.1.18.2 jdolecek 26 1.1.18.2 jdolecek #define FE_TONEAREST 0 /* round to nearest representable number */ 27 1.1.18.2 jdolecek #define FE_TOWARDZERO 1 /* round to zero (truncate) */ 28 1.1.18.2 jdolecek #define FE_UPWARD 2 /* round toward positive infinity */ 29 1.1.18.2 jdolecek #define FE_DOWNWARD 3 /* round toward negative infinity */ 30 1.1.18.2 jdolecek 31 1.1.18.2 jdolecek __BEGIN_DECLS 32 1.1.18.2 jdolecek 33 1.1.18.2 jdolecek /* Default floating-point environment */ 34 1.1.18.2 jdolecek extern const fenv_t __fe_dfl_env; 35 1.1.18.2 jdolecek #define FE_DFL_ENV (&__fe_dfl_env) 36 1.1.18.2 jdolecek 37 1.1.18.2 jdolecek __END_DECLS 38 1.1.18.2 jdolecek 39 1.1.18.2 jdolecek #endif /* _OR1K_FENV_H_ */ 40