1570af302Sopenharmony_cistruct user {
2570af302Sopenharmony_ci	struct {
3570af302Sopenharmony_ci		unsigned long gpr[32], nip, msr, orig_gpr3, ctr, link, xer, ccr, softe;
4570af302Sopenharmony_ci		unsigned long trap, dar, dsisr, result;
5570af302Sopenharmony_ci	} regs;
6570af302Sopenharmony_ci	unsigned long u_tsize, u_dsize, u_ssize;
7570af302Sopenharmony_ci	unsigned long start_code, start_data, start_stack;
8570af302Sopenharmony_ci	long signal;
9570af302Sopenharmony_ci	void *u_ar0;
10570af302Sopenharmony_ci	unsigned long magic;
11570af302Sopenharmony_ci	char u_comm[32];
12570af302Sopenharmony_ci};
13570af302Sopenharmony_ci
14570af302Sopenharmony_ci#define ELF_NGREG 48
15570af302Sopenharmony_ci#define ELF_NFPREG 33
16570af302Sopenharmony_ci#define ELF_NVRREG 34
17570af302Sopenharmony_citypedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG];
18570af302Sopenharmony_citypedef double elf_fpreg_t, elf_fpregset_t[ELF_NFPREG];
19570af302Sopenharmony_citypedef struct { unsigned u[4]; }
20570af302Sopenharmony_ci#ifdef __GNUC__
21570af302Sopenharmony_ci__attribute__((__aligned__(16)))
22570af302Sopenharmony_ci#endif
23570af302Sopenharmony_ci	elf_vrreg_t, elf_vrregset_t[ELF_NVRREG];
24