1#undef __WORDSIZE
2#define __WORDSIZE 32
3
4#define REG_REG0	 0
5#define REG_REG15	15
6#define REG_PC		16
7#define REG_PR		17
8#define REG_SR		18
9#define REG_GBR		19
10#define REG_MACH	20
11#define REG_MACL	21
12#define REG_SYSCALL	22
13#define REG_FPREG0	23
14#define REG_FPREG15	38
15#define REG_XFREG0	39
16#define REG_XFREG15	54
17#define REG_FPSCR	55
18#define REG_FPUL	56
19
20struct pt_regs {
21	unsigned long regs[16];
22	unsigned long pc;
23	unsigned long pr;
24	unsigned long sr;
25	unsigned long gbr;
26	unsigned long mach;
27	unsigned long macl;
28	long tra;
29};
30
31struct pt_dspregs {
32	unsigned long a1;
33	unsigned long a0g;
34	unsigned long a1g;
35	unsigned long m0;
36	unsigned long m1;
37	unsigned long a0;
38	unsigned long x0;
39	unsigned long x1;
40	unsigned long y0;
41	unsigned long y1;
42	unsigned long dsr;
43	unsigned long rs;
44	unsigned long re;
45	unsigned long mod;
46};
47
48struct user_fpu_struct {
49	unsigned long fp_regs[16];
50	unsigned long xfp_regs[16];
51	unsigned long fpscr;
52	unsigned long fpul;
53};
54
55#define ELF_NGREG 23
56typedef unsigned long elf_greg_t;
57typedef elf_greg_t elf_gregset_t[ELF_NGREG];
58typedef struct user_fpu_struct elf_fpregset_t;
59
60struct user {
61	struct pt_regs regs;
62	struct user_fpu_struct fpu;
63	int u_fpvalid;
64	unsigned long u_tsize;
65	unsigned long u_dsize;
66	unsigned long u_ssize;
67	unsigned long start_code;
68	unsigned long start_data;
69	unsigned long start_stack;
70	long int signal;
71	unsigned long u_ar0;
72	struct user_fpu_struct *u_fpstate;
73	unsigned long magic;
74	char u_comm[32];
75};
76