1 #undef __WORDSIZE 2 #define __WORDSIZE 32 3 4 typedef struct user_fpregs_struct { 5 long cwd, swd, twd, fip, fcs, foo, fos, st_space[20]; 6 } elf_fpregset_t; 7 8 typedef struct user_fpxregs_struct { 9 unsigned short cwd, swd, twd, fop; 10 long fip, fcs, foo, fos, mxcsr, reserved; 11 long st_space[32], xmm_space[32], padding[56]; 12 } elf_fpxregset_t; 13 14 struct user_regs_struct { 15 long ebx, ecx, edx, esi, edi, ebp, eax, xds, xes, xfs, xgs; 16 long orig_eax, eip, xcs, eflags, esp, xss; 17 }; 18 19 #define ELF_NGREG 17 20 typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG]; 21 22 struct user { 23 struct user_regs_struct regs; 24 int u_fpvalid; 25 struct user_fpregs_struct i387; 26 unsigned long u_tsize; 27 unsigned long u_dsize; 28 unsigned long u_ssize; 29 unsigned long start_code; 30 unsigned long start_stack; 31 long signal; 32 int reserved; 33 struct user_regs_struct *u_ar0; 34 struct user_fpregs_struct *u_fpstate; 35 unsigned long magic; 36 char u_comm[32]; 37 int u_debugreg[8]; 38 }; 39 40 #define PAGE_MASK (~(PAGESIZE-1)) 41 #define NBPG PAGESIZE 42 #define UPAGES 1 43 #define HOST_TEXT_START_ADDR (u.start_code) 44 #define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) 45