i386 unified context draft
[AROS.git] / arch / i386-all / include / aros / i386 / cpucontext.h
blob928866aa186940f7ba21c4281d5e13f502c0aec8
1 /*
2 Copyright © 1995-2010, The AROS Development Team. All rights reserved.
3 $Id: $
5 Desc: CPU context definition for x86 processors
6 Lang: english
7 */
9 /* Black boxes for now */
10 struct FPUContext;
11 struct FPXContext;
13 struct ExceptionContext
15 ULONG Flags; /* Context flags */
16 ULONG eax;
17 ULONG ebx;
18 ULONG ecx;
19 ULONG edx;
20 ULONG esi;
21 ULONG edi;
22 ULONG ebp;
23 ULONG ds;
24 ULONG es;
25 ULONG fs;
26 ULONG gs;
27 ULONG eip;
28 ULONG cs;
29 ULONG eflags;
30 ULONG esp;
31 ULONG ss;
33 struct FPUContext *FPData; /* Pointer to 8087 FPU context area */
34 struct FPXContext *FXData; /* Pointer to SSE context area */
37 enum enECFlags
39 ECF_SEGMENTS = 1<<0, /* Segment registers are present */
40 ECF_FPU = 1<<1, /* 8087 FPU context is present */
41 ECF_FPX = 1<<2, /* SSE context is present */