1/* $Id: reg.h,v 1.1.1.1 2007/08/03 18:53:36 Exp $
2 * linux/asm-sparc64/reg.h
3 * Layout of the registers as expected by gdb on the Sparc
4 * we should replace the user.h definitions with those in
5 * this file, we don't even use the other
6 * -miguel
7 *
8 * The names of the structures, constants and aliases in this file
9 * have the same names as the sunos ones, some programs rely on these
10 * names (gdb for example).
11 *
12 */
13
14#ifndef __SPARC64_REG_H
15#define __SPARC64_REG_H
16
17struct regs {
18        unsigned long r_g1;
19        unsigned long r_g2;
20        unsigned long r_g3;
21        unsigned long r_g4;
22        unsigned long r_g5;
23        unsigned long r_g6;
24        unsigned long r_g7;
25        unsigned long r_o0;
26        unsigned long r_o1;
27        unsigned long r_o2;
28        unsigned long r_o3;
29        unsigned long r_o4;
30        unsigned long r_o5;
31        unsigned long r_o6;
32        unsigned long r_o7;
33        unsigned long __pad;
34        unsigned long r_tstate;
35        unsigned long r_tpc;
36        unsigned long r_tnpc;
37        unsigned int  r_y;
38        unsigned int  r_fprs;
39};
40
41#define FPU_REGS_TYPE unsigned int
42#define FPU_FSR_TYPE unsigned long
43
44struct fp_status {
45        unsigned long fpu_fr[32];
46        unsigned long Fpu_fsr;
47};
48
49struct fpu {
50	struct fp_status f_fpstatus;
51};
52
53#define fpu_regs  f_fpstatus.fpu_fr
54#define fpu_fsr   f_fpstatus.Fpu_fsr
55
56#endif /* __SPARC64_REG_H */
57