1 #undef __WORDSIZE 2 #define __WORDSIZE 64 3 4 typedef union { 5 double d; 6 float f; 7 } elf_fpreg_t; 8 9 typedef struct { 10 unsigned fpc; 11 elf_fpreg_t fprs[16]; 12 } elf_fpregset_t; 13 14 #define ELF_NGREG 27 15 typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG]; 16 17 struct _user_psw_struct { 18 unsigned long mask, addr; 19 }; 20 21 struct _user_fpregs_struct { 22 unsigned fpc; 23 double fprs[16]; 24 }; 25 26 struct _user_per_struct { 27 unsigned long control_regs[3]; 28 unsigned single_step : 1; 29 unsigned instruction_fetch : 1; 30 unsigned : 30; 31 unsigned long starting_addr, ending_addr; 32 unsigned short perc_atmid; 33 unsigned long address; 34 unsigned char access_id; 35 }; 36 37 struct _user_regs_struct { 38 struct _user_psw_struct psw; 39 unsigned long gprs[16]; 40 unsigned acrs[16]; 41 unsigned long orig_gpr2; 42 struct _user_fpregs_struct fp_regs; 43 struct _user_per_struct per_info; 44 unsigned long ieee_instruction_pointer; 45 }; 46 47 struct user { 48 struct _user_regs_struct regs; 49 unsigned long u_tsize, u_dsize, u_ssize; 50 unsigned long start_code, start_stack; 51 long signal; 52 struct _user_regs_struct *u_ar0; 53 unsigned long magic; 54 char u_comm[32]; 55 }; 56 57 #define PAGE_MASK (~(PAGESIZE-1)) 58 #define NBPG PAGESIZE 59 #define UPAGES 1 60 #define HOST_TEXT_START_ADDR (u.start_code) 61 #define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) 62 63