date and time created 90/03/12 15:47:52 by bill
[unix-history] / usr / src / sys / i386 / include / npx.h
CommitLineData
fd04f4ca
BJ
1/*
2 * 287/387 Floating Point Data Structures and Constants
3 * W. Jolitz 1/90
4 */
5
6#ifndef ___FPU87___
7#define ___FPU87___
8
9/* Environment information of floating point unit */
10struct env87 {
11 long en_cw; /* control word (16bits) */
12 long en_sw; /* status word (16bits) */
13 long en_tw; /* tag word (16bits) */
14 long en_fip; /* floating point instruction pointer */
15 u_short en_fcs; /* floating code segment selector */
16 u_short en_opcode; /* opcode last executed (11 bits ) */
17 long en_foo; /* floating operand offset */
18 long en_fos; /* floating operand segment selector */
19};
20
21/* Contents of each floating point accumulator */
22struct fpacc87 {
23 u_long fp_mantlo; /* mantissa low (31:0) */
24 u_long fp_manthi; /* mantissa high (63:32) */
25 int fp_exp:15; /* exponent */
26 int fp_sgn:1; /* mantissa sign */
27};
28
29/* Floating point context */
30struct save87 {
31 struct env87 sv_env; /* floating point control/status */
32 struct fpacc87 sv_ac[8]; /* accumulator contents, 0-7 */
33};
34
35#endif ___FPU87___