1 #ifndef __ASM_SH_SIGCONTEXT_H 2 #define __ASM_SH_SIGCONTEXT_H 3 4 struct sigcontext { 5 unsigned long oldmask; 6 7 #if defined(__SH5__) || defined(CONFIG_CPU_SH5) 8 /* CPU registers */ 9 unsigned long long sc_regs[63]; 10 unsigned long long sc_tregs[8]; 11 unsigned long long sc_pc; 12 unsigned long long sc_sr; 13 14 /* FPU registers */ 15 unsigned long long sc_fpregs[32]; 16 unsigned int sc_fpscr; 17 unsigned int sc_fpvalid; 18 #else 19 /* CPU registers */ 20 unsigned long sc_regs[16]; 21 unsigned long sc_pc; 22 unsigned long sc_pr; 23 unsigned long sc_sr; 24 unsigned long sc_gbr; 25 unsigned long sc_mach; 26 unsigned long sc_macl; 27 28 #if defined(__SH4__) || defined(CONFIG_CPU_SH4) || \ 29 defined(__SH2A__) || defined(CONFIG_CPU_SH2A) 30 /* FPU registers */ 31 unsigned long sc_fpregs[16]; 32 unsigned long sc_xfpregs[16]; 33 unsigned int sc_fpscr; 34 unsigned int sc_fpul; 35 unsigned int sc_ownedfp; 36 #endif 37 #endif 38 }; 39 40 #endif /* __ASM_SH_SIGCONTEXT_H */ 41