xref: /csrg-svn/sys/tahoe/math/Kfp.h (revision 24116)
1 /* opcodes to be simulated by kernel software: */
2 #define	CVLF	0x76
3 #define	CVLD	0x77
4 #define	CVFL	0x86
5 #define	CVDL	0x87
6 #define	LDFD	0x97
7 #define	CVDF	0xa6
8 #define	ADDF   	0xc6
9 #define	ADDD	0xc7
10 #define	SUBF	0xd6
11 #define	SUBD	0xd7
12 #define	MULF	0xe6
13 #define	MULD	0xe7
14 #define	DIVF	0xf6
15 #define	DIVD	0xf7
16 #define	SINF	0x05
17 #define	COSF	0x15
18 #define	ATANF	0x25
19 #define	LOGF	0x35
20 #define	SQRTF	0x45
21 #define	EXPF	0x55
22 
23 
24 /* HFS bits:	*/
25 #define HFS_UNDF	0x008	/* float underflow */
26 #define HFS_OVF		0x004	/* float overflow */
27 
28 #define HFS_RANGE	0x8000	/* set u_error to ERANGE */
29 #define HFS_DOM		0x4000	/* set u_error to EDOM */
30 #define HFS_DIVZ	0x2000  /* divide by zero flag */
31 
32 /* destination types for the f.p. opcodes:	*/
33 #define LONG	01
34 #define FLOAT	02
35 #define	DOUBLE	03
36 
37 /* exceptions:	*/
38 #define OVF_EXC		0x003	/* floating overflow */
39 #define UNDF_EXC	0x004 	/* floating underflow */
40 #define DIV0_EXC	0x005	/* floating divide by 0 */
41