fenv.h revision 1.4
11.4Sskrll/* $NetBSD: fenv.h,v 1.4 2024/05/10 08:20:37 skrll Exp $ */ 21.1Smatt 31.3Sskrll/* 41.1Smatt * Based on ieeefp.h written by J.T. Conklin, Apr 28, 1995 51.1Smatt * Public domain. 61.1Smatt */ 71.1Smatt 81.1Smatt#ifndef _RISCV_FENV_H_ 91.1Smatt#define _RISCV_FENV_H_ 101.1Smatt 111.1Smatttypedef int fenv_t; /* FPSCR */ 121.1Smatttypedef int fexcept_t; 131.1Smatt 141.4Sskrll#define FE_INEXACT __BIT(0) /* Result inexact */ 151.4Sskrll#define FE_UNDERFLOW __BIT(1) /* Result underflowed */ 161.4Sskrll#define FE_OVERFLOW __BIT(2) /* Result overflowed */ 171.4Sskrll#define FE_DIVBYZERO __BIT(3) /* divide-by-zero */ 181.4Sskrll#define FE_INVALID __BIT(4) /* Result invalid */ 191.1Smatt 201.4Sskrll#define FE_ALL_EXCEPT \ 211.4Sskrll (FE_INEXACT | FE_UNDERFLOW | FE_OVERFLOW | FE_DIVBYZERO | FE_INVALID) 221.1Smatt 231.1Smatt#define FE_TONEAREST 0 /* round to nearest representable number */ 241.1Smatt#define FE_TOWARDZERO 1 /* round to zero (truncate) */ 251.1Smatt#define FE_DOWNWARD 2 /* round toward negative infinity */ 261.1Smatt#define FE_UPWARD 3 /* round toward positive infinity */ 271.1Smatt 281.1Smatt__BEGIN_DECLS 291.1Smatt 301.1Smatt/* Default floating-point environment */ 311.2Schsextern const fenv_t __fe_dfl_env; 321.1Smatt#define FE_DFL_ENV (&__fe_dfl_env) 331.1Smatt 341.1Smatt__END_DECLS 351.1Smatt 361.1Smatt#endif /* _RISCV_FENV_H_ */ 37