summaryrefslogtreecommitdiffstats
path: root/sys/sparc64/include/ieeefp.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/sparc64/include/ieeefp.h')
-rw-r--r--sys/sparc64/include/ieeefp.h20
1 files changed, 11 insertions, 9 deletions
diff --git a/sys/sparc64/include/ieeefp.h b/sys/sparc64/include/ieeefp.h
index 4d1995a..6fb8d56 100644
--- a/sys/sparc64/include/ieeefp.h
+++ b/sys/sparc64/include/ieeefp.h
@@ -7,18 +7,20 @@
#ifndef _MACHINE_IEEEFP_H_
#define _MACHINE_IEEEFP_H_
+#include <machine/fsr.h>
+
typedef int fp_except_t;
-#define FP_X_IMP 0x01 /* imprecise (loss of precision) */
-#define FP_X_DZ 0x02 /* divide-by-zero exception */
-#define FP_X_UFL 0x04 /* underflow exception */
-#define FP_X_OFL 0x08 /* overflow exception */
-#define FP_X_INV 0x10 /* invalid operation exception */
+#define FP_X_IMP FSR_NX /* imprecise (loss of precision) */
+#define FP_X_DZ FSR_DZ /* divide-by-zero exception */
+#define FP_X_UFL FSR_UF /* underflow exception */
+#define FP_X_OFL FSR_OF /* overflow exception */
+#define FP_X_INV FSR_NV /* invalid operation exception */
typedef enum {
- FP_RN=0, /* round to nearest representable number */
- FP_RZ=1, /* round to zero (truncate) */
- FP_RP=2, /* round toward positive infinity */
- FP_RM=3 /* round toward negative infinity */
+ FP_RN = FSR_RD_N, /* round to nearest representable number */
+ FP_RZ = FSR_RD_Z, /* round to zero (truncate) */
+ FP_RP = FSR_RD_PINF, /* round toward positive infinity */
+ FP_RM = FSR_RD_NINF /* round toward negative infinity */
} fp_rnd_t;
#endif /* _MACHINE_IEEEFP_H_ */
OpenPOWER on IntegriCloud