Initial import from FreeBSD RELENG_4:
[dragonfly.git] / sys / i386 / gnu / fpemul / math_emu.h
1 /*
2  *
3  * $FreeBSD: src/sys/gnu/i386/fpemul/math_emu.h,v 1.5 1999/08/28 00:42:52 peter Exp $
4  *
5  */
6
7 #ifndef _MATH_EMU_H
8 #define _MATH_EMU_H
9
10 struct fpu_reg {
11         char    sign;
12         char    tag;
13         long    exp;
14         u_long  sigl;
15         u_long  sigh;
16 };
17
18 union i387_union {
19         struct i387_hard_struct {
20                 long    cwd;
21                 long    swd;
22                 long    twd;
23                 long    fip;
24                 long    fcs;
25                 long    foo;
26                 long    fos;
27                 long    st_space[20];   /* 8*10 bytes for each FP-reg = 80
28                                          * bytes */
29         }       hard;
30         struct i387_soft_struct {
31                 long    cwd;
32                 long    swd;
33                 long    twd;
34                 long    fip;
35                 long    fcs;
36                 long    foo;
37                 long    fos;
38                 long    top;
39                 struct fpu_reg regs[8]; /* 8*16 bytes for each FP-reg = 128
40                                          * bytes */
41                 unsigned char lookahead;
42                 struct trapframe *frame;
43                 unsigned long entry_eip;
44                 int     orig_eip;
45         }       soft;
46 };
47 #endif