This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch, master, updated. glibc-2.15-935-g76cf3e4
- From: hjl at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 16 May 2012 20:02:45 -0000
- Subject: GNU C Library master sources branch, master, updated. glibc-2.15-935-g76cf3e4
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 76cf3e4d0119dda0a163766f4045fdfd487c467d (commit)
via a637753a56c194a410ea173b635293d555f04b4e (commit)
via d5e051198503e74256b72fee7b93e681f1de6b57 (commit)
via f62ee380a1007441e4600f837b9a40ec8c43ba2d (commit)
from 953ca31a0c03921b390b6f7358edd34ce580d0df (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=76cf3e4d0119dda0a163766f4045fdfd487c467d
commit 76cf3e4d0119dda0a163766f4045fdfd487c467d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed May 16 13:02:28 2012 -0700
Add x86_64/bits/ipctypes.h
diff --git a/ChangeLog b/ChangeLog
index 774969a..f230da3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
+ * sysdeps/unix/sysv/linux/x86_64/bits/ipctypes.h: New file.
+
+2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
+
* sysdeps/unix/sysv/linux/bits/ipc.h (ipc_perm): Use
__syscall_ulong_t.
diff --git a/sysdeps/unix/sysv/linux/x86_64/bits/ipctypes.h b/sysdeps/unix/sysv/linux/x86_64/bits/ipctypes.h
new file mode 100644
index 0000000..7c242ad
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/x86_64/bits/ipctypes.h
@@ -0,0 +1,33 @@
+/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM.
+ Copyright (C) 2012 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef _SYS_IPC_H
+# error "Never use <bits/ipctypes.h> directly; include <sys/ipc.h> instead."
+#endif
+
+#ifndef _BITS_IPCTYPES_H
+#define _BITS_IPCTYPES_H 1
+
+/* Used in `struct shmid_ds'. */
+# ifdef __x86_64__
+typedef int __ipc_pid_t;
+# else
+typedef unsigned short int __ipc_pid_t;
+# endif
+
+#endif /* bits/ipctypes.h */
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=a637753a56c194a410ea173b635293d555f04b4e
commit a637753a56c194a410ea173b635293d555f04b4e
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed May 16 13:01:32 2012 -0700
Use __syscall_ulong_t in bits/ipc.h
diff --git a/ChangeLog b/ChangeLog
index 738be2d..774969a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
+ * sysdeps/unix/sysv/linux/bits/ipc.h (ipc_perm): Use
+ __syscall_ulong_t.
+
+2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
+
* sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: Don't
include <bits/wordsize.h>. Check __x86_64__ instead of
__WORDSIZE.
diff --git a/sysdeps/unix/sysv/linux/bits/ipc.h b/sysdeps/unix/sysv/linux/bits/ipc.h
index 3bd5f1b..f1d5d37 100644
--- a/sysdeps/unix/sysv/linux/bits/ipc.h
+++ b/sysdeps/unix/sysv/linux/bits/ipc.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1995-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -50,6 +50,6 @@ struct ipc_perm
unsigned short int __pad1;
unsigned short int __seq; /* Sequence number. */
unsigned short int __pad2;
- unsigned long int __unused1;
- unsigned long int __unused2;
+ __syscall_ulong_t __unused1;
+ __syscall_ulong_t __unused2;
};
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=d5e051198503e74256b72fee7b93e681f1de6b57
commit d5e051198503e74256b72fee7b93e681f1de6b57
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed May 16 12:52:45 2012 -0700
Add x32 support to sys/ucontext.h
diff --git a/ChangeLog b/ChangeLog
index 8d4506a..738be2d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
+ * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: Don't
+ include <bits/wordsize.h>. Check __x86_64__ instead of
+ __WORDSIZE.
+ (greg_t): Use "__extension__ long long int" if __x86_64__ is
+ defined.
+ (mcontext_t): Replace "unsigned long" with "unsigned long long".
+
+2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
+
* sysdeps/unix/sysv/linux/x86_64/sys/user.h: Don't
include <bits/wordsize.h>. Check __x86_64__ instead of
__WORDSIZE.
diff --git a/sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h b/sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h
index a397620..7a3938c 100644
--- a/sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h
+++ b/sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -20,16 +20,15 @@
#include <features.h>
#include <signal.h>
-#include <bits/wordsize.h>
/* We need the signal context definitions even if they are not used
included in <signal.h>. */
#include <bits/sigcontext.h>
-#if __WORDSIZE == 64
+#ifdef __x86_64__
/* Type for general register. */
-typedef long int greg_t;
+__extension__ typedef long long int greg_t;
/* Number of general registers. */
#define NGREG 23
@@ -127,7 +126,7 @@ typedef struct
gregset_t gregs;
/* Note that fpregs is a pointer. */
fpregset_t fpregs;
- unsigned long __reserved1 [8];
+ __extension__ unsigned long long __reserved1 [8];
} mcontext_t;
/* Userlevel context. */
@@ -141,7 +140,7 @@ typedef struct ucontext
struct _libc_fpstate __fpregs_mem;
} ucontext_t;
-#else /* __WORDSIZE == 32 */
+#else /* !__x86_64__ */
/* Type for general register. */
typedef int greg_t;
@@ -242,6 +241,6 @@ typedef struct ucontext
struct _libc_fpstate __fpregs_mem;
} ucontext_t;
-#endif /* __WORDSIZE == 32 */
+#endif /* !__x86_64__ */
#endif /* sys/ucontext.h */
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=f62ee380a1007441e4600f837b9a40ec8c43ba2d
commit f62ee380a1007441e4600f837b9a40ec8c43ba2d
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed May 16 12:17:31 2012 -0700
Add x32 support to <sys/user.h>
diff --git a/ChangeLog b/ChangeLog
index c2f32c0..8d4506a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
+
+ * sysdeps/unix/sysv/linux/x86_64/sys/user.h: Don't
+ include <bits/wordsize.h>. Check __x86_64__ instead of
+ __WORDSIZE.
+ (user_regs_struct): Use "__extension__ unsigned long long"
+ instead of "unsigned long" if __x86_64__ is defined.
+ (user): Likewise. Pad after pointer field if __ILP32__ is
+ defined.
+
2012-05-16 Joseph Myers <joseph@codesourcery.com>
* configure.in (makeinfo): Require version 4.5 or later. Allow
diff --git a/sysdeps/unix/sysv/linux/x86_64/sys/user.h b/sysdeps/unix/sysv/linux/x86_64/sys/user.h
index 3cecfa8..46bf6ef 100644
--- a/sysdeps/unix/sysv/linux/x86_64/sys/user.h
+++ b/sysdeps/unix/sysv/linux/x86_64/sys/user.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001, 2002, 2004, 2011 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -22,9 +22,7 @@
too much into it. Don't use it for anything other than GDB unless
you know what you are doing. */
-#include <bits/wordsize.h>
-
-#if __WORDSIZE == 64
+#ifdef __x86_64__
struct user_fpregs_struct
{
@@ -32,8 +30,8 @@ struct user_fpregs_struct
unsigned short int swd;
unsigned short int ftw;
unsigned short int fop;
- unsigned long int rip;
- unsigned long int rdp;
+ __extension__ unsigned long long int rip;
+ __extension__ unsigned long long int rdp;
unsigned int mxcsr;
unsigned int mxcr_mask;
unsigned int st_space[32]; /* 8*16 bytes for each FP-reg = 128 bytes */
@@ -43,33 +41,33 @@ struct user_fpregs_struct
struct user_regs_struct
{
- unsigned long int r15;
- unsigned long int r14;
- unsigned long int r13;
- unsigned long int r12;
- unsigned long int rbp;
- unsigned long int rbx;
- unsigned long int r11;
- unsigned long int r10;
- unsigned long int r9;
- unsigned long int r8;
- unsigned long int rax;
- unsigned long int rcx;
- unsigned long int rdx;
- unsigned long int rsi;
- unsigned long int rdi;
- unsigned long int orig_rax;
- unsigned long int rip;
- unsigned long int cs;
- unsigned long int eflags;
- unsigned long int rsp;
- unsigned long int ss;
- unsigned long int fs_base;
- unsigned long int gs_base;
- unsigned long int ds;
- unsigned long int es;
- unsigned long int fs;
- unsigned long int gs;
+ __extension__ unsigned long long int r15;
+ __extension__ unsigned long long int r14;
+ __extension__ unsigned long long int r13;
+ __extension__ unsigned long long int r12;
+ __extension__ unsigned long long int rbp;
+ __extension__ unsigned long long int rbx;
+ __extension__ unsigned long long int r11;
+ __extension__ unsigned long long int r10;
+ __extension__ unsigned long long int r9;
+ __extension__ unsigned long long int r8;
+ __extension__ unsigned long long int rax;
+ __extension__ unsigned long long int rcx;
+ __extension__ unsigned long long int rdx;
+ __extension__ unsigned long long int rsi;
+ __extension__ unsigned long long int rdi;
+ __extension__ unsigned long long int orig_rax;
+ __extension__ unsigned long long int rip;
+ __extension__ unsigned long long int cs;
+ __extension__ unsigned long long int eflags;
+ __extension__ unsigned long long int rsp;
+ __extension__ unsigned long long int ss;
+ __extension__ unsigned long long int fs_base;
+ __extension__ unsigned long long int gs_base;
+ __extension__ unsigned long long int ds;
+ __extension__ unsigned long long int es;
+ __extension__ unsigned long long int fs;
+ __extension__ unsigned long long int gs;
};
struct user
@@ -77,18 +75,24 @@ 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 int start_code;
- unsigned long int start_stack;
- long int signal;
+ __extension__ unsigned long long int u_tsize;
+ __extension__ unsigned long long int u_dsize;
+ __extension__ unsigned long long int u_ssize;
+ __extension__ unsigned long long int start_code;
+ __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;
- unsigned long int magic;
+# ifdef __ILP32__
+ unsigned int pad1;
+# endif
+ __extension__ unsigned long long int magic;
char u_comm [32];
- unsigned long int u_debugreg [8];
+ __extension__ unsigned long long int u_debugreg [8];
};
#else
@@ -161,7 +165,7 @@ struct user
char u_comm [32];
int u_debugreg [8];
};
-#endif /* __WORDSIZE */
+#endif /* __x86_64__ */
#define PAGE_SHIFT 12
#define PAGE_SIZE (1UL << PAGE_SHIFT)
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 28 ++++++
sysdeps/unix/sysv/linux/bits/ipc.h | 6 +-
.../unix/sysv/linux/x86_64/bits}/ipctypes.h | 19 ++---
sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h | 13 ++--
sysdeps/unix/sysv/linux/x86_64/sys/user.h | 88 ++++++++++---------
5 files changed, 91 insertions(+), 63 deletions(-)
copy {bits => sysdeps/unix/sysv/linux/x86_64/bits}/ipctypes.h (84%)
hooks/post-receive
--
GNU C Library master sources