summaryrefslogtreecommitdiff
path: root/arch/powerpc/bits/user.h
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2012-11-23 20:05:43 -0500
committerRich Felker <dalias@aerifal.cx>2012-11-23 20:05:43 -0500
commit4acc95e497956d926bc9b9a0534cc93a73a6d3e1 (patch)
tree5bc7fa6c77b5a1cd8d9d24fd6c6c3dd72c5fb5fe /arch/powerpc/bits/user.h
parent98f56b12ceddba183c4fdba881ec753bbeea4e9f (diff)
downloadmusl-4acc95e497956d926bc9b9a0534cc93a73a6d3e1.tar.gz
musl-4acc95e497956d926bc9b9a0534cc93a73a6d3e1.tar.bz2
musl-4acc95e497956d926bc9b9a0534cc93a73a6d3e1.tar.xz
musl-4acc95e497956d926bc9b9a0534cc93a73a6d3e1.zip
begin sys/user.h and sys/reg.h fixes for ports
aside from microblaze, these should be roughly correct for all archs now. some misc junk macros and typedefs are missing, which should probably be added for max compatibility with trace/debug tools.
Diffstat (limited to 'arch/powerpc/bits/user.h')
-rw-r--r--arch/powerpc/bits/user.h48
1 files changed, 11 insertions, 37 deletions
diff --git a/arch/powerpc/bits/user.h b/arch/powerpc/bits/user.h
index c533fd8d..248012f0 100644
--- a/arch/powerpc/bits/user.h
+++ b/arch/powerpc/bits/user.h
@@ -1,40 +1,14 @@
-struct user_fpregs_struct
-{
- struct fp_reg {
- unsigned sign1:1;
- unsigned unused:15;
- unsigned sign2:1;
- unsigned exponent:14;
- unsigned j:1;
- unsigned mantissa1:31;
- unsigned mantissa0:32;
- } fpregs[8];
- unsigned fpsr:32;
- unsigned fpcr:32;
- unsigned char ftype[8];
- unsigned int init_flag;
+struct pt_regs {
+ unsigned long gpr[32], nip, msr, orig_gpr3, ctr, link, xer, ccr, mq;
+ unsigned long trap, dar, dsisr, result;
};
-struct user_regs_struct
-{
- unsigned long uregs[18];
-};
-
-struct user
-{
- struct user_regs_struct regs;
- int u_fpvalid;
- unsigned long u_tsize;
- unsigned long u_dsize;
- unsigned long u_ssize;
- unsigned long start_code;
- unsigned long start_stack;
- long signal;
- int reserved;
- struct user_regs_struct *u_ar0;
- unsigned long int magic;
- char u_comm[32];
- int u_debugreg[8];
- struct user_fpregs_struct u_fp;
- struct user_fpregs_struct *u_fp0;
+struct user {
+ struct pt_regs regs;
+ unsigned long u_tsize, u_dsize, u_ssize;
+ unsigned long start_code, start_data, start_stack;
+ long signal;
+ void *u_ar0;
+ unsigned long magic;
+ char u_comm[32];
};