1 /*-
2 * Written by J.T. Conklin, Apr 6, 1995
3 * Public domain.
4 * $FreeBSD: releng/10.1/sys/sparc64/include/ieeefp.h 226607 2011-10-21 06:41:46Z das $
5 */
6
7 #ifndef _MACHINE_IEEEFP_H_
8 #define _MACHINE_IEEEFP_H_
9
10 /* Deprecated FPU control interface */
11
12 #include <machine/fsr.h>
13
14 typedef int fp_except_t;
15 #define FP_X_IMP FSR_NX /* imprecise (loss of precision) */
16 #define FP_X_DZ FSR_DZ /* divide-by-zero exception */
17 #define FP_X_UFL FSR_UF /* underflow exception */
18 #define FP_X_OFL FSR_OF /* overflow exception */
19 #define FP_X_INV FSR_NV /* invalid operation exception */
20
21 typedef enum {
22 FP_RN = FSR_RD_N, /* round to nearest representable number */
23 FP_RZ = FSR_RD_Z, /* round to zero (truncate) */
24 FP_RP = FSR_RD_PINF, /* round toward positive infinity */
25 FP_RM = FSR_RD_NINF /* round toward negative infinity */
26 } fp_rnd_t;
27
28 __BEGIN_DECLS
29 extern fp_rnd_t fpgetround(void);
30 extern fp_rnd_t fpsetround(fp_rnd_t);
31 extern fp_except_t fpgetmask(void);
32 extern fp_except_t fpsetmask(fp_except_t);
33 extern fp_except_t fpgetsticky(void);
34 __END_DECLS
35
36
37 #endif /* _MACHINE_IEEEFP_H_ */
Cache object: 0e3e4de3e2ab0294f3a31fde34f31d25
|