blob: 942b8a30937df79deb9ac1dc76bb8cd27862afd9 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef _ASM_M32R_SIGCONTEXT_H
2#define _ASM_M32R_SIGCONTEXT_H
3
4/* $Id$ */
5
6#include <linux/config.h>
7
8struct sigcontext {
9 /* CPU registers */
10 /* Saved main processor registers. */
11 unsigned long sc_r4;
12 unsigned long sc_r5;
13 unsigned long sc_r6;
14 struct pt_regs *sc_pt_regs;
15 unsigned long sc_r0;
16 unsigned long sc_r1;
17 unsigned long sc_r2;
18 unsigned long sc_r3;
19 unsigned long sc_r7;
20 unsigned long sc_r8;
21 unsigned long sc_r9;
22 unsigned long sc_r10;
23 unsigned long sc_r11;
24 unsigned long sc_r12;
25
26 /* Saved main processor status and miscellaneous context registers. */
27#if defined(CONFIG_ISA_M32R2) && defined(CONFIG_ISA_DSP_LEVEL2)
28 unsigned long sc_acc0h;
29 unsigned long sc_acc0l;
30 unsigned long sc_acc1h;
31 unsigned long sc_acc1l;
32#elif defined(CONFIG_ISA_M32R2) || defined(CONFIG_ISA_M32R)
33 unsigned long sc_acch;
34 unsigned long sc_accl;
Hirokazu Takata8e8ff022006-04-18 22:21:20 -070035 unsigned long sc_dummy_acc1h;
36 unsigned long sc_dummy_acc1l;
Linus Torvalds1da177e2005-04-16 15:20:36 -070037#else
38#error unknown isa configuration
39#endif
40 unsigned long sc_psw;
41 unsigned long sc_bpc; /* saved PC for TRAP syscalls */
42 unsigned long sc_bbpsw;
43 unsigned long sc_bbpc;
44 unsigned long sc_spu; /* saved user stack */
45 unsigned long sc_fp;
46 unsigned long sc_lr; /* saved PC for JL syscalls */
47 unsigned long sc_spi; /* saved kernel stack */
48
49 unsigned long oldmask;
50};
51
52#endif /* _ASM_M32R_SIGCONTEXT_H */