1 #ifndef ASM_X86__SIGCONTEXT32_H
2 #define ASM_X86__SIGCONTEXT32_H
4 /* signal context for 32bit programs. */
6 #define X86_FXSR_MAGIC 0x0000
9 unsigned short significand[4];
10 unsigned short exponent;
14 unsigned short significand[4];
15 unsigned short exponent;
16 unsigned short padding[3];
23 /* FSAVE frame with extensions */
24 struct _fpstate_ia32 {
25 /* Regular FPU environment */
28 __u32 tag; /* not compatible to 64bit twd */
34 unsigned short status;
35 unsigned short magic; /* 0xffff = regular FPU data only */
37 /* FXSR FPU environment */
41 struct _fpxreg _fxsr_st[8];
42 struct _xmmreg _xmm[8]; /* It's actually 16 */
46 struct _fpx_sw_bytes sw_reserved;
50 struct sigcontext_ia32 {
51 unsigned short gs, __gsh;
52 unsigned short fs, __fsh;
53 unsigned short es, __esh;
54 unsigned short ds, __dsh;
66 unsigned short cs, __csh;
68 unsigned int sp_at_signal;
69 unsigned short ss, __ssh;
70 unsigned int fpstate; /* really (struct _fpstate_ia32 *) */
75 #endif /* ASM_X86__SIGCONTEXT32_H */