1 #ifndef _SIGCONTEXT32_H
2 #define _SIGCONTEXT32_H 1
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 sigcontext_ia32 {
47 unsigned short gs, __gsh;
48 unsigned short fs, __fsh;
49 unsigned short es, __esh;
50 unsigned short ds, __dsh;
62 unsigned short cs, __csh;
64 unsigned int esp_at_signal;
65 unsigned short ss, __ssh;
66 unsigned int fpstate; /* really (struct _fpstate_ia32 *) */