[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commits] r18865 - in /fsf/trunk/libc: ./ debug/ elf/ include/ math/ stdio-common/ string/ sysdeps/generic/ sysdeps/gnu/ sysdeps/power...



Author: eglibc
Date: Fri Jun  1 00:02:04 2012
New Revision: 18865

Log:
Import glibc-mainline for 2012-06-01

Added:
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/a.out.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/environments.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/epoll.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/fcntl.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/ipctypes.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/mman.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/msq.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/sem.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/shm.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/stat.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/sysctl.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/sys/
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/sys/procfs.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/sys/ucontext.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/sys/user.h
Removed:
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/a.out.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/environments.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/fcntl.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/mman.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/procfs.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/ucontext.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/user.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/a.out.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/environments.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/epoll.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/ipctypes.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/mman.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/msq.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/sem.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/shm.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/stat.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/sysctl.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sys/procfs.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sys/user.h
Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/debug/Makefile
    fsf/trunk/libc/elf/dl-minimal.c
    fsf/trunk/libc/elf/dl-reloc.c
    fsf/trunk/libc/include/signal.h
    fsf/trunk/libc/math/math.h
    fsf/trunk/libc/stdio-common/_itoa.c
    fsf/trunk/libc/stdio-common/itoa-digits.c
    fsf/trunk/libc/stdio-common/itoa-udigits.c
    fsf/trunk/libc/stdio-common/psiginfo.c
    fsf/trunk/libc/stdio-common/psignal.c
    fsf/trunk/libc/string/strsignal.c
    fsf/trunk/libc/sysdeps/generic/_itoa.h
    fsf/trunk/libc/sysdeps/gnu/siglist.c
    fsf/trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps
    fsf/trunk/libc/sysdeps/sparc/fpu/libm-test-ulps
    fsf/trunk/libc/sysdeps/sparc/sparc64/memcpy.S
    fsf/trunk/libc/sysdeps/sparc/sparc64/memset.S
    fsf/trunk/libc/sysdeps/sparc/sparc64/multiarch/memcpy-niagara2.S
    fsf/trunk/libc/sysdeps/unix/sysv/linux/Makefile
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/elf.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/vm86.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sys/io.h
    fsf/trunk/libc/wcsmbs/Makefile

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Fri Jun  1 00:02:04 2012
@@ -1,3 +1,142 @@
+2012-05-31  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	[BZ #14117]
+	* sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/bits/stat.h: This.
+
+	* sysdeps/unix/sysv/linux/x86_64/bits/stat.h (_STAT_VER_KERNEL):
+	Defined to 1 if __x86_64__ isn't defined.
+	(_STAT_VER_LINUX_OLD): New.
+	(st_atime): Remove duplicate.
+	(st_mtime): Likewise.
+	(st_ctime): Likewise.
+
+2012-05-31  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/sparc/fpu/libm-test-ulps: Remove sqrt(2) and sqrt test
+	entries.
+
+2012-06-01  Andreas Schwab  <schwab@xxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/fpu/libm-test-ulps: Sort through
+	gen-libm-test.pl.
+
+	[BZ #14132]
+	* elf/dl-reloc.c: Include <_itoa.h>.
+	(_dl_reloc_bad_type): Remove use of INTUSE.
+	* elf/dl-minimal.c (_itoa, _itoa_lower_digits): Likewise.
+	* stdio-common/_itoa.c (_itoa_word, _itoa): Likewise.
+	* stdio-common/psiginfo.c (psiginfo): Likewise.
+	* stdio-common/psignal.c (psignal): Likewise.
+	* string/strsignal.c (strsignal): Likewise.
+	* include/signal.h (_sys_siglist): Declare hidden proto.
+	* stdio-common/itoa-digits.c: Include <_itoa.h>.  Replace
+	INTVARDEF with libc_hidden_data_def.
+	* stdio-common/itoa-udigits.c: Likewise.
+	* sysdeps/generic/_itoa.h (_itoa_upper_digits_internal)
+	(_itoa_lower_digits_internal): Remove declaration.
+	(_itoa_upper_digits, _itoa_lower_digits): Declare hidden proto.
+	* sysdeps/gnu/siglist.c (_sys_siglist_internal)
+	(_sys_sigabbrev_internal): Remove aliases.
+	(_sys_siglist): Define hidden alias.
+
+2012-05-31  Markus Trippelsdorf  <markus@xxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
+	bits/sysctl.h.
+
+2012-05-31  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	[BZ #14117]
+	* sysdeps/unix/sysv/linux/x86_64/bits/sysctl.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/bits/sysctl.h: This.
+
+	* sysdeps/unix/sysv/linux/i386/sys/ucontext.h: Removed.
+	* sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/sys/ucontext.h: This.
+	* sysdeps/unix/sysv/linux/i386/sys/user.h: Removed.
+	* sysdeps/unix/sysv/linux/x86_64/sys/user.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/sys/user.h: This.
+
+	* sysdeps/unix/sysv/linux/i386/sys/procfs.h: Removed.
+	* sysdeps/unix/sysv/linux/x86_64/sys/procfs.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/sys/procfs.h: This.
+
+	* sysdeps/unix/sysv/linux/x86_64/sys/io.h (insb): Replace addr
+	with __addr.
+	(insw): Likewise.
+	(insl): Likewise.
+	(outsb): Likewise.
+	(outsw): Likewise.
+	(outsl): Likewise.
+
+	* sysdeps/unix/sysv/linux/i386/bits/mman.h: Removed.
+	* sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/bits/mman.h: This.
+
+	* sysdeps/unix/sysv/linux/x86_64/bits/msq.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/bits/msq.h: This.
+	* sysdeps/unix/sysv/linux/x86_64/bits/sem.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/bits/sem.h: This.
+	* sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/bits/shm.h: This.
+
+	* sysdeps/unix/sysv/linux/x86_64/bits/ipctypes.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/bits/ipctypes.h: This.
+
+	* sysdeps/unix/sysv/linux/x86_64/bits/epoll.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/bits/epoll.h: This.
+
+	* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Removed.
+	* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/bits/fcntl.h: This.
+
+	* sysdeps/unix/sysv/linux/i386/bits/environments.h: Removed.
+	* sysdeps/unix/sysv/linux/x86_64/bits/environments.h: Renamed
+	to ...
+	* sysdeps/unix/sysv/linux/x86/bits/environments.h: This.
+
+	* sysdeps/unix/sysv/linux/i386/bits/a.out.h: Removed.
+	* sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: Renamed to ...
+	* sysdeps/unix/sysv/linux/x86/bits/a.out.h: This.
+
+	* sysdeps/unix/sysv/linux/i386/sys/elf.h: Error when compiling
+	for x86-64.
+	* sysdeps/unix/sysv/linux/i386/sys/vm86.h: Likewise.
+
+2012-05-31  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* math/math.h (M_El): Use two more decimal places.
+	(M_LOG2El): Likewise.
+	(M_LOG10El): Likewise.
+	(M_LN2l): Likewise.
+	(M_LN10l): Likewise.
+	(M_PIl): Likewise.
+	(M_PI_2l): Likewise.
+	(M_PI_4l): Likewise.
+	(M_1_PIl): Likewise.
+	(M_2_PIl): Likewise.
+	(M_2_SQRTPIl): Likewise.
+	(M_SQRT2l): Likewise.
+	(M_SQRT1_2l): Likewise.
+
+2012-05-31  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/sparc/sparc64/memcpy.S: Use fsrc2 to move 64-bit
+	values between float registers.
+	* sysdeps/sparc/sparc64/memset.S: Likewise.
+	* sysdeps/sparc/sparc64/multiarch/memcpy-niagara2.S: Likewise.
+
+2012-05-31  Mike Frysinger  <vapier@xxxxxxxxxx>
+
+	* debug/Makefile (CFLAGS-tst-longjmp_chk.c): Delete
+	-D_FORTIFY_SOURCE=1.
+	(CPPFLAGS-tst-longjmp_chk.c): Define.
+	(CFLAGS-tst-longjmp_chk2.c): Delete -D_FORTIFY_SOURCE=1.
+	(CPPFLAGS-tst-longjmp_chk2.c): Define.
+	* wcsmbs/Makefile (CPPFLAGS-tst-wchar-h.c): Rename from
+	CFLAGS-tst-wchar-h.c.
+
 2012-05-31  Marek Polacek  <polacek@xxxxxxxxxx>
 
 	[BZ #14132]

Modified: fsf/trunk/libc/debug/Makefile
==============================================================================
--- fsf/trunk/libc/debug/Makefile (original)
+++ fsf/trunk/libc/debug/Makefile Fri Jun  1 00:02:04 2012
@@ -79,10 +79,14 @@
 CFLAGS-pread64_chk.c = -fexceptions -fasynchronous-unwind-tables
 CFLAGS-recv_chk.c = -fexceptions -fasynchronous-unwind-tables
 CFLAGS-recvfrom_chk.c = -fexceptions -fasynchronous-unwind-tables
-CFLAGS-tst-longjmp_chk.c = -fexceptions -fasynchronous-unwind-tables \
-			   -D_FORTIFY_SOURCE=1
-CFLAGS-tst-longjmp_chk2.c = -fexceptions -fasynchronous-unwind-tables \
-			    -D_FORTIFY_SOURCE=1
+
+# Need to make sure the settings here override what configure might have
+# set up for us, so keep the CFLAGS/CPPFLAGS split logical as the order is:
+# <user CFLAGS> <test CFLAGS> <user CPPFLAGS> <test CPPFLAGS>
+CFLAGS-tst-longjmp_chk.c = -fexceptions -fasynchronous-unwind-tables
+CPPFLAGS-tst-longjmp_chk.c = -D_FORTIFY_SOURCE=1
+CFLAGS-tst-longjmp_chk2.c = -fexceptions -fasynchronous-unwind-tables
+CPPFLAGS-tst-longjmp_chk2.c = -D_FORTIFY_SOURCE=1
 
 # We know these tests have problems with format strings, this is what
 # we are testing.  Disable that warning.

Modified: fsf/trunk/libc/elf/dl-minimal.c
==============================================================================
--- fsf/trunk/libc/elf/dl-minimal.c (original)
+++ fsf/trunk/libc/elf/dl-minimal.c Fri Jun  1 00:02:04 2012
@@ -315,12 +315,10 @@
      unsigned int base;
      int upper_case;
 {
-  extern const char INTUSE(_itoa_lower_digits)[] attribute_hidden;
-
   assert (! upper_case);
 
   do
-    *--buflim = INTUSE(_itoa_lower_digits)[value % base];
+    *--buflim = _itoa_lower_digits[value % base];
   while ((value /= base) != 0);
 
   return buflim;
@@ -380,5 +378,5 @@
 
 /* The '_itoa_lower_digits' variable in libc.so is able to handle bases
    up to 36.  We don't need this here.  */
-const char INTUSE(_itoa_lower_digits)[16] attribute_hidden
-  = "0123456789abcdef";
+const char _itoa_lower_digits[16] = "0123456789abcdef";
+rtld_hidden_data_def (_itoa_lower_digits)

Modified: fsf/trunk/libc/elf/dl-reloc.c
==============================================================================
--- fsf/trunk/libc/elf/dl-reloc.c (original)
+++ fsf/trunk/libc/elf/dl-reloc.c Fri Jun  1 00:02:04 2012
@@ -1,5 +1,5 @@
 /* Relocate a shared object and resolve its references to other loaded objects.
-   Copyright (C) 1995-2006, 2008-2010, 2011 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
@@ -24,6 +24,7 @@
 #include <sys/mman.h>
 #include <sys/param.h>
 #include <sys/types.h>
+#include <_itoa.h>
 #include "dynamic-link.h"
 
 /* Statistics function.  */
@@ -338,8 +339,7 @@
 internal_function __attribute_noinline__
 _dl_reloc_bad_type (struct link_map *map, unsigned int type, int plt)
 {
-  extern const char INTUSE(_itoa_lower_digits)[] attribute_hidden;
-#define DIGIT(b)	INTUSE(_itoa_lower_digits)[(b) & 0xf];
+#define DIGIT(b)	_itoa_lower_digits[(b) & 0xf];
 
   /* XXX We cannot translate these messages.  */
   static const char msg[2][32

Modified: fsf/trunk/libc/include/signal.h
==============================================================================
--- fsf/trunk/libc/include/signal.h (original)
+++ fsf/trunk/libc/include/signal.h Fri Jun  1 00:02:04 2012
@@ -14,6 +14,7 @@
 libc_hidden_proto (raise)
 libc_hidden_proto (__libc_current_sigrtmin)
 libc_hidden_proto (__libc_current_sigrtmax)
+libc_hidden_proto (_sys_siglist)
 
 /* Now define the internal interfaces.  */
 extern __sighandler_t __bsd_signal (int __sig, __sighandler_t __handler);

Modified: fsf/trunk/libc/math/math.h
==============================================================================
--- fsf/trunk/libc/math/math.h (original)
+++ fsf/trunk/libc/math/math.h Fri Jun  1 00:02:04 2012
@@ -365,19 +365,19 @@
    Therefore we provide as an extension constants with similar names as a
    GNU extension.  Provide enough digits for the 128-bit IEEE quad.  */
 #ifdef __USE_GNU
-# define M_El		2.7182818284590452353602874713526625L  /* e */
-# define M_LOG2El	1.4426950408889634073599246810018921L  /* log_2 e */
-# define M_LOG10El	0.4342944819032518276511289189166051L  /* log_10 e */
-# define M_LN2l		0.6931471805599453094172321214581766L  /* log_e 2 */
-# define M_LN10l	2.3025850929940456840179914546843642L  /* log_e 10 */
-# define M_PIl		3.1415926535897932384626433832795029L  /* pi */
-# define M_PI_2l	1.5707963267948966192313216916397514L  /* pi/2 */
-# define M_PI_4l	0.7853981633974483096156608458198757L  /* pi/4 */
-# define M_1_PIl	0.3183098861837906715377675267450287L  /* 1/pi */
-# define M_2_PIl	0.6366197723675813430755350534900574L  /* 2/pi */
-# define M_2_SQRTPIl	1.1283791670955125738961589031215452L  /* 2/sqrt(pi) */
-# define M_SQRT2l	1.4142135623730950488016887242096981L  /* sqrt(2) */
-# define M_SQRT1_2l	0.7071067811865475244008443621048490L  /* 1/sqrt(2) */
+# define M_El		2.718281828459045235360287471352662498L /* e */
+# define M_LOG2El	1.442695040888963407359924681001892137L /* log_2 e */
+# define M_LOG10El	0.434294481903251827651128918916605082L /* log_10 e */
+# define M_LN2l		0.693147180559945309417232121458176568L /* log_e 2 */
+# define M_LN10l	2.302585092994045684017991454684364208L /* log_e 10 */
+# define M_PIl		3.141592653589793238462643383279502884L /* pi */
+# define M_PI_2l	1.570796326794896619231321691639751442L /* pi/2 */
+# define M_PI_4l	0.785398163397448309615660845819875721L /* pi/4 */
+# define M_1_PIl	0.318309886183790671537767526745028724L /* 1/pi */
+# define M_2_PIl	0.636619772367581343075535053490057448L /* 2/pi */
+# define M_2_SQRTPIl	1.128379167095512573896158903121545172L /* 2/sqrt(pi) */
+# define M_SQRT2l	1.414213562373095048801688724209698079L /* sqrt(2) */
+# define M_SQRT1_2l	0.707106781186547524400844362104849039L /* 1/sqrt(2) */
 #endif
 
 

Modified: fsf/trunk/libc/stdio-common/_itoa.c
==============================================================================
--- fsf/trunk/libc/stdio-common/_itoa.c (original)
+++ fsf/trunk/libc/stdio-common/_itoa.c Fri Jun  1 00:02:04 2012
@@ -1,6 +1,5 @@
 /* Internal function for converting integers to ASCII.
-   Copyright (C) 1994, 1995, 1996, 1999, 2000, 2002, 2003, 2004, 2007
-   Free Software Foundation, Inc.
+   Copyright (C) 1994-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Torbjorn Granlund <tege@xxxxxxxxxxxxxxx>
    and Ulrich Drepper <drepper@xxxxxxx>.
@@ -160,27 +159,13 @@
 };
 #endif
 
-/* Lower-case digits.  */
-extern const char _itoa_lower_digits[];
-extern const char _itoa_lower_digits_internal[] attribute_hidden;
-/* Upper-case digits.  */
-extern const char _itoa_upper_digits[];
-extern const char _itoa_upper_digits_internal[] attribute_hidden;
-
-
 char *
 _itoa_word (_ITOA_WORD_TYPE value, char *buflim,
 	    unsigned int base, int upper_case)
 {
   const char *digits = (upper_case
-#if !defined NOT_IN_libc || defined IS_IN_rtld
-			? INTUSE(_itoa_upper_digits)
-			: INTUSE(_itoa_lower_digits)
-#else
 			? _itoa_upper_digits
-			: _itoa_lower_digits
-#endif
-		       );
+			: _itoa_lower_digits);
 
   switch (base)
     {
@@ -213,8 +198,8 @@
      int upper_case;
 {
   const char *digits = (upper_case
-			? INTUSE(_itoa_upper_digits)
-			: INTUSE(_itoa_lower_digits));
+			? _itoa_upper_digits
+			: _itoa_lower_digits);
   const struct base_table_t *brec = &_itoa_base_table[base - 2];
 
   switch (base)

Modified: fsf/trunk/libc/stdio-common/itoa-digits.c
==============================================================================
--- fsf/trunk/libc/stdio-common/itoa-digits.c (original)
+++ fsf/trunk/libc/stdio-common/itoa-digits.c Fri Jun  1 00:02:04 2012
@@ -1,5 +1,5 @@
 /* Digits.
-   Copyright (C) 1994,1995,1996,1999,2000,2002 Free Software Foundation, Inc.
+   Copyright (C) 1994-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
@@ -16,7 +16,9 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <_itoa.h>
+
 /* Lower-case digits.  */
 const char _itoa_lower_digits[36]
 	= "0123456789abcdefghijklmnopqrstuvwxyz";
-INTVARDEF(_itoa_lower_digits)
+libc_hidden_data_def (_itoa_lower_digits)

Modified: fsf/trunk/libc/stdio-common/itoa-udigits.c
==============================================================================
--- fsf/trunk/libc/stdio-common/itoa-udigits.c (original)
+++ fsf/trunk/libc/stdio-common/itoa-udigits.c Fri Jun  1 00:02:04 2012
@@ -1,5 +1,5 @@
 /* Digits.
-   Copyright (C) 1994,1995,1996,1999,2000,2002 Free Software Foundation, Inc.
+   Copyright (C) 1994-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
@@ -16,7 +16,9 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <_itoa.h>
+
 /* Upper-case digits.  */
 const char _itoa_upper_digits[36]
 	= "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
-INTVARDEF(_itoa_upper_digits)
+libc_hidden_data_def (_itoa_upper_digits)

Modified: fsf/trunk/libc/stdio-common/psiginfo.c
==============================================================================
--- fsf/trunk/libc/stdio-common/psiginfo.c (original)
+++ fsf/trunk/libc/stdio-common/psiginfo.c Fri Jun  1 00:02:04 2012
@@ -1,4 +1,4 @@
-/* Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+/* Copyright (C) 2009-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
@@ -24,11 +24,6 @@
 #include <string.h>
 #include <unistd.h>
 #include <not-cancel.h>
-
-
-/* Defined in sys_siglist.c.  */
-extern const char *const _sys_siglist[];
-extern const char *const _sys_siglist_internal[] attribute_hidden;
 
 
 #define MF(l) MF1 (l)
@@ -84,7 +79,7 @@
 
   const char *desc;
   if (pinfo->si_signo >= 0 && pinfo->si_signo < NSIG
-      && ((desc = INTUSE(_sys_siglist)[pinfo->si_signo]) != NULL
+      && ((desc = _sys_siglist[pinfo->si_signo]) != NULL
 #ifdef SIGRTMIN
 	  || (pinfo->si_signo >= SIGRTMIN && pinfo->si_signo < SIGRTMAX)
 #endif

Modified: fsf/trunk/libc/stdio-common/psignal.c
==============================================================================
--- fsf/trunk/libc/stdio-common/psignal.c (original)
+++ fsf/trunk/libc/stdio-common/psignal.c Fri Jun  1 00:02:04 2012
@@ -1,5 +1,4 @@
-/* Copyright (C) 1991, 1992, 1995, 1996, 1997, 2001, 2002, 2004, 2005, 2009
-   Free Software Foundation, Inc.
+/* Copyright (C) 1991-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,12 +21,6 @@
 #include <libintl.h>
 #include <wchar.h>
 
-
-/* Defined in sys_siglist.c.  */
-extern const char *const _sys_siglist[];
-extern const char *const _sys_siglist_internal[] attribute_hidden;
-
-
 /* Print out on stderr a line consisting of the test in S, a colon, a space,
    a message describing the meaning of the signal number SIG and a newline.
    If S is NULL or "", the colon and space are omitted.  */
@@ -41,7 +34,7 @@
   else
     colon = ": ";
 
-  if (sig >= 0 && sig < NSIG && (desc = INTUSE(_sys_siglist)[sig]) != NULL)
+  if (sig >= 0 && sig < NSIG && (desc = _sys_siglist[sig]) != NULL)
     (void) __fxprintf (NULL, "%s%s%s\n", s, colon, _(desc));
   else
     {

Modified: fsf/trunk/libc/string/strsignal.c
==============================================================================
--- fsf/trunk/libc/string/strsignal.c (original)
+++ fsf/trunk/libc/string/strsignal.c Fri Jun  1 00:02:04 2012
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1994-2002, 2005 Free Software Foundation, Inc.
+/* Copyright (C) 1991-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,10 +22,6 @@
 #include <libintl.h>
 #include <bits/libc-lock.h>
 
-
-/* Defined in siglist.c.  */
-extern const char *const _sys_siglist[];
-extern const char *const _sys_siglist_internal[] attribute_hidden;
 static __libc_key_t key;
 
 /* If nonzero the key allocation failed and we should better use a
@@ -55,7 +51,7 @@
       (signum >= SIGRTMIN && signum <= SIGRTMAX) ||
 #endif
       signum < 0 || signum >= NSIG
-      || (desc = INTUSE(_sys_siglist)[signum]) == NULL)
+      || (desc = _sys_siglist[signum]) == NULL)
     {
       char *buffer = getbuffer ();
       int len;

Modified: fsf/trunk/libc/sysdeps/generic/_itoa.h
==============================================================================
--- fsf/trunk/libc/sysdeps/generic/_itoa.h (original)
+++ fsf/trunk/libc/sysdeps/generic/_itoa.h Fri Jun  1 00:02:04 2012
@@ -1,5 +1,5 @@
 /* Internal function for converting integers to ASCII.
-   Copyright (C) 1994-1999,2002,2003,2007 Free Software Foundation, Inc.
+   Copyright (C) 1994-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
@@ -45,9 +45,11 @@
 		    unsigned int base, int upper_case);
 
 extern const char _itoa_upper_digits[];
-extern const char _itoa_upper_digits_internal[] attribute_hidden;
 extern const char _itoa_lower_digits[];
-extern const char _itoa_lower_digits_internal[] attribute_hidden;
+#if !defined NOT_IN_libc || defined IS_IN_rtld
+hidden_proto (_itoa_upper_digits)
+hidden_proto (_itoa_lower_digits)
+#endif
 
 #ifndef NOT_IN_libc
 extern char *_itoa_word (_ITOA_WORD_TYPE value, char *buflim,
@@ -58,14 +60,8 @@
 	    unsigned int base, int upper_case)
 {
   const char *digits = (upper_case
-# if defined IS_IN_rtld
-			? INTUSE(_itoa_upper_digits)
-			: INTUSE(_itoa_lower_digits)
-# else
 			? _itoa_upper_digits
-			: _itoa_lower_digits
-# endif
-		       );
+			: _itoa_lower_digits);
 
   switch (base)
     {

Modified: fsf/trunk/libc/sysdeps/gnu/siglist.c
==============================================================================
--- fsf/trunk/libc/sysdeps/gnu/siglist.c (original)
+++ fsf/trunk/libc/sysdeps/gnu/siglist.c Fri Jun  1 00:02:04 2012
@@ -1,5 +1,5 @@
 /* Define list of all signal numbers and their names.
-   Copyright (C) 1997-2000, 2002, 2003, 2006 Free Software Foundation, Inc.
+   Copyright (C) 1997-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
@@ -28,7 +28,7 @@
 #include <siglist.h>
 #undef init_sig
 };
-strong_alias (__new_sys_siglist, _sys_siglist_internal)
+libc_hidden_ver (__new_sys_siglist, _sys_siglist)
 
 const char *const __new_sys_sigabbrev[NSIG] =
 {
@@ -36,7 +36,6 @@
 #include <siglist.h>
 #undef init_sig
 };
-strong_alias (__new_sys_sigabbrev, _sys_sigabbrev_internal)
 
 #if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
 declare_symbol_alias (__old_sys_siglist, __new_sys_siglist, object,

Modified: fsf/trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps (original)
+++ fsf/trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps Fri Jun  1 00:02:04 2012
@@ -1,104 +1,104 @@
 # Begin of automatic generation
 
 # acos
+Test "acos (-0x0.ffffffff8p0) == 3.1415773948007305904329067627145550395696":
+ildouble: 1
+ldouble: 1
+Test "acos (-0x0.ffffffp0) == 3.1412473866050770348750401337968641476999":
+ildouble: 1
+ldouble: 1
 Test "acos (2e-17) == 1.57079632679489659923132169163975144":
 ildouble: 1
 ldouble: 1
-Test "acos (-0x0.ffffffff8p0) == 3.1415773948007305904329067627145550395696":
-ldouble: 1
-ildouble: 1
-Test "acos (-0x0.ffffffp0) == 3.1412473866050770348750401337968641476999":
-ldouble: 1
-ildouble: 1
 
 # acos_downward
 Test "acos_downward (-0) == pi/2":
 float: 1
 ifloat: 1
+Test "acos_downward (-0.5) == M_PI_6l*4.0":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "acos_downward (-1) == pi":
+float: 1
+ifloat: 1
 Test "acos_downward (0) == pi/2":
 float: 1
 ifloat: 1
-Test "acos_downward (-0.5) == M_PI_6l*4.0":
-double: 1
-idouble: 1
-ldouble: 1
-ildouble: 1
 Test "acos_downward (0.5) == M_PI_6l*2.0":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
-ldouble: 1
-ildouble: 1
-Test "acos_downward (-1) == pi":
-float: 1
-ifloat: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
 
 # acos_towardzero
 Test "acos_towardzero (-0) == pi/2":
 float: 1
 ifloat: 1
+Test "acos_towardzero (-0.5) == M_PI_6l*4.0":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "acos_towardzero (-1) == pi":
+float: 1
+ifloat: 1
 Test "acos_towardzero (0) == pi/2":
 float: 1
 ifloat: 1
-Test "acos_towardzero (-0.5) == M_PI_6l*4.0":
-double: 1
-idouble: 1
-ldouble: 1
-ildouble: 1
 Test "acos_towardzero (0.5) == M_PI_6l*2.0":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
-ldouble: 1
-ildouble: 1
-Test "acos_towardzero (-1) == pi":
-float: 1
-ifloat: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
 
 # acos_upward
 Test "acos_upward (-0) == pi/2":
-ldouble: 2
-ildouble: 2
+ildouble: 2
+ldouble: 2
 Test "acos_upward (-1) == pi":
-ldouble: 2
-ildouble: 2
+ildouble: 2
+ldouble: 2
 Test "acos_upward (0) == pi/2":
-ldouble: 2
-ildouble: 2
+ildouble: 2
+ldouble: 2
 
 # asin
 Test "asin (-0x0.ffffffff8p0) == -1.5707810680058339712015850710748035974710":
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 Test "asin (-0x0.ffffffp0) == -1.5704510598101804156437184421571127056013":
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin (0.75) == 0.848062078981481008052944338998418080":
+ildouble: 2
+ldouble: 2
 Test "asin (0x0.ffffffff8p0) == 1.5707810680058339712015850710748035974710":
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 Test "asin (0x0.ffffffp0) == 1.5704510598101804156437184421571127056013":
-ldouble: 1
-ildouble: 1
-Test "asin (0.75) == 0.848062078981481008052944338998418080":
-ildouble: 2
-ldouble: 2
+ildouble: 1
+ldouble: 1
 
 # asin_downward
 Test "asin_downward (-0.5) == -pi/6":
 double: 1
 idouble: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-1.0) == -pi/2":
+ildouble: 1
+ldouble: 1
 Test "asin_downward (0.5) == pi/6":
 double: 1
 idouble: 1
-ldouble: 1
-ildouble: 1
-Test "asin_downward (-1.0) == -pi/2":
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 Test "asin_downward (1.0) == pi/2":
 float: 1
 ifloat: 1
@@ -107,16 +107,16 @@
 Test "asin_towardzero (-0.5) == -pi/6":
 double: 1
 idouble: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_towardzero (-1.0) == -pi/2":
+float: 1
+ifloat: 1
 Test "asin_towardzero (0.5) == pi/6":
 double: 1
 idouble: 1
-ldouble: 1
-ildouble: 1
-Test "asin_towardzero (-1.0) == -pi/2":
-float: 1
-ifloat:1
+ildouble: 1
+ldouble: 1
 Test "asin_towardzero (1.0) == pi/2":
 float: 1
 ifloat: 1
@@ -126,8 +126,8 @@
 float: 1
 ifloat: 1
 Test "asin_upward (1.0) == pi/2":
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 
 # atan2
 Test "atan2 (-0.00756827042671106339, -.001792735857538728036) == -1.80338464113663849327153994379639112":
@@ -607,19 +607,19 @@
 Test "Imaginary part of: ccos (-0.75 + 710.5 i) == 1.347490911916428129246890157395342279438e308 + 1.255317763348154410745082950806112487736e308 i":
 double: 1
 idouble: 1
+Test "Imaginary part of: ccos (-0.75 + 89.5 i) == 2.708024460708609732016532185663087200560e38 + 2.522786001038096774676288412995370563339e38 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: ccos (-0.75 - 710.5 i) == 1.347490911916428129246890157395342279438e308 - 1.255317763348154410745082950806112487736e308 i":
 double: 1
 idouble: 1
-Test "Imaginary part of: ccos (-0.75 + 89.5 i) == 2.708024460708609732016532185663087200560e38 + 2.522786001038096774676288412995370563339e38 i":
-float: 1
-ifloat: 1
-ldouble: 1
-ildouble: 1
 Test "Imaginary part of: ccos (-0.75 - 89.5 i) == 2.708024460708609732016532185663087200560e38 - 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: ccos (-2 - 3 i) == -4.18962569096880723013255501961597373 - 9.10922789375533659797919726277886212 i":
 float: 1
 ifloat: 1
@@ -631,27 +631,33 @@
 Test "Imaginary part of: ccos (0.75 + 1.25 i) == 1.38173873063425888530729933139078645 - 1.09193013555397466170919531722024128 i":
 float: 1
 ifloat: 1
+Test "Imaginary part of: ccos (0.75 + 710.5 i) == 1.347490911916428129246890157395342279438e308 - 1.255317763348154410745082950806112487736e308 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: ccos (0.75 + 89.5 i) == 2.708024460708609732016532185663087200560e38 - 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: ccos (0.75 - 710.5 i) == 1.347490911916428129246890157395342279438e308 + 1.255317763348154410745082950806112487736e308 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: ccos (0.75 - 89.5 i) == 2.708024460708609732016532185663087200560e38 + 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
-Test "Imaginary part of: ccos (0.75 + 710.5 i) == 1.347490911916428129246890157395342279438e308 - 1.255317763348154410745082950806112487736e308 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: ccos (0.75 - 710.5 i) == 1.347490911916428129246890157395342279438e308 + 1.255317763348154410745082950806112487736e308 i":
-double: 1
-idouble: 1
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: ccos (0x1p-1074 + 1440 i) == inf - 5.981479269486130556466515778180916082415e301 i":
 double: 1
 idouble: 1
 
 # ccosh
+Test "Real part of: ccosh (-2 - 3 i) == -3.72454550491532256547397070325597253 + 0.511822569987384608834463849801875634 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: ccosh (-2 - 3 i) == -3.72454550491532256547397070325597253 + 0.511822569987384608834463849801875634 i":
+float: 1
+ifloat: 1
 Test "Imaginary part of: ccosh (-710.5 + 0.75 i) == 1.347490911916428129246890157395342279438e308 - 1.255317763348154410745082950806112487736e308 i":
 double: 1
 idouble: 1
@@ -661,19 +667,13 @@
 Test "Imaginary part of: ccosh (-89.5 + 0.75 i) == 2.708024460708609732016532185663087200560e38 - 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: ccosh (-89.5 - 0.75 i) == 2.708024460708609732016532185663087200560e38 + 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
-Test "Real part of: ccosh (-2 - 3 i) == -3.72454550491532256547397070325597253 + 0.511822569987384608834463849801875634 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: ccosh (-2 - 3 i) == -3.72454550491532256547397070325597253 + 0.511822569987384608834463849801875634 i":
-float: 1
-ifloat: 1
+ildouble: 1
+ldouble: 1
 Test "Real part of: ccosh (0.75 + 1.25 i) == 0.408242591877968807788852146397499084 + 0.780365930845853240391326216300863152 i":
 double: 1
 float: 1
@@ -686,25 +686,25 @@
 ifloat: 1
 ildouble: 2
 ldouble: 2
+Test "Imaginary part of: ccosh (1440 + 0x1p-1074 i) == inf + 5.981479269486130556466515778180916082415e301 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: ccosh (710.5 + 0.75 i) == 1.347490911916428129246890157395342279438e308 + 1.255317763348154410745082950806112487736e308 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: ccosh (710.5 - 0.75 i) == 1.347490911916428129246890157395342279438e308 - 1.255317763348154410745082950806112487736e308 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: ccosh (89.5 + 0.75 i) == 2.708024460708609732016532185663087200560e38 + 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: ccosh (89.5 - 0.75 i) == 2.708024460708609732016532185663087200560e38 - 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
-Test "Imaginary part of: ccosh (710.5 + 0.75 i) == 1.347490911916428129246890157395342279438e308 + 1.255317763348154410745082950806112487736e308 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: ccosh (710.5 - 0.75 i) == 1.347490911916428129246890157395342279438e308 - 1.255317763348154410745082950806112487736e308 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: ccosh (1440 + 0x1p-1074 i) == inf + 5.981479269486130556466515778180916082415e301 i":
-double: 1
-idouble: 1
+ildouble: 1
+ldouble: 1
 
 # cexp
 Test "Imaginary part of: cexp (-2.0 - 3.0 i) == -0.13398091492954261346140525546115575 - 0.019098516261135196432576240858800925 i":
@@ -1169,40 +1169,45 @@
 Test "Real part of: csin (-0.75 + 710.5 i) == -1.255317763348154410745082950806112487736e308 + 1.347490911916428129246890157395342279438e308 i":
 double: 1
 idouble: 1
+Test "Real part of: csin (-0.75 + 89.5 i) == -2.522786001038096774676288412995370563339e38 + 2.708024460708609732016532185663087200560e38 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
 Test "Real part of: csin (-0.75 - 710.5 i) == -1.255317763348154410745082950806112487736e308 - 1.347490911916428129246890157395342279438e308 i":
 double: 1
 idouble: 1
-Test "Real part of: csin (-0.75 + 89.5 i) == -2.522786001038096774676288412995370563339e38 + 2.708024460708609732016532185663087200560e38 i":
-float: 1
-ifloat: 1
-ldouble: 1
-ildouble: 1
 Test "Real part of: csin (-0.75 - 89.5 i) == -2.522786001038096774676288412995370563339e38 - 2.708024460708609732016532185663087200560e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: csin (0.75 + 710.5 i) == 1.255317763348154410745082950806112487736e308 + 1.347490911916428129246890157395342279438e308 i":
+double: 1
+idouble: 1
 Test "Real part of: csin (0.75 + 89.5 i) == 2.522786001038096774676288412995370563339e38 + 2.708024460708609732016532185663087200560e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: csin (0.75 - 710.5 i) == 1.255317763348154410745082950806112487736e308 - 1.347490911916428129246890157395342279438e308 i":
+double: 1
+idouble: 1
 Test "Real part of: csin (0.75 - 89.5 i) == 2.522786001038096774676288412995370563339e38 - 2.708024460708609732016532185663087200560e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
-Test "Real part of: csin (0.75 + 710.5 i) == 1.255317763348154410745082950806112487736e308 + 1.347490911916428129246890157395342279438e308 i":
-double: 1
-idouble: 1
-Test "Real part of: csin (0.75 - 710.5 i) == 1.255317763348154410745082950806112487736e308 - 1.347490911916428129246890157395342279438e308 i":
-double: 1
-idouble: 1
+ildouble: 1
+ldouble: 1
 Test "Real part of: csin (0x1p-1074 + 1440 i) == 5.981479269486130556466515778180916082415e301 + inf i":
 double: 1
 idouble: 1
 
 # csinh
+Test "Imaginary part of: csinh (-2 - 3 i) == 3.59056458998577995201256544779481679 - 0.530921086248519805267040090660676560 i":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: csinh (-710.5 + 0.75 i) == -1.347490911916428129246890157395342279438e308 + 1.255317763348154410745082950806112487736e308 i":
 double: 1
 idouble: 1
@@ -1212,16 +1217,11 @@
 Test "Imaginary part of: csinh (-89.5 + 0.75 i) == -2.708024460708609732016532185663087200560e38 + 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: csinh (-89.5 - 0.75 i) == -2.708024460708609732016532185663087200560e38 - 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
-Test "Imaginary part of: csinh (-2 - 3 i) == 3.59056458998577995201256544779481679 - 0.530921086248519805267040090660676560 i":
-double: 1
-idouble: 1
 ildouble: 1
 ldouble: 1
 Test "Real part of: csinh (0.75 + 1.25 i) == 0.259294854551162779153349830618433028 + 1.22863452409509552219214606515777594 i":
@@ -1234,26 +1234,25 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
-float: 1
+Test "Imaginary part of: csinh (1440 + 0x1p-1074 i) == inf + 5.981479269486130556466515778180916082415e301 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: csinh (710.5 + 0.75 i) == 1.347490911916428129246890157395342279438e308 + 1.255317763348154410745082950806112487736e308 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: csinh (710.5 - 0.75 i) == 1.347490911916428129246890157395342279438e308 - 1.255317763348154410745082950806112487736e308 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: csinh (89.5 + 0.75 i) == 2.708024460708609732016532185663087200560e38 + 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: csinh (89.5 - 0.75 i) == 2.708024460708609732016532185663087200560e38 - 2.522786001038096774676288412995370563339e38 i":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
-Test "Imaginary part of: csinh (710.5 + 0.75 i) == 1.347490911916428129246890157395342279438e308 + 1.255317763348154410745082950806112487736e308 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: csinh (710.5 - 0.75 i) == 1.347490911916428129246890157395342279438e308 - 1.255317763348154410745082950806112487736e308 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: csinh (1440 + 0x1p-1074 i) == inf + 5.981479269486130556466515778180916082415e301 i":
-double: 1
-idouble: 1
+ildouble: 1
+ldouble: 1
 
 # csqrt
 Test "Real part of: csqrt (-2 + 3 i) == 0.89597747612983812471573375529004348 + 1.6741492280355400404480393008490519 i":
@@ -1313,44 +1312,44 @@
 
 # ctan
 Test "Real part of: ctan (-2 - 3 i) == 0.376402564150424829275122113032269084e-2 - 1.00323862735360980144635859782192726 i":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
-ldouble: 1
-ildouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: ctan (-2 - 3 i) == 0.376402564150424829275122113032269084e-2 - 1.00323862735360980144635859782192726 i":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: ctan (0.75 + 1.25 i) == 0.160807785916206426725166058173438663 + 0.975363285031235646193581759755216379 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: ctan (0.75 + 1.25 i) == 0.160807785916206426725166058173438663 + 0.975363285031235646193581759755216379 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: ctan (0x1p1023 + 1 i) == -0.2254627924997545057926782581695274244229 + 0.8786063118883068695462540226219865087189 i":
+double: 1
+idouble: 1
+Test "Real part of: ctan (0x1p127 + 1 i) == 0.2446359391192790896381501310437708987204 + 0.9101334047676183761532873794426475906201 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: ctan (0x1p127 + 1 i) == 0.2446359391192790896381501310437708987204 + 0.9101334047676183761532873794426475906201 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Real part of: ctan (0x3.243f6cp-1 + 0 i) == -2.287733242885645987394874673945769518150e7 + 0.0 i":
+float: 1
+ifloat: 1
 Test "Real part of: ctan (1 + 47 i) == 2.729321264492904590777293425576722354636e-41 + 1.0 i":
-ldouble: 2
-ildouble: 2
-Test "Imaginary part of: ctan (-2 - 3 i) == 0.376402564150424829275122113032269084e-2 - 1.00323862735360980144635859782192726 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: ctan (0.75 + 1.25 i) == 0.160807785916206426725166058173438663 + 0.975363285031235646193581759755216379 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: ctan (0.75 + 1.25 i) == 0.160807785916206426725166058173438663 + 0.975363285031235646193581759755216379 i":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: ctan (0x1p1023 + 1 i) == -0.2254627924997545057926782581695274244229 + 0.8786063118883068695462540226219865087189 i":
-double: 1
-idouble: 1
-Test "Real part of: ctan (0x1p127 + 1 i) == 0.2446359391192790896381501310437708987204 + 0.9101334047676183761532873794426475906201 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: ctan (0x1p127 + 1 i) == 0.2446359391192790896381501310437708987204 + 0.9101334047676183761532873794426475906201 i":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
-Test "Real part of: ctan (0x3.243f6cp-1 + 0 i) == -2.287733242885645987394874673945769518150e7 + 0.0 i":
-float: 1
-ifloat: 1
+ildouble: 2
+ldouble: 2
 
 # ctanh
 Test "Real part of: ctanh (-2 - 3 i) == -0.965385879022133124278480269394560686 + 0.988437503832249372031403430350121098e-2 i":
@@ -1361,40 +1360,39 @@
 Test "Imaginary part of: ctanh (-2 - 3 i) == -0.965385879022133124278480269394560686 + 0.988437503832249372031403430350121098e-2 i":
 double: 1
 idouble: 1
+Test "Imaginary part of: ctanh (0 + 0x3.243f6cp-1 i) == 0.0 - 2.287733242885645987394874673945769518150e7 i":
+float: 1
+ifloat: 1
 Test "Imaginary part of: ctanh (0 + pi/4 i) == 0.0 + 1.0 i":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
 Test "Real part of: ctanh (0.75 + 1.25 i) == 1.37260757053378320258048606571226857 + 0.385795952609750664177596760720790220 i":
 double: 1
 idouble: 1
-ildouble: 1
+ildouble: 3
 ldouble: 3
-ildouble: 3
 Test "Imaginary part of: ctanh (0.75 + 1.25 i) == 1.37260757053378320258048606571226857 + 0.385795952609750664177596760720790220 i":
 float: 1
 ifloat: 1
-ldouble: 2
-ildouble: 2
+ildouble: 2
+ldouble: 2
+Test "Imaginary part of: ctanh (1 + 0x1p1023 i) == 0.8786063118883068695462540226219865087189 - 0.2254627924997545057926782581695274244229 i":
+double: 1
+idouble: 1
+Test "Real part of: ctanh (1 + 0x1p127 i) == 0.9101334047676183761532873794426475906201 + 0.2446359391192790896381501310437708987204 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Imaginary part of: ctanh (1 + 0x1p127 i) == 0.9101334047676183761532873794426475906201 + 0.2446359391192790896381501310437708987204 i":
+double: 1
+float: 1
+ifloat: 1
 Test "Imaginary part of: ctanh (47 + 1 i) == 1.0 + 2.729321264492904590777293425576722354636e-41 i":
-ldouble: 2
-ildouble: 2
-Test "Imaginary part of: ctanh (0 + 0x3.243f6cp-1 i) == 0.0 - 2.287733242885645987394874673945769518150e7 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: ctanh (1 + 0x1p1023 i) == 0.8786063118883068695462540226219865087189 - 0.2254627924997545057926782581695274244229 i":
-double: 1
-idouble: 1
-Test "Real part of: ctanh (1 + 0x1p127 i) == 0.9101334047676183761532873794426475906201 + 0.2446359391192790896381501310437708987204 i":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
-Test "Imaginary part of: ctanh (1 + 0x1p127 i) == 0.9101334047676183761532873794426475906201 + 0.2446359391192790896381501310437708987204 i":
-float: 1
-ifloat: 1
-double: 1
+ildouble: 2
+ldouble: 2
 
 # erf
 Test "erf (1.25) == 0.922900128256458230136523481197281140":
@@ -1430,18 +1428,21 @@
 ldouble: 1
 
 # exp10
+Test "exp10 (-1) == 0.1":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
 Test "exp10 (-305) == 1.0e-305":
 double: 1
 idouble: 1
-ldouble: 1
-ildouble: 1
-Test "exp10 (-1) == 0.1":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp10 (-36) == 1.0e-36":
+double: 1
+idouble: 1
 Test "exp10 (0.75) == 5.62341325190349080394951039776481231":
 double: 1
 float: 1
@@ -1449,19 +1450,16 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
-Test "exp10 (-36) == 1.0e-36":
-double: 1
-idouble: 1
+Test "exp10 (3) == 1000":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
 Test "exp10 (36) == 1.0e36":
 double: 1
 idouble: 1
-Test "exp10 (3) == 1000":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
 
 # exp2
 Test "exp2 (10) == 1024":
@@ -2338,28 +2336,28 @@
 ldouble: 1
 
 Function: "acos_downward":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
-ldouble: 1
-ildouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
 
 Function: "acos_tonearest":
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 
 Function: "acos_towardzero":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
-ldouble: 1
-ildouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
 
 Function: "acos_upward":
-ldouble: 2
-ildouble: 2
+ildouble: 2
+ldouble: 2
 
 Function: "acosh":
 ildouble: 1
@@ -2370,30 +2368,30 @@
 ldouble: 2
 
 Function: "asin_downward":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
-ldouble: 1
-ildouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
 
 Function: "asin_tonearest":
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 
 Function: "asin_towardzero":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
-ldouble: 1
-ildouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
 
 Function: "asin_upward":
 float: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 
 Function: "asinh":
 ildouble: 1
@@ -2508,17 +2506,16 @@
 Function: Real part of "ccos":
 double: 1
 float: 1
-double: 1
 idouble: 1
 ifloat: 1
 ildouble: 1
 ldouble: 1
 
 Function: Imaginary part of "ccos":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
 ildouble: 1
 ldouble: 1
 
@@ -2531,10 +2528,10 @@
 ldouble: 1
 
 Function: Imaginary part of "ccosh":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
 ildouble: 2
 ldouble: 2
 
@@ -2663,16 +2660,16 @@
 ldouble: 1
 
 Function: Real part of "csin":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
 ildouble: 1
 ldouble: 1
 
 Function: Imaginary part of "csin":
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 
 Function: Real part of "csinh":
 float: 1
@@ -2705,18 +2702,18 @@
 ldouble: 1
 
 Function: Real part of "ctan":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
 ildouble: 2
 ldouble: 2
 
 Function: Imaginary part of "ctan":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
 ildouble: 1
 ldouble: 1
 
@@ -2729,10 +2726,10 @@
 ldouble: 3
 
 Function: Imaginary part of "ctanh":
-float: 1
-ifloat: 1
-double: 1
-idouble: 1
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
 ildouble: 2
 ldouble: 2
 
@@ -2793,8 +2790,8 @@
 float: 1
 idouble: 1
 ifloat: 1
-ldouble: 1
-ildouble: 1
+ildouble: 1
+ldouble: 1
 
 Function: "gamma":
 ildouble: 1

Modified: fsf/trunk/libc/sysdeps/sparc/fpu/libm-test-ulps
==============================================================================
--- fsf/trunk/libc/sysdeps/sparc/fpu/libm-test-ulps (original)
+++ fsf/trunk/libc/sysdeps/sparc/fpu/libm-test-ulps Fri Jun  1 00:02:04 2012
@@ -2102,11 +2102,6 @@
 ildouble: 1
 ldouble: 1
 
-# sqrt
-Test "sqrt (2) == M_SQRT2l":
-ildouble: 1
-ldouble: 1
-
 # tan_downward
 Test "tan_downward (1) == 1.5574077246549022305069748074583601730873":
 float: 1
@@ -2921,10 +2916,6 @@
 ildouble: 1
 ldouble: 1
 
-Function: "sqrt":
-ildouble: 1
-ldouble: 1
-
 Function: "tan":
 double: 1
 idouble: 1

Modified: fsf/trunk/libc/sysdeps/sparc/sparc64/memcpy.S
==============================================================================
--- fsf/trunk/libc/sysdeps/sparc/sparc64/memcpy.S (original)
+++ fsf/trunk/libc/sysdeps/sparc/sparc64/memcpy.S Fri Jun  1 00:02:04 2012
@@ -79,7 +79,7 @@
 #define UNEVEN_VISCHUNK(dest, f0, f1, left)			\
 	subcc		%left, 8, %left;			\
 	bl,pn		%xcc, 205f;				\
-	 fsrc1		%f0, %f1;				\
+	 fsrc2		%f0, %f1;				\
 	ba,a,pt		%xcc, 204f;
 
 	/* Macros for non-VIS memcpy code. */
@@ -162,7 +162,7 @@
 3:	andcc		%o0, 0x38, %g5			/* IEU1		Group		*/
 201:	be,pt		%icc, 202f			/* CTI				*/
 	 mov		64, %g1				/* IEU0				*/
-	fmovd		%f0, %f2			/* FPU				*/
+	fsrc2		%f0, %f2			/* FPU				*/
 	sub		%g1, %g5, %g5			/* IEU0		Group		*/
 	alignaddr	%o1, %g0, %g1			/* GRU		Group		*/
 	ldd		[%g1], %f4			/* Load		Group		*/
@@ -193,7 +193,7 @@
 	andn		%o1, (0x40 - 1), %o1		/* IEU1				*/
 	and		%g2, 7, %g2			/* IEU0		Group		*/
 	andncc		%g3, 0x7, %g3			/* IEU1				*/
-	fmovd		%f0, %f2			/* FPU				*/
+	fsrc2		%f0, %f2			/* FPU				*/
 	sub		%g3, 0x10, %g3			/* IEU0		Group		*/
 	sub		%o2, %g6, %o2			/* IEU1				*/
 	alignaddr	%g1, %g0, %g0			/* GRU		Group		*/
@@ -541,7 +541,7 @@
 	 stb		%g5, [%o0 - 1]			/* Store			*/
 2:	andn		%o2, 7, %g5 			/* IEU0		Group		*/
 	and		%o2, 7, %o2			/* IEU1				*/
-	fmovd		%f0, %f2			/* FPU				*/
+	fsrc2		%f0, %f2			/* FPU				*/
 	alignaddr	%o1, %g0, %g1			/* GRU		Group		*/
 	ldd		[%g1], %f4			/* Load		Group		*/
 1:	ldd		[%g1 + 0x8], %f6		/* Load		Group		*/

Modified: fsf/trunk/libc/sysdeps/sparc/sparc64/memset.S
==============================================================================
--- fsf/trunk/libc/sysdeps/sparc/sparc64/memset.S (original)
+++ fsf/trunk/libc/sysdeps/sparc/sparc64/memset.S Fri Jun  1 00:02:04 2012
@@ -109,16 +109,16 @@
 	membar		#StoreStore | #LoadStore
 	andcc		%o3, 0xc0, %g5
 	and		%o2, 0x3f, %o2
-	fmovd		%f0, %f2
-	fmovd		%f0, %f4
+	fsrc2		%f0, %f2
+	fsrc2		%f0, %f4
 	andn		%o3, 0xff, %o3
-	fmovd		%f0, %f6
+	fsrc2		%f0, %f6
 	cmp		%g5, 64
-	fmovd		%f0, %f8
-	fmovd		%f0, %f10
-	fmovd		%f0, %f12
+	fsrc2		%f0, %f8
+	fsrc2		%f0, %f10
+	fsrc2		%f0, %f12
 	brz,pn		%g5, 10f
-	 fmovd		%f0, %f14
+	 fsrc2		%f0, %f14
 	be,pn		%icc, 2f
 	 stda		%f0, [%o0 + 0x00] %asi
 	cmp		%g5, 128

Modified: fsf/trunk/libc/sysdeps/sparc/sparc64/multiarch/memcpy-niagara2.S
==============================================================================
--- fsf/trunk/libc/sysdeps/sparc/sparc64/multiarch/memcpy-niagara2.S (original)
+++ fsf/trunk/libc/sysdeps/sparc/sparc64/multiarch/memcpy-niagara2.S Fri Jun  1 00:02:04 2012
@@ -58,49 +58,49 @@
 	faligndata	%x7, %x8, %f14;
 
 #define FREG_MOVE_1(x0) \
-	fmovd		%x0, %f0;
+	fsrc2		%x0, %f0;
 #define FREG_MOVE_2(x0, x1) \
-	fmovd		%x0, %f0; \
-	fmovd		%x1, %f2;
+	fsrc2		%x0, %f0; \
+	fsrc2		%x1, %f2;
 #define FREG_MOVE_3(x0, x1, x2) \
-	fmovd		%x0, %f0; \
-	fmovd		%x1, %f2; \
-	fmovd		%x2, %f4;
+	fsrc2		%x0, %f0; \
+	fsrc2		%x1, %f2; \
+	fsrc2		%x2, %f4;
 #define FREG_MOVE_4(x0, x1, x2, x3) \
-	fmovd		%x0, %f0; \
-	fmovd		%x1, %f2; \
-	fmovd		%x2, %f4; \
-	fmovd		%x3, %f6;
+	fsrc2		%x0, %f0; \
+	fsrc2		%x1, %f2; \
+	fsrc2		%x2, %f4; \
+	fsrc2		%x3, %f6;
 #define FREG_MOVE_5(x0, x1, x2, x3, x4) \
-	fmovd		%x0, %f0; \
-	fmovd		%x1, %f2; \
-	fmovd		%x2, %f4; \
-	fmovd		%x3, %f6; \
-	fmovd		%x4, %f8;
+	fsrc2		%x0, %f0; \
+	fsrc2		%x1, %f2; \
+	fsrc2		%x2, %f4; \
+	fsrc2		%x3, %f6; \
+	fsrc2		%x4, %f8;
 #define FREG_MOVE_6(x0, x1, x2, x3, x4, x5) \
-	fmovd		%x0, %f0; \
-	fmovd		%x1, %f2; \
-	fmovd		%x2, %f4; \
-	fmovd		%x3, %f6; \
-	fmovd		%x4, %f8; \
-	fmovd		%x5, %f10;
+	fsrc2		%x0, %f0; \
+	fsrc2		%x1, %f2; \
+	fsrc2		%x2, %f4; \
+	fsrc2		%x3, %f6; \
+	fsrc2		%x4, %f8; \
+	fsrc2		%x5, %f10;
 #define FREG_MOVE_7(x0, x1, x2, x3, x4, x5, x6) \
-	fmovd		%x0, %f0; \
-	fmovd		%x1, %f2; \
-	fmovd		%x2, %f4; \
-	fmovd		%x3, %f6; \
-	fmovd		%x4, %f8; \
-	fmovd		%x5, %f10; \
-	fmovd		%x6, %f12;
+	fsrc2		%x0, %f0; \
+	fsrc2		%x1, %f2; \
+	fsrc2		%x2, %f4; \
+	fsrc2		%x3, %f6; \
+	fsrc2		%x4, %f8; \
+	fsrc2		%x5, %f10; \
+	fsrc2		%x6, %f12;
 #define FREG_MOVE_8(x0, x1, x2, x3, x4, x5, x6, x7) \
-	fmovd		%x0, %f0; \
-	fmovd		%x1, %f2; \
-	fmovd		%x2, %f4; \
-	fmovd		%x3, %f6; \
-	fmovd		%x4, %f8; \
-	fmovd		%x5, %f10; \
-	fmovd		%x6, %f12; \
-	fmovd		%x7, %f14;
+	fsrc2		%x0, %f0; \
+	fsrc2		%x1, %f2; \
+	fsrc2		%x2, %f4; \
+	fsrc2		%x3, %f6; \
+	fsrc2		%x4, %f8; \
+	fsrc2		%x5, %f10; \
+	fsrc2		%x6, %f12; \
+	fsrc2		%x7, %f14;
 #define FREG_LOAD_1(base, x0) \
 	LOAD(ldd, base + 0x00, %x0)
 #define FREG_LOAD_2(base, x0, x1) \

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/Makefile
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/Makefile (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/Makefile Fri Jun  1 00:02:04 2012
@@ -36,7 +36,7 @@
 		  bits/a.out.h sys/inotify.h sys/signalfd.h sys/eventfd.h \
 		  sys/timerfd.h sys/fanotify.h bits/eventfd.h bits/inotify.h \
 		  bits/signalfd.h bits/timerfd.h bits/epoll.h \
-		  bits/socket_type.h bits/syscall.h
+		  bits/socket_type.h bits/syscall.h bits/sysctl.h
 
 tests += tst-clone
 

Removed: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/a.out.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/a.out.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/a.out.h (removed)
@@ -1,3 +1,0 @@
-#ifndef __A_OUT_GNU_H__
-# error "Never use <bits/a.out.h> directly; include <a.out.h> instead."
-#endif

Removed: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/environments.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/environments.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/environments.h (removed)
@@ -1,67 +1,0 @@
-/* Copyright (C) 1999, 2001, 2004, 2009 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 _UNISTD_H
-# error "Never include this file directly.  Use <unistd.h> instead"
-#endif
-
-/* This header should define the following symbols under the described
-   situations.  A value `1' means that the model is always supported,
-   `-1' means it is never supported.  Undefined means it cannot be
-   statically decided.
-
-   _POSIX_V7_ILP32_OFF32   32bit int, long, pointers, and off_t type
-   _POSIX_V7_ILP32_OFFBIG  32bit int, long, and pointers and larger off_t type
-
-   _POSIX_V7_LP64_OFF32	   64bit long and pointers and 32bit off_t type
-   _POSIX_V7_LPBIG_OFFBIG  64bit long and pointers and large off_t type
-
-   The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG,
-   _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32,
-   _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were
-   used in previous versions of the Unix standard and are available
-   only for compatibility.
-*/
-
-/* By default we have 32-bit wide `int', `long int', pointers and `off_t'
-   and all platforms support LFS.  */
-#define _POSIX_V7_ILP32_OFF32	1
-#define _POSIX_V7_ILP32_OFFBIG	1
-#define _POSIX_V6_ILP32_OFF32	1
-#define _POSIX_V6_ILP32_OFFBIG	1
-#define _XBS5_ILP32_OFF32	1
-#define _XBS5_ILP32_OFFBIG	1
-
-/* We optionally provide an environment with the above size but an 64-bit
-   side `off_t'.  Therefore we don't define _POSIX_V7_ILP32_OFFBIG.  */
-
-/* Environments with 64-bit wide pointers can be provided,
-   so these macros aren't defined:
-   # undef _POSIX_V7_LP64_OFF64
-   # undef _POSIX_V7_LPBIG_OFFBIG
-   # undef _POSIX_V6_LP64_OFF64
-   # undef _POSIX_V6_LPBIG_OFFBIG
-   # undef _XBS5_LP64_OFF64
-   # undef _XBS5_LPBIG_OFFBIG
-   and sysconf tests for it at runtime.  */
-
-#define __ILP32_OFF32_CFLAGS	"-m32"
-#define __ILP32_OFFBIG_CFLAGS	"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
-#define __ILP32_OFF32_LDFLAGS	"-m32"
-#define __ILP32_OFFBIG_LDFLAGS	"-m32"
-#define __LP64_OFF64_CFLAGS	"-m64"
-#define __LP64_OFF64_LDFLAGS	"-m64"

Removed: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/fcntl.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/fcntl.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/fcntl.h (removed)
@@ -1,321 +1,0 @@
-/* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 1995-1998, 2000, 2004, 2006, 2007, 2009, 2010, 2011
-   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	_FCNTL_H
-# error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead."
-#endif
-
-#include <sys/types.h>
-#ifdef __USE_GNU
-# include <bits/uio.h>
-#endif
-
-
-/* open/fcntl - O_SYNC is only implemented on blocks devices and on files
-   located on a few file systems.  */
-#define O_ACCMODE	   0003
-#define O_RDONLY	     00
-#define O_WRONLY	     01
-#define O_RDWR		     02
-#define O_CREAT		   0100	/* not fcntl */
-#define O_EXCL		   0200	/* not fcntl */
-#define O_NOCTTY	   0400	/* not fcntl */
-#define O_TRUNC		  01000	/* not fcntl */
-#define O_APPEND	  02000
-#define O_NONBLOCK	  04000
-#define O_NDELAY	O_NONBLOCK
-#define O_SYNC	       04010000
-#define O_FSYNC		 O_SYNC
-#define O_ASYNC		 020000
-
-#ifdef __USE_XOPEN2K8
-# define O_DIRECTORY	0200000	/* Must be a directory.	 */
-# define O_NOFOLLOW	0400000	/* Do not follow links.	 */
-# define O_CLOEXEC     02000000 /* Set close_on_exec.  */
-#endif
-#ifdef __USE_GNU
-# define O_DIRECT	 040000	/* Direct disk access.	*/
-# define O_NOATIME     01000000 /* Do not set atime.  */
-# define O_PATH	      010000000 /* Resolve pathname but do not open file.  */
-#endif
-
-/* For now Linux has synchronisity options for data and read operations.
-   We define the symbols here but let them do the same as O_SYNC since
-   this is a superset.	*/
-#if defined __USE_POSIX199309 || defined __USE_UNIX98
-# define O_DSYNC	010000	/* Synchronize data.  */
-# define O_RSYNC	O_SYNC	/* Synchronize read operations.	 */
-#endif
-
-#ifdef __USE_LARGEFILE64
-# define O_LARGEFILE	0100000
-#endif
-
-/* Values for the second argument to `fcntl'.  */
-#define F_DUPFD		0	/* Duplicate file descriptor.  */
-#define F_GETFD		1	/* Get file descriptor flags.  */
-#define F_SETFD		2	/* Set file descriptor flags.  */
-#define F_GETFL		3	/* Get file status flags.  */
-#define F_SETFL		4	/* Set file status flags.  */
-#ifndef __USE_FILE_OFFSET64
-# define F_GETLK	5	/* Get record locking info.  */
-# define F_SETLK	6	/* Set record locking info (non-blocking).  */
-# define F_SETLKW	7	/* Set record locking info (blocking).	*/
-#else
-# define F_GETLK	F_GETLK64  /* Get record locking info.	*/
-# define F_SETLK	F_SETLK64  /* Set record locking info (non-blocking).*/
-# define F_SETLKW	F_SETLKW64 /* Set record locking info (blocking).  */
-#endif
-#define F_GETLK64	12	/* Get record locking info.  */
-#define F_SETLK64	13	/* Set record locking info (non-blocking).  */
-#define F_SETLKW64	14	/* Set record locking info (blocking).	*/
-
-#if defined __USE_BSD || defined __USE_UNIX98 || defined __USE_XOPEN2K8
-# define F_SETOWN	8	/* Get owner (process receiving SIGIO).  */
-# define F_GETOWN	9	/* Set owner (process receiving SIGIO).  */
-#endif
-
-#ifdef __USE_GNU
-# define F_SETSIG	10	/* Set number of signal to be sent.  */
-# define F_GETSIG	11	/* Get number of signal to be sent.  */
-# define F_SETOWN_EX	15	/* Get owner (thread receiving SIGIO).  */
-# define F_GETOWN_EX	16	/* Set owner (thread receiving SIGIO).  */
-#endif
-
-#ifdef __USE_GNU
-# define F_SETLEASE	1024	/* Set a lease.	 */
-# define F_GETLEASE	1025	/* Enquire what lease is active.  */
-# define F_NOTIFY	1026	/* Request notfications on a directory.	 */
-# define F_SETPIPE_SZ	1031	/* Set pipe page size array.  */
-# define F_GETPIPE_SZ	1032	/* Set pipe page size array.  */
-#endif
-#ifdef __USE_XOPEN2K8
-# define F_DUPFD_CLOEXEC 1030	/* Duplicate file descriptor with
-				   close-on-exit set.  */
-#endif
-
-/* For F_[GET|SET]FD.  */
-#define FD_CLOEXEC	1	/* actually anything with low bit set goes */
-
-/* For posix fcntl() and `l_type' field of a `struct flock' for lockf().  */
-#define F_RDLCK		0	/* Read lock.  */
-#define F_WRLCK		1	/* Write lock.	*/
-#define F_UNLCK		2	/* Remove lock.	 */
-
-/* For old implementation of bsd flock().  */
-#define F_EXLCK		4	/* or 3 */
-#define F_SHLCK		8	/* or 4 */
-
-#ifdef __USE_BSD
-/* Operations for bsd flock(), also used by the kernel implementation.	*/
-# define LOCK_SH	1	/* shared lock */
-# define LOCK_EX	2	/* exclusive lock */
-# define LOCK_NB	4	/* or'd with one of the above to prevent
-				   blocking */
-# define LOCK_UN	8	/* remove lock */
-#endif
-
-#ifdef __USE_GNU
-# define LOCK_MAND	32	/* This is a mandatory flock:	*/
-# define LOCK_READ	64	/* ... which allows concurrent read operations.	 */
-# define LOCK_WRITE	128	/* ... which allows concurrent write operations.  */
-# define LOCK_RW	192	/* ... Which allows concurrent read & write operations.	 */
-#endif
-
-#ifdef __USE_GNU
-/* Types of directory notifications that may be requested with F_NOTIFY.  */
-# define DN_ACCESS	0x00000001	/* File accessed.  */
-# define DN_MODIFY	0x00000002	/* File modified.  */
-# define DN_CREATE	0x00000004	/* File created.  */
-# define DN_DELETE	0x00000008	/* File removed.  */
-# define DN_RENAME	0x00000010	/* File renamed.  */
-# define DN_ATTRIB	0x00000020	/* File changed attibutes.  */
-# define DN_MULTISHOT	0x80000000	/* Don't remove notifier.  */
-#endif
-
-struct flock
-  {
-    short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/
-    short int l_whence;	/* Where `l_start' is relative to (like `lseek').  */
-#ifndef __USE_FILE_OFFSET64
-    __off_t l_start;	/* Offset where the lock begins.  */
-    __off_t l_len;	/* Size of the locked area; zero means until EOF.  */
-#else
-    __off64_t l_start;	/* Offset where the lock begins.  */
-    __off64_t l_len;	/* Size of the locked area; zero means until EOF.  */
-#endif
-    __pid_t l_pid;	/* Process holding the lock.  */
-  };
-
-#ifdef __USE_LARGEFILE64
-struct flock64
-  {
-    short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/
-    short int l_whence;	/* Where `l_start' is relative to (like `lseek').  */
-    __off64_t l_start;	/* Offset where the lock begins.  */
-    __off64_t l_len;	/* Size of the locked area; zero means until EOF.  */
-    __pid_t l_pid;	/* Process holding the lock.  */
-  };
-#endif
-
-#ifdef __USE_GNU
-/* Owner types.  */
-enum __pid_type
-  {
-    F_OWNER_TID = 0,		/* Kernel thread.  */
-    F_OWNER_PID,		/* Process.  */
-    F_OWNER_PGRP,		/* Process group.  */
-    F_OWNER_GID = F_OWNER_PGRP	/* Alternative, obsolete name.  */
-  };
-
-/* Structure to use with F_GETOWN_EX and F_SETOWN_EX.  */
-struct f_owner_ex
-  {
-    enum __pid_type type;	/* Owner type of ID.  */
-    __pid_t pid;		/* ID of owner.  */
-  };
-#endif
-
-/* Define some more compatibility macros to be backward compatible with
-   BSD systems which did not managed to hide these kernel macros.  */
-#ifdef	__USE_BSD
-# define FAPPEND	O_APPEND
-# define FFSYNC		O_FSYNC
-# define FASYNC		O_ASYNC
-# define FNONBLOCK	O_NONBLOCK
-# define FNDELAY	O_NDELAY
-#endif /* Use BSD.  */
-
-/* Advise to `posix_fadvise'.  */
-#ifdef __USE_XOPEN2K
-# define POSIX_FADV_NORMAL	0 /* No further special treatment.  */
-# define POSIX_FADV_RANDOM	1 /* Expect random page references.  */
-# define POSIX_FADV_SEQUENTIAL	2 /* Expect sequential page references.	 */
-# define POSIX_FADV_WILLNEED	3 /* Will need these pages.  */
-# define POSIX_FADV_DONTNEED	4 /* Don't need these pages.  */
-# define POSIX_FADV_NOREUSE	5 /* Data will be accessed once.  */
-#endif
-
-
-#ifdef __USE_GNU
-/* Flags for SYNC_FILE_RANGE.  */
-# define SYNC_FILE_RANGE_WAIT_BEFORE	1 /* Wait upon writeout of all pages
-					     in the range before performing the
-					     write.  */
-# define SYNC_FILE_RANGE_WRITE		2 /* Initiate writeout of all those
-					     dirty pages in the range which are
-					     not presently under writeback.  */
-# define SYNC_FILE_RANGE_WAIT_AFTER	4 /* Wait upon writeout of all pages in
-					     the range after performing the
-					     write.  */
-
-/* Flags for SPLICE and VMSPLICE.  */
-# define SPLICE_F_MOVE		1	/* Move pages instead of copying.  */
-# define SPLICE_F_NONBLOCK	2	/* Don't block on the pipe splicing
-					   (but we may still block on the fd
-					   we splice from/to).  */
-# define SPLICE_F_MORE		4	/* Expect more data.  */
-# define SPLICE_F_GIFT		8	/* Pages passed in are a gift.  */
-
-
-/* File handle structure.  */
-struct file_handle
-{
-  unsigned int handle_bytes;
-  int handle_type;
-  /* File identifier.  */
-  unsigned char f_handle[0];
-};
-
-/* Maximum handle size (for now).  */
-# define MAX_HANDLE_SZ	128
-#endif
-
-__BEGIN_DECLS
-
-#ifdef __USE_GNU
-
-/* Provide kernel hint to read ahead.  */
-extern ssize_t readahead (int __fd, __off64_t __offset, size_t __count)
-    __THROW;
-
-
-/* Selective file content synch'ing.  */
-extern int sync_file_range (int __fd, __off64_t __offset, __off64_t __count,
-			    unsigned int __flags);
-
-
-/* Splice address range into a pipe.
-
-   This function is a possible cancellation point and therefore not
-   marked with __THROW.  */
-extern ssize_t vmsplice (int __fdout, const struct iovec *__iov,
-			 size_t __count, unsigned int __flags);
-
-/* Splice two files together.
-
-   This function is a possible cancellation point and therefore not
-   marked with __THROW.  */
-extern ssize_t splice (int __fdin, __off64_t *__offin, int __fdout,
-		       __off64_t *__offout, size_t __len,
-		       unsigned int __flags);
-
-/* In-kernel implementation of tee for pipe buffers.
-
-   This function is a possible cancellation point and therefore not
-   marked with __THROW.  */
-extern ssize_t tee (int __fdin, int __fdout, size_t __len,
-		    unsigned int __flags);
-
-/* Reserve storage for the data of the file associated with FD.
-
-   This function is a possible cancellation point and therefore not
-   marked with __THROW.  */
-# ifndef __USE_FILE_OFFSET64
-extern int fallocate (int __fd, int __mode, __off_t __offset, __off_t __len);
-# else
-#  ifdef __REDIRECT
-extern int __REDIRECT (fallocate, (int __fd, int __mode, __off64_t __offset,
-				   __off64_t __len),
-		       fallocate64);
-#  else
-#   define fallocate fallocate64
-#  endif
-# endif
-# ifdef __USE_LARGEFILE64
-extern int fallocate64 (int __fd, int __mode, __off64_t __offset,
-			__off64_t __len);
-# endif
-
-
-/* Map file name to file handle.  */
-extern int name_to_handle_at (int __dfd, const char *__name,
-			      struct file_handle *__handle, int *__mnt_id,
-			      int __flags) __THROW;
-
-/* Open file using the file handle.
-
-   This function is a possible cancellation point and therefore not
-   marked with __THROW.  */
-extern int open_by_handle_at (int __mountdirfd, struct file_handle *__handle,
-			      int __flags);
-
-#endif
-
-__END_DECLS

Removed: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/mman.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/mman.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bits/mman.h (removed)
@@ -1,112 +1,0 @@
-/* Definitions for POSIX memory map interface.  Linux/i386 version.
-   Copyright (C) 1997-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_MMAN_H
-# error "Never use <bits/mman.h> directly; include <sys/mman.h> instead."
-#endif
-
-/* The following definitions basically come from the kernel headers.
-   But the kernel header is not namespace clean.  */
-
-
-/* Protections are chosen from these bits, OR'd together.  The
-   implementation does not necessarily support PROT_EXEC or PROT_WRITE
-   without PROT_READ.  The only guarantees are that no writing will be
-   allowed without PROT_WRITE and no access will be allowed for PROT_NONE. */
-
-#define PROT_READ	0x1		/* Page can be read.  */
-#define PROT_WRITE	0x2		/* Page can be written.  */
-#define PROT_EXEC	0x4		/* Page can be executed.  */
-#define PROT_NONE	0x0		/* Page can not be accessed.  */
-#define PROT_GROWSDOWN	0x01000000	/* Extend change to start of
-					   growsdown vma (mprotect only).  */
-#define PROT_GROWSUP	0x02000000	/* Extend change to start of
-					   growsup vma (mprotect only).  */
-
-/* Sharing types (must choose one and only one of these).  */
-#define MAP_SHARED	0x01		/* Share changes.  */
-#define MAP_PRIVATE	0x02		/* Changes are private.  */
-#ifdef __USE_MISC
-# define MAP_TYPE	0x0f		/* Mask for type of mapping.  */
-#endif
-
-/* Other flags.  */
-#define MAP_FIXED	0x10		/* Interpret addr exactly.  */
-#ifdef __USE_MISC
-# define MAP_FILE	0
-# define MAP_ANONYMOUS	0x20		/* Don't use a file.  */
-# define MAP_ANON	MAP_ANONYMOUS
-#endif
-
-/* These are Linux-specific.  */
-#ifdef __USE_MISC
-# define MAP_GROWSDOWN	0x00100		/* Stack-like segment.  */
-# define MAP_DENYWRITE	0x00800		/* ETXTBSY */
-# define MAP_EXECUTABLE	0x01000		/* Mark it as an executable.  */
-# define MAP_LOCKED	0x02000		/* Lock the mapping.  */
-# define MAP_NORESERVE	0x04000		/* Don't check for reservations.  */
-# define MAP_POPULATE	0x08000		/* Populate (prefault) pagetables.  */
-# define MAP_NONBLOCK	0x10000		/* Do not block on IO.  */
-# define MAP_STACK	0x20000		/* Allocation is for a stack.  */
-# define MAP_HUGETLB	0x40000		/* Create huge page mapping.  */
-#endif
-
-/* Flags to `msync'.  */
-#define MS_ASYNC	1		/* Sync memory asynchronously.  */
-#define MS_SYNC		4		/* Synchronous memory sync.  */
-#define MS_INVALIDATE	2		/* Invalidate the caches.  */
-
-/* Flags for `mlockall'.  */
-#define MCL_CURRENT	1		/* Lock all currently mapped pages.  */
-#define MCL_FUTURE	2		/* Lock all additions to address
-					   space.  */
-
-/* Flags for `mremap'.  */
-#ifdef __USE_GNU
-# define MREMAP_MAYMOVE	1
-# define MREMAP_FIXED	2
-#endif
-
-/* Advice to `madvise'.  */
-#ifdef __USE_BSD
-# define MADV_NORMAL	  0	/* No further special treatment.  */
-# define MADV_RANDOM	  1	/* Expect random page references.  */
-# define MADV_SEQUENTIAL  2	/* Expect sequential page references.  */
-# define MADV_WILLNEED	  3	/* Will need these pages.  */
-# define MADV_DONTNEED	  4	/* Don't need these pages.  */
-# define MADV_REMOVE	  9	/* Remove these pages and resources.  */
-# define MADV_DONTFORK	  10	/* Do not inherit across fork.  */
-# define MADV_DOFORK	  11	/* Do inherit across fork.  */
-# define MADV_MERGEABLE	  12	/* KSM may merge identical pages.  */
-# define MADV_UNMERGEABLE 13	/* KSM may not merge identical pages.  */
-# define MADV_HUGEPAGE	  14	/* Worth backing with hugepages.  */
-# define MADV_NOHUGEPAGE  15	/* Not worth backing with hugepages.  */
-# define MADV_DONTDUMP	  16    /* Explicity exclude from the core dump,
-                                   overrides the coredump filter bits.  */
-# define MADV_DODUMP	  17	/* Clear the MADV_DONTDUMP flag.  */
-# define MADV_HWPOISON	  100	/* Poison a page for testing.  */
-#endif
-
-/* The POSIX people had to invent similar names for the same things.  */
-#ifdef __USE_XOPEN2K
-# define POSIX_MADV_NORMAL	0 /* No further special treatment.  */
-# define POSIX_MADV_RANDOM	1 /* Expect random page references.  */
-# define POSIX_MADV_SEQUENTIAL	2 /* Expect sequential page references.  */
-# define POSIX_MADV_WILLNEED	3 /* Will need these pages.  */
-# define POSIX_MADV_DONTNEED	4 /* Don't need these pages.  */
-#endif

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/elf.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/elf.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/elf.h Fri Jun  1 00:02:04 2012
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1998-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
@@ -18,8 +18,12 @@
 #ifndef _SYS_ELF_H
 #define _SYS_ELF_H	1
 
-#warning "This header is obsolete; use <sys/procfs.h> instead."
+#ifdef __x86_64__
+# error This header is unsupported on x86-64.
+#else
+# warning "This header is obsolete; use <sys/procfs.h> instead."
 
-#include <sys/procfs.h>
+# include <sys/procfs.h>
+#endif
 
 #endif	/* _SYS_ELF_H */

Removed: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/procfs.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/procfs.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/procfs.h (removed)
@@ -1,130 +1,0 @@
-/* Copyright (C) 1996, 1997, 1999, 2000 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_PROCFS_H
-#define _SYS_PROCFS_H	1
-
-/* This is somewhat modelled after the file of the same name on SVR4
-   systems.  It provides a definition of the core file format for ELF
-   used on Linux.  It doesn't have anything to do with the /proc file
-   system, even though Linux has one.
-
-   Anyway, the whole purpose of this file is for GDB and GDB only.
-   Don't read too much into it.  Don't use it for anything other than
-   GDB unless you know what you are doing.  */
-
-#include <features.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#include <sys/user.h>
-
-__BEGIN_DECLS
-
-/* Type for a general-purpose register.  */
-typedef unsigned long elf_greg_t;
-
-/* And the whole bunch of them.  We could have used `struct
-   user_regs_struct' directly in the typedef, but tradition says that
-   the register set is an array, which does have some peculiar
-   semantics, so leave it that way.  */
-#define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof(elf_greg_t))
-typedef elf_greg_t elf_gregset_t[ELF_NGREG];
-
-/* Register set for the floating-point registers.  */
-typedef struct user_fpregs_struct elf_fpregset_t;
-
-/* Register set for the extended floating-point registers.  Includes
-   the Pentium III SSE registers in addition to the classic
-   floating-point stuff.  */
-typedef struct user_fpxregs_struct elf_fpxregset_t;
-
-
-/* Signal info.  */
-struct elf_siginfo
-  {
-    int si_signo;			/* Signal number.  */
-    int si_code;			/* Extra code.  */
-    int si_errno;			/* Errno.  */
-  };
-
-
-/* Definitions to generate Intel SVR4-like core files.  These mostly
-   have the same names as the SVR4 types with "elf_" tacked on the
-   front to prevent clashes with Linux definitions, and the typedef
-   forms have been avoided.  This is mostly like the SVR4 structure,
-   but more Linuxy, with things that Linux does not support and which
-   GDB doesn't really use excluded.  */
-
-struct elf_prstatus
-  {
-    struct elf_siginfo pr_info;		/* Info associated with signal.  */
-    short int pr_cursig;		/* Current signal.  */
-    unsigned long int pr_sigpend;	/* Set of pending signals.  */
-    unsigned long int pr_sighold;	/* Set of held signals.  */
-    __pid_t pr_pid;
-    __pid_t pr_ppid;
-    __pid_t pr_pgrp;
-    __pid_t pr_sid;
-    struct timeval pr_utime;		/* User time.  */
-    struct timeval pr_stime;		/* System time.  */
-    struct timeval pr_cutime;		/* Cumulative user time.  */
-    struct timeval pr_cstime;		/* Cumulative system time.  */
-    elf_gregset_t pr_reg;		/* GP registers.  */
-    int pr_fpvalid;			/* True if math copro being used.  */
-  };
-
-
-#define ELF_PRARGSZ     (80)    /* Number of chars for args.  */
-
-struct elf_prpsinfo
-  {
-    char pr_state;			/* Numeric process state.  */
-    char pr_sname;			/* Char for pr_state.  */
-    char pr_zomb;			/* Zombie.  */
-    char pr_nice;			/* Nice val.  */
-    unsigned long int pr_flag;		/* Flags.  */
-    unsigned short int pr_uid;
-    unsigned short int pr_gid;
-    int pr_pid, pr_ppid, pr_pgrp, pr_sid;
-    /* Lots missing */
-    char pr_fname[16];			/* Filename of executable.  */
-    char pr_psargs[ELF_PRARGSZ];	/* Initial part of arg list.  */
-  };
-
-
-/* The rest of this file provides the types for emulation of the
-   Solaris <proc_service.h> interfaces that should be implemented by
-   users of libthread_db.  */
-
-/* Addresses.  */
-typedef void *psaddr_t;
-
-/* Register sets.  Linux has different names.  */
-typedef elf_gregset_t prgregset_t;
-typedef elf_fpregset_t prfpregset_t;
-
-/* We don't have any differences between processes and threads,
-   therefore have only one PID type.  */
-typedef __pid_t lwpid_t;
-
-/* Process status and info.  In the end we do provide typedefs for them.  */
-typedef struct elf_prstatus prstatus_t;
-typedef struct elf_prpsinfo prpsinfo_t;
-
-__END_DECLS
-
-#endif	/* sys/procfs.h */

Removed: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/ucontext.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/ucontext.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/ucontext.h (removed)
@@ -1,128 +1,0 @@
-/* Copyright (C) 1997, 1998, 1999, 2000 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_UCONTEXT_H
-#define _SYS_UCONTEXT_H	1
-
-#include <features.h>
-#include <signal.h>
-
-/* We need the signal context definitions even if they are not used
-   included in <signal.h>.  */
-#include <bits/sigcontext.h>
-
-
-/* Type for general register.  */
-typedef int greg_t;
-
-/* Number of general registers.  */
-#define NGREG	19
-
-/* Container for all general registers.  */
-typedef greg_t gregset_t[NGREG];
-
-#ifdef __USE_GNU
-/* Number of each register is the `gregset_t' array.  */
-enum
-{
-  REG_GS = 0,
-# define REG_GS		REG_GS
-  REG_FS,
-# define REG_FS		REG_FS
-  REG_ES,
-# define REG_ES		REG_ES
-  REG_DS,
-# define REG_DS		REG_DS
-  REG_EDI,
-# define REG_EDI	REG_EDI
-  REG_ESI,
-# define REG_ESI	REG_ESI
-  REG_EBP,
-# define REG_EBP	REG_EBP
-  REG_ESP,
-# define REG_ESP	REG_ESP
-  REG_EBX,
-# define REG_EBX	REG_EBX
-  REG_EDX,
-# define REG_EDX	REG_EDX
-  REG_ECX,
-# define REG_ECX	REG_ECX
-  REG_EAX,
-# define REG_EAX	REG_EAX
-  REG_TRAPNO,
-# define REG_TRAPNO	REG_TRAPNO
-  REG_ERR,
-# define REG_ERR	REG_ERR
-  REG_EIP,
-# define REG_EIP	REG_EIP
-  REG_CS,
-# define REG_CS		REG_CS
-  REG_EFL,
-# define REG_EFL	REG_EFL
-  REG_UESP,
-# define REG_UESP	REG_UESP
-  REG_SS
-# define REG_SS	REG_SS
-};
-#endif
-
-/* Definitions taken from the kernel headers.  */
-struct _libc_fpreg
-{
-  unsigned short int significand[4];
-  unsigned short int exponent;
-};
-
-struct _libc_fpstate
-{
-  unsigned long int cw;
-  unsigned long int sw;
-  unsigned long int tag;
-  unsigned long int ipoff;
-  unsigned long int cssel;
-  unsigned long int dataoff;
-  unsigned long int datasel;
-  struct _libc_fpreg _st[8];
-  unsigned long int status;
-};
-
-/* Structure to describe FPU registers.  */
-typedef struct _libc_fpstate *fpregset_t;
-
-/* Context to describe whole processor state.  */
-typedef struct
-  {
-    gregset_t gregs;
-    /* Due to Linux's history we have to use a pointer here.  The SysV/i386
-       ABI requires a struct with the values.  */
-    fpregset_t fpregs;
-    unsigned long int oldmask;
-    unsigned long int cr2;
-  } mcontext_t;
-
-/* Userlevel context.  */
-typedef struct ucontext
-  {
-    unsigned long int uc_flags;
-    struct ucontext *uc_link;
-    stack_t uc_stack;
-    mcontext_t uc_mcontext;
-    __sigset_t uc_sigmask;
-    struct _libc_fpstate __fpregs_mem;
-  } ucontext_t;
-
-#endif /* sys/ucontext.h */

Removed: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/user.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/user.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/user.h (removed)
@@ -1,102 +1,0 @@
-/* Copyright (C) 1998, 2000 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_USER_H
-#define _SYS_USER_H	1
-
-/* The whole purpose of this file is for GDB and GDB only.  Don't read
-   too much into it.  Don't use it for anything other than GDB unless
-   you know what you are doing.  */
-
-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];   /* 8*16 bytes for each FP-reg = 128 bytes */
-  long int xmm_space[32];  /* 8*16 bytes for each XMM-reg = 128 bytes */
-  long int padding[56];
-};
-
-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;
-};
-
-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			start_code;
-  unsigned long			start_stack;
-  long int			signal;
-  int				reserved;
-  struct user_regs_struct*	u_ar0;
-  struct user_fpregs_struct*	u_fpstate;
-  unsigned long int		magic;
-  char				u_comm [32];
-  int				u_debugreg [8];
-};
-
-#define PAGE_SHIFT		12
-#define PAGE_SIZE		(1UL << PAGE_SHIFT)
-#define PAGE_MASK		(~(PAGE_SIZE-1))
-#define NBPG			PAGE_SIZE
-#define UPAGES			1
-#define HOST_TEXT_START_ADDR	(u.start_code)
-#define HOST_STACK_END_ADDR	(u.start_stack + u.u_ssize * NBPG)
-
-#endif	/* _SYS_USER_H */

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/vm86.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/vm86.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/sys/vm86.h Fri Jun  1 00:02:04 2012
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1999, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 1996-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,8 +20,11 @@
 #define _SYS_VM86_H	1
 #include <features.h>
 
+#ifdef __x86_64__
+# error This header is unsupported on x86-64.
+#else
 /* Get constants and data types from kernel header file.  */
-#include <asm/vm86.h>
+# include <asm/vm86.h>
 
 __BEGIN_DECLS
 
@@ -30,5 +33,6 @@
 		 struct vm86plus_struct *__info) __THROW;
 
 __END_DECLS
+# endif
 
 #endif	/* _SYS_VM86_H */

Added: fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/a.out.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/a.out.h (added)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/a.out.h Fri Jun  1 00:02:04 2012
@@ -1,0 +1,11 @@
+#ifndef __A_OUT_GNU_H__
+# error "Never use <bits/a.out.h> directly; include <a.out.h> instead."
+#endif
+
+#ifdef __x86_64__
+
+/* Signal to users of this header that this architecture really doesn't
+   support a.out binary format.  */
+#define __NO_A_OUT_SUPPORT 1
+
+#endif

Added: fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/environments.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/environments.h (added)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/environments.h Fri Jun  1 00:02:04 2012
@@ -1,0 +1,96 @@
+/* Copyright (C) 1999, 2001, 2004, 2009 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 _UNISTD_H
+# error "Never include this file directly.  Use <unistd.h> instead"
+#endif
+
+#include <bits/wordsize.h>
+
+/* This header should define the following symbols under the described
+   situations.  A value `1' means that the model is always supported,
+   `-1' means it is never supported.  Undefined means it cannot be
+   statically decided.
+
+   _POSIX_V7_ILP32_OFF32   32bit int, long, pointers, and off_t type
+   _POSIX_V7_ILP32_OFFBIG  32bit int, long, and pointers and larger off_t type
+
+   _POSIX_V7_LP64_OFF32	   64bit long and pointers and 32bit off_t type
+   _POSIX_V7_LPBIG_OFFBIG  64bit long and pointers and large off_t type
+
+   The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG,
+   _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32,
+   _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were
+   used in previous versions of the Unix standard and are available
+   only for compatibility.
+*/
+
+#if __WORDSIZE == 64
+
+/* Environments with 32-bit wide pointers are optionally provided.
+   Therefore following macros aren't defined:
+   # undef _POSIX_V7_ILP32_OFF32
+   # undef _POSIX_V7_ILP32_OFFBIG
+   # undef _POSIX_V6_ILP32_OFF32
+   # undef _POSIX_V6_ILP32_OFFBIG
+   # undef _XBS5_ILP32_OFF32
+   # undef _XBS5_ILP32_OFFBIG
+   and users need to check at runtime.  */
+
+/* We also have no use (for now) for an environment with bigger pointers
+   and offsets.  */
+# define _POSIX_V7_LPBIG_OFFBIG	-1
+# define _POSIX_V6_LPBIG_OFFBIG	-1
+# define _XBS5_LPBIG_OFFBIG	-1
+
+/* By default we have 64-bit wide `long int', pointers and `off_t'.  */
+# define _POSIX_V7_LP64_OFF64	1
+# define _POSIX_V6_LP64_OFF64	1
+# define _XBS5_LP64_OFF64	1
+
+#else /* __WORDSIZE == 32 */
+
+/* By default we have 32-bit wide `int', `long int', pointers and `off_t'
+   and all platforms support LFS.  */
+# define _POSIX_V7_ILP32_OFF32	1
+# define _POSIX_V7_ILP32_OFFBIG	1
+# define _POSIX_V6_ILP32_OFF32	1
+# define _POSIX_V6_ILP32_OFFBIG	1
+# define _XBS5_ILP32_OFF32	1
+# define _XBS5_ILP32_OFFBIG	1
+
+/* We optionally provide an environment with the above size but an 64-bit
+   side `off_t'.  Therefore we don't define _POSIX_V7_ILP32_OFFBIG.  */
+
+/* Environments with 64-bit wide pointers can be provided,
+   so these macros aren't defined:
+   # undef _POSIX_V7_LP64_OFF64
+   # undef _POSIX_V7_LPBIG_OFFBIG
+   # undef _POSIX_V6_LP64_OFF64
+   # undef _POSIX_V6_LPBIG_OFFBIG
+   # undef _XBS5_LP64_OFF64
+   # undef _XBS5_LPBIG_OFFBIG
+   and sysconf tests for it at runtime.  */
+
+#endif /* __WORDSIZE == 32 */
+
+#define __ILP32_OFF32_CFLAGS	"-m32"
+#define __ILP32_OFFBIG_CFLAGS	"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
+#define __ILP32_OFF32_LDFLAGS	"-m32"
+#define __ILP32_OFFBIG_LDFLAGS	"-m32"
+#define __LP64_OFF64_CFLAGS	"-m64"
+#define __LP64_OFF64_LDFLAGS	"-m64"

Added: fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/epoll.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/epoll.h (added)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/epoll.h Fri Jun  1 00:02:04 2012
@@ -1,0 +1,31 @@
+/* Copyright (C) 2002-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_EPOLL_H
+# error "Never use <bits/epoll.h> directly; include <sys/epoll.h> instead."
+#endif
+
+/* Flags to be passed to epoll_create1.  */
+enum
+  {
+    EPOLL_CLOEXEC = 02000000,
+#define EPOLL_CLOEXEC EPOLL_CLOEXEC
+    EPOLL_NONBLOCK = 00004000
+#define EPOLL_NONBLOCK EPOLL_NONBLOCK
+  };
+
+#define __EPOLL_PACKED __attribute__ ((__packed__))

Added: fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/fcntl.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/fcntl.h (added)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/fcntl.h Fri Jun  1 00:02:04 2012
@@ -1,0 +1,337 @@
+/* O_*, F_*, FD_* bit values for Linux/x86-64.
+   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
+   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	_FCNTL_H
+# error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead."
+#endif
+
+#include <sys/types.h>
+#ifdef __USE_GNU
+# include <bits/uio.h>
+#endif
+
+
+/* open/fcntl - O_SYNC is only implemented on blocks devices and on files
+   located on a few file systems.  */
+#define O_ACCMODE	   0003
+#define O_RDONLY	     00
+#define O_WRONLY	     01
+#define O_RDWR		     02
+#define O_CREAT		   0100	/* not fcntl */
+#define O_EXCL		   0200	/* not fcntl */
+#define O_NOCTTY	   0400	/* not fcntl */
+#define O_TRUNC		  01000	/* not fcntl */
+#define O_APPEND	  02000
+#define O_NONBLOCK	  04000
+#define O_NDELAY	O_NONBLOCK
+#define O_SYNC	       04010000
+#define O_FSYNC		 O_SYNC
+#define O_ASYNC		 020000
+
+#ifdef __USE_XOPEN2K8
+# define O_DIRECTORY	0200000	/* Must be a directory.	 */
+# define O_NOFOLLOW	0400000	/* Do not follow links.	 */
+# define O_CLOEXEC     02000000 /* Set close_on_exec.  */
+#endif
+#ifdef __USE_GNU
+# define O_DIRECT	 040000	/* Direct disk access.	*/
+# define O_NOATIME     01000000 /* Do not set atime.  */
+# define O_PATH	      010000000 /* Resolve pathname but do not open file.  */
+#endif
+
+/* For now Linux has synchronisity options for data and read operations.
+   We define the symbols here but let them do the same as O_SYNC since
+   this is a superset.	*/
+#if defined __USE_POSIX199309 || defined __USE_UNIX98
+# define O_DSYNC	010000	/* Synchronize data.  */
+# define O_RSYNC	O_SYNC	/* Synchronize read operations.	 */
+#endif
+
+#ifdef __USE_LARGEFILE64
+# ifdef __x86_64__
+#  define O_LARGEFILE	0
+# else
+#  define O_LARGEFILE	0100000
+# endif
+#endif
+
+/* Values for the second argument to `fcntl'.  */
+#define F_DUPFD		0	/* Duplicate file descriptor.  */
+#define F_GETFD		1	/* Get file descriptor flags.  */
+#define F_SETFD		2	/* Set file descriptor flags.  */
+#define F_GETFL		3	/* Get file status flags.  */
+#define F_SETFL		4	/* Set file status flags.  */
+#ifdef __x86_64__
+# define F_GETLK	5	/* Get record locking info.  */
+# define F_SETLK	6	/* Set record locking info (non-blocking).  */
+# define F_SETLKW	7	/* Set record locking info (blocking).	*/
+/* Not necessary, we always have 64-bit offsets.  */
+# define F_GETLK64	5	/* Get record locking info.  */
+# define F_SETLK64	6	/* Set record locking info (non-blocking).  */
+# define F_SETLKW64	7	/* Set record locking info (blocking).	*/
+#else
+# ifndef __USE_FILE_OFFSET64
+#  define F_GETLK	5	/* Get record locking info.  */
+#  define F_SETLK	6	/* Set record locking info (non-blocking).  */
+#  define F_SETLKW	7	/* Set record locking info (blocking).	*/
+# else
+#  define F_GETLK	F_GETLK64  /* Get record locking info.	*/
+#  define F_SETLK	F_SETLK64  /* Set record locking info (non-blocking).*/
+#  define F_SETLKW	F_SETLKW64 /* Set record locking info (blocking).  */
+# endif
+# define F_GETLK64	12	/* Get record locking info.  */
+# define F_SETLK64	13	/* Set record locking info (non-blocking).  */
+# define F_SETLKW64	14	/* Set record locking info (blocking).	*/
+#endif
+
+#if defined __USE_BSD || defined __USE_UNIX98 || defined __USE_XOPEN2K8
+# define F_SETOWN	8	/* Get owner (process receiving SIGIO).  */
+# define F_GETOWN	9	/* Set owner (process receiving SIGIO).  */
+#endif
+
+#ifdef __USE_GNU
+# define F_SETSIG	10	/* Set number of signal to be sent.  */
+# define F_GETSIG	11	/* Get number of signal to be sent.  */
+# define F_SETOWN_EX	15	/* Get owner (thread receiving SIGIO).  */
+# define F_GETOWN_EX	16	/* Set owner (thread receiving SIGIO).  */
+#endif
+
+#ifdef __USE_GNU
+# define F_SETLEASE	1024	/* Set a lease.	 */
+# define F_GETLEASE	1025	/* Enquire what lease is active.  */
+# define F_NOTIFY	1026	/* Request notfications on a directory.	 */
+# define F_SETPIPE_SZ	1031	/* Set pipe page size array.  */
+# define F_GETPIPE_SZ	1032	/* Set pipe page size array.  */
+#endif
+#ifdef __USE_XOPEN2K8
+# define F_DUPFD_CLOEXEC 1030	/* Duplicate file descriptor with
+				   close-on-exit set.  */
+#endif
+
+/* For F_[GET|SET]FD.  */
+#define FD_CLOEXEC	1	/* actually anything with low bit set goes */
+
+/* For posix fcntl() and `l_type' field of a `struct flock' for lockf().  */
+#define F_RDLCK		0	/* Read lock.  */
+#define F_WRLCK		1	/* Write lock.	*/
+#define F_UNLCK		2	/* Remove lock.	 */
+
+/* For old implementation of bsd flock().  */
+#define F_EXLCK		4	/* or 3 */
+#define F_SHLCK		8	/* or 4 */
+
+#ifdef __USE_BSD
+/* Operations for bsd flock(), also used by the kernel implementation.	*/
+# define LOCK_SH	1	/* shared lock */
+# define LOCK_EX	2	/* exclusive lock */
+# define LOCK_NB	4	/* or'd with one of the above to prevent
+				   blocking */
+# define LOCK_UN	8	/* remove lock */
+#endif
+
+#ifdef __USE_GNU
+# define LOCK_MAND	32	/* This is a mandatory flock:	*/
+# define LOCK_READ	64	/* ... which allows concurrent read operations.	 */
+# define LOCK_WRITE	128	/* ... which allows concurrent write operations.  */
+# define LOCK_RW	192	/* ... Which allows concurrent read & write operations.	 */
+#endif
+
+#ifdef __USE_GNU
+/* Types of directory notifications that may be requested with F_NOTIFY.  */
+# define DN_ACCESS	0x00000001	/* File accessed.  */
+# define DN_MODIFY	0x00000002	/* File modified.  */
+# define DN_CREATE	0x00000004	/* File created.  */
+# define DN_DELETE	0x00000008	/* File removed.  */
+# define DN_RENAME	0x00000010	/* File renamed.  */
+# define DN_ATTRIB	0x00000020	/* File changed attibutes.  */
+# define DN_MULTISHOT	0x80000000	/* Don't remove notifier.  */
+#endif
+
+struct flock
+  {
+    short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/
+    short int l_whence;	/* Where `l_start' is relative to (like `lseek').  */
+#ifndef __USE_FILE_OFFSET64
+    __off_t l_start;	/* Offset where the lock begins.  */
+    __off_t l_len;	/* Size of the locked area; zero means until EOF.  */
+#else

[... 3325 lines stripped ...]
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits