blob: b0b5fd4b4ad4fab82ea9841380bbb3c800964d16 [file] [log] [blame]
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
Ben Cheng654325d2012-03-07 21:13:49 -080010 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080017 ****************************************************************************
18 ****************************************************************************/
19#ifndef _ASM_X86_SIGCONTEXT_H
20#define _ASM_X86_SIGCONTEXT_H
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080021#include <linux/compiler.h>
22#include <asm/types.h>
Ben Cheng654325d2012-03-07 21:13:49 -080023/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070024#ifdef __i386__
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080025struct _fpreg {
26 unsigned short significand[4];
27 unsigned short exponent;
Andrew Hsieh126601d2012-03-23 23:07:36 +080028/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070029};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080030struct _fpxreg {
31 unsigned short significand[4];
32 unsigned short exponent;
Andrew Hsieh126601d2012-03-23 23:07:36 +080033/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070034 unsigned short padding[3];
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080035};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080036struct _xmmreg {
37 unsigned long element[4];
Andrew Hsieh126601d2012-03-23 23:07:36 +080038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070039};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080040struct _fpstate {
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080041 unsigned long cw;
42 unsigned long sw;
Andrew Hsieh126601d2012-03-23 23:07:36 +080043/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070044 unsigned long tag;
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080045 unsigned long ipoff;
46 unsigned long cssel;
47 unsigned long dataoff;
Andrew Hsieh126601d2012-03-23 23:07:36 +080048/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070049 unsigned long datasel;
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080050 struct _fpreg _st[8];
51 unsigned short status;
52 unsigned short magic;
Andrew Hsieh126601d2012-03-23 23:07:36 +080053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070054 unsigned long _fxsr_env[6];
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080055 unsigned long mxcsr;
56 unsigned long reserved;
57 struct _fpxreg _fxsr_st[8];
Andrew Hsieh126601d2012-03-23 23:07:36 +080058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070059 struct _xmmreg _xmm[8];
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080060 unsigned long padding[56];
61};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080062#define X86_FXSR_MAGIC 0x0000
Andrew Hsieh126601d2012-03-23 23:07:36 +080063/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070064struct sigcontext {
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080065 unsigned short gs, __gsh;
66 unsigned short fs, __fsh;
67 unsigned short es, __esh;
Andrew Hsieh126601d2012-03-23 23:07:36 +080068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070069 unsigned short ds, __dsh;
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080070 unsigned long edi;
71 unsigned long esi;
72 unsigned long ebp;
Andrew Hsieh126601d2012-03-23 23:07:36 +080073/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070074 unsigned long esp;
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080075 unsigned long ebx;
76 unsigned long edx;
77 unsigned long ecx;
Andrew Hsieh126601d2012-03-23 23:07:36 +080078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070079 unsigned long eax;
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080080 unsigned long trapno;
81 unsigned long err;
82 unsigned long eip;
Andrew Hsieh126601d2012-03-23 23:07:36 +080083/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070084 unsigned short cs, __csh;
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080085 unsigned long eflags;
86 unsigned long esp_at_signal;
87 unsigned short ss, __ssh;
Andrew Hsieh126601d2012-03-23 23:07:36 +080088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070089 struct _fpstate __user * fpstate;
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080090 unsigned long oldmask;
91 unsigned long cr2;
92};
Andrew Hsieh126601d2012-03-23 23:07:36 +080093/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Elliott Hughesd3e64a32013-09-30 17:41:08 -070094#else
95struct _fpstate {
96 __u16 cwd;
97 __u16 swd;
98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99 __u16 twd;
100 __u16 fop;
101 __u64 rip;
102 __u64 rdp;
103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104 __u32 mxcsr;
105 __u32 mxcsr_mask;
106 __u32 st_space[32];
107 __u32 xmm_space[64];
108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109 __u32 reserved2[24];
110};
111struct sigcontext {
112 unsigned long r8;
113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114 unsigned long r9;
115 unsigned long r10;
116 unsigned long r11;
117 unsigned long r12;
118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119 unsigned long r13;
120 unsigned long r14;
121 unsigned long r15;
122 unsigned long rdi;
123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124 unsigned long rsi;
125 unsigned long rbp;
126 unsigned long rbx;
127 unsigned long rdx;
128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129 unsigned long rax;
130 unsigned long rcx;
131 unsigned long rsp;
132 unsigned long rip;
133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134 unsigned long eflags;
135 unsigned short cs;
136 unsigned short gs;
137 unsigned short fs;
138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139 unsigned short __pad0;
140 unsigned long err;
141 unsigned long trapno;
142 unsigned long oldmask;
143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144 unsigned long cr2;
145 struct _fpstate __user *fpstate;
146 unsigned long reserved1[8];
147};
148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149#endif
150#endif