1 #ifndef _ASM_X86_SIGCONTEXT32_H
2 #define _ASM_X86_SIGCONTEXT32_H
4 #include <linux/types.h>
6 /* signal context for 32bit programs. */
8 #define X86_FXSR_MAGIC 0x0000
11 unsigned short significand
[4];
12 unsigned short exponent
;
16 unsigned short significand
[4];
17 unsigned short exponent
;
18 unsigned short padding
[3];
25 /* FSAVE frame with extensions */
26 struct _fpstate_ia32
{
27 /* Regular FPU environment */
30 __u32 tag
; /* not compatible to 64bit twd */
36 unsigned short status
;
37 unsigned short magic
; /* 0xffff = regular FPU data only */
39 /* FXSR FPU environment */
43 struct _fpxreg _fxsr_st
[8];
44 struct _xmmreg _xmm
[8]; /* It's actually 16 */
48 struct _fpx_sw_bytes sw_reserved
;
52 struct sigcontext_ia32
{
53 unsigned short gs
, __gsh
;
54 unsigned short fs
, __fsh
;
55 unsigned short es
, __esh
;
56 unsigned short ds
, __dsh
;
68 unsigned short cs
, __csh
;
70 unsigned int sp_at_signal
;
71 unsigned short ss
, __ssh
;
72 unsigned int fpstate
; /* really (struct _fpstate_ia32 *) */
77 #endif /* _ASM_X86_SIGCONTEXT32_H */