xref: /openbsd-src/sys/arch/amd64/include/ieeefp.h (revision 2fa72412907ae78c4787a4a8f888c5f0486e225c)
1*2fa72412Spirofti /*	$OpenBSD: ieeefp.h,v 1.2 2011/03/23 16:54:34 pirofti Exp $	*/
2f5df1827Smickey 
3f5df1827Smickey /*
4f5df1827Smickey  * Written by J.T. Conklin, Apr 6, 1995
5f5df1827Smickey  * Public domain.
6f5df1827Smickey  */
7f5df1827Smickey 
8*2fa72412Spirofti #ifndef _MACHINE_IEEEFP_H_
9*2fa72412Spirofti #define _MACHINE_IEEEFP_H_
10f5df1827Smickey 
11f5df1827Smickey typedef int fp_except;
12f5df1827Smickey #define FP_X_INV	0x01	/* invalid operation exception */
13f5df1827Smickey #define FP_X_DNML	0x02	/* denormalization exception */
14f5df1827Smickey #define FP_X_DZ		0x04	/* divide-by-zero exception */
15f5df1827Smickey #define FP_X_OFL	0x08	/* overflow exception */
16f5df1827Smickey #define FP_X_UFL	0x10	/* underflow exception */
17f5df1827Smickey #define FP_X_IMP	0x20	/* imprecise (loss of precision) */
18f5df1827Smickey 
19f5df1827Smickey typedef enum {
20f5df1827Smickey     FP_RN=0,			/* round to nearest representable number */
21f5df1827Smickey     FP_RM=1,			/* round toward negative infinity */
22f5df1827Smickey     FP_RP=2,			/* round toward positive infinity */
23f5df1827Smickey     FP_RZ=3			/* round to zero (truncate) */
24f5df1827Smickey } fp_rnd;
25f5df1827Smickey 
26*2fa72412Spirofti #endif /* _MACHINE_IEEEFP_H_ */
27