Use anonymous union in x86_64/sys/user.h
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 18 May 2012 11:07:51 +0000 (04:07 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 18 May 2012 11:07:51 +0000 (04:07 -0700)
ChangeLog
sysdeps/unix/sysv/linux/x86_64/sys/user.h

index b0ffe61..0bbbe44 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-05-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * sysdeps/unix/sysv/linux/x86_64/sys/user.h (user): Use
+       anonymous union.
+
 2012-05-18  Andreas Schwab  <schwab@linux-m68k.org>
 
        * sysdeps/powerpc/powerpc32/dl-start.S (_dl_start_user): Use
index 46bf6ef..9db2937 100644 (file)
@@ -82,14 +82,16 @@ struct user
   __extension__ unsigned long long int start_stack;
   __extension__ long long int          signal;
   int                          reserved;
-  struct user_regs_struct*     u_ar0;
-# ifdef __ILP32__
-  unsigned int                 pad0;
-# endif
-  struct user_fpregs_struct*   u_fpstate;
-# ifdef __ILP32__
-  unsigned int                 pad1;
-# endif
+  __extension__ union
+    {
+      struct user_regs_struct* u_ar0;
+      __extension__ unsigned long long int     __u_ar0_word;
+    };
+  __extension__ union
+    {
+      struct user_fpregs_struct*       u_fpstate;
+      __extension__ unsigned long long int     __u_fpstate_word;
+    };
   __extension__ unsigned long long int magic;
   char                         u_comm [32];
   __extension__ unsigned long long int u_debugreg [8];