1: /*
2: * Structure of the floating point error register save/return
3: */
4:
5: struct fperr
6: {
7: short f_fec;
8: caddr_t f_fea;
9: };
10:
11: /*
12: * Bits in the floating point status register
13: */
14: #define FPS_FER 0100000 /* floating error */
15: #define FPS_FID 0040000 /* interrupt disable */
16: /* bit 13-12 are unused */
17: #define FPS_FIUV 0004000 /* interrupt on undefined variable */
18: #define FPS_FIU 0002000 /* interrupt on underflow */
19: #define FPS_FIV 0001000 /* interrupt on overflow */
20: #define FPS_FIC 0000400 /* interrupt on integer conversion error */
21: #define FPS_FD 0000200 /* floating double precision mode */
22: #define FPS_FL 0000100 /* floating long integer mode */
23: #define FPS_FT 0000040 /* floating truncate mode */
24: #define FPS_FMM 0000020 /* floating maintenance mode */
25: #define FPS_FN 0000010 /* floating negative */
26: #define FPS_FZ 0000004 /* floating zero */
27: #define FPS_FV 0000002 /* floating overflow */
28: #define FPS_FC 0000001 /* floating carry */
29:
30: #define FPS_BITS \
31: "\10\20FER\17FID\14FIUV\13FIU\12FIV\11FIC\10FD\7FL\6FT\5FMM\4FN\3FZ\2FV\1FC"
32:
33: /*
34: * Floating point error register codes
35: */
36: #define FEC_FMMT 0000016 /* maintenance mode trap */
37: #define FEC_FUV 0000014 /* floating undefined variable */
38: #define FEC_FU 0000012 /* floating underflow */
39: #define FEC_FV 0000010 /* floating overflow */
40: #define FEC_FC 0000006 /* floating integer conversion error */
41: #define FEC_FDZ 0000004 /* floating divide by zero */
42: #define FEC_FOPER 0000002 /* floating op code error */
Defined struct's
fperr
defined in line
5; used 2 times
Defined macros
Usage of this include