Use the definitions in machine/fsr.h instead of duplicating these magic

numbers here (the values need to correspond to the %fsr ones for some
libc functions to work right).
This commit is contained in:
tmm 2002-09-14 18:00:44 +00:00
parent a139e40971
commit 69c3f107e2

View File

@ -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_ */