blob: 8583143fa28f0835291c188181f103e71079d297 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef __ASM_SH_SIGCONTEXT_H
2#define __ASM_SH_SIGCONTEXT_H
3
4struct sigcontext {
5 unsigned long oldmask;
6
Paul Mundtf7a7b152007-11-10 20:07:57 +09007#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
Linus Torvalds1da177e2005-04-16 15:20:36 -070019 /* 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 /* FPU registers */
30 unsigned long sc_fpregs[16];
31 unsigned long sc_xfpregs[16];
32 unsigned int sc_fpscr;
33 unsigned int sc_fpul;
34 unsigned int sc_ownedfp;
35#endif
Paul Mundtf7a7b152007-11-10 20:07:57 +090036#endif
Linus Torvalds1da177e2005-04-16 15:20:36 -070037};
38
39#endif /* __ASM_SH_SIGCONTEXT_H */