fix x86_64 user.h (previously was just a copy of i386)
authorRich Felker <dalias@aerifal.cx>
Thu, 22 Sep 2011 19:36:25 +0000 (15:36 -0400)
committerRich Felker <dalias@aerifal.cx>
Thu, 22 Sep 2011 19:36:25 +0000 (15:36 -0400)
arch/x86_64/bits/user.h

index ca2dae831ecc7b28861fc6d17c1f32b9185b9cf7..384f18ec34962ccb16296e228a844472c5df1a39 100644 (file)
@@ -3,52 +3,17 @@
 
 struct user_fpregs_struct
 {
-       long int cwd;
-       long int swd;
-       long int twd;
-       long int fip;
-       long int fcs;
-       long int foo;
-       long int fos;
-       long int st_space[20];
-};
-
-struct user_fpxregs_struct
-{
-       unsigned short int cwd;
-       unsigned short int swd;
-       unsigned short int twd;
-       unsigned short int fop;
-       long int fip;
-       long int fcs;
-       long int foo;
-       long int fos;
-       long int mxcsr;
-       long int reserved;
-       long int st_space[32];
-       long int xmm_space[32];
-       long int padding[56];
+       uint16_t cwd, swd, ftw, fop;
+       uint64_t rip, rdp;
+       uint32_t mxcsr, mxcs_mask;
+       uint32_t st_space[32], xmm_space[64], padding[24];
 };
 
 struct user_regs_struct
 {
-       long int ebx;
-       long int ecx;
-       long int edx;
-       long int esi;
-       long int edi;
-       long int ebp;
-       long int eax;
-       long int xds;
-       long int xes;
-       long int xfs;
-       long int xgs;
-       long int orig_eax;
-       long int eip;
-       long int xcs;
-       long int eflags;
-       long int esp;
-       long int xss;
+       unsigned long r15, r14, r13, r12, rbp, rbx, r11, r10, r9, r8;
+       unsigned long rax, rcx, rdx, rsi, rdi, orig_rax, rip;
+       unsigned long cs, eflags, rsp, ss, fs_base, gs_base, ds, es, fs, gs;
 };
 
 struct user
@@ -56,18 +21,18 @@ struct user
        struct user_regs_struct         regs;
        int                             u_fpvalid;
        struct user_fpregs_struct       i387;
-       unsigned long int               u_tsize;
-       unsigned long int               u_dsize;
-       unsigned long int               u_ssize;
+       unsigned long                   u_tsize;
+       unsigned long                   u_dsize;
+       unsigned long                   u_ssize;
        unsigned long                   start_code;
        unsigned long                   start_stack;
-       long int                        signal;
+       long                            signal;
        int                             reserved;
        struct user_regs_struct         *u_ar0;
        struct user_fpregs_struct       *u_fpstate;
-       unsigned long int               magic;
+       unsigned long                   magic;
        char                            u_comm[32];
-       int                             u_debugreg[8];
+       unsigned long                   u_debugreg[8];
 };
 
 #define PAGE_MASK              (~(PAGE_SIZE-1))