1 1.1 bjh21 /* $NetBSD: ieeefp.h,v 1.1 2001/01/10 19:02:06 bjh21 Exp $ */ 2 1.1 bjh21 3 1.1 bjh21 /* 4 1.1 bjh21 * Based on ieeefp.h written by J.T. Conklin, Apr 28, 1995 5 1.1 bjh21 * Public domain. 6 1.1 bjh21 */ 7 1.1 bjh21 8 1.1 bjh21 #ifndef _ARM32_IEEEFP_H_ 9 1.1 bjh21 #define _ARM32_IEEEFP_H_ 10 1.1 bjh21 11 1.1 bjh21 /* FP exception codes */ 12 1.1 bjh21 13 1.1 bjh21 #define FP_EXCEPT_INV 0 14 1.1 bjh21 #define FP_EXCEPT_DZ 1 15 1.1 bjh21 #define FP_EXCEPT_OFL 2 16 1.1 bjh21 #define FP_EXCEPT_UFL 3 17 1.1 bjh21 #define FP_EXCEPT_IMP 4 18 1.1 bjh21 19 1.1 bjh21 /* Exception type (used by fpsetmask() et al.) */ 20 1.1 bjh21 21 1.1 bjh21 typedef int fp_except; 22 1.1 bjh21 23 1.1 bjh21 /* Bit defines for fp_except */ 24 1.1 bjh21 25 1.1 bjh21 #define FP_X_INV (1 << FP_EXCEPT_INV) /* invalid operation exception */ 26 1.1 bjh21 #define FP_X_DZ (1 << FP_EXCEPT_DZ) /* divide-by-zero exception */ 27 1.1 bjh21 #define FP_X_OFL (1 << FP_EXCEPT_OFL) /* overflow exception */ 28 1.1 bjh21 #define FP_X_UFL (1 << FP_EXCEPT_UFL) /* underflow exception */ 29 1.1 bjh21 #define FP_X_IMP (1 << FP_EXCEPT_IMP) /* imprecise (loss of precision; "inexact") */ 30 1.1 bjh21 31 1.1 bjh21 /* Rounding modes */ 32 1.1 bjh21 33 1.1 bjh21 typedef enum { 34 1.1 bjh21 FP_RN=0, /* round to nearest representable number */ 35 1.1 bjh21 FP_RP=1, /* round toward positive infinity */ 36 1.1 bjh21 FP_RM=2, /* round toward negative infinity */ 37 1.1 bjh21 FP_RZ=3 /* round to zero (truncate) */ 38 1.1 bjh21 } fp_rnd; 39 1.1 bjh21 40 1.1 bjh21 #endif /* _ARM32_IEEEFP_H_ */ 41