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

[Commits] r21927 - in /fsf/trunk/libc: ./ nptl/ nptl/sysdeps/unix/sysv/linux/powerpc/ ports/ ports/sysdeps/mips/ ports/sysdeps/unix/sy...



Author: eglibc
Date: Wed Dec  5 00:02:16 2012
New Revision: 21927

Log:
Import glibc-mainline for 2012-12-05

Added:
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/readelflib.c
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/dl-cache.h
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/ldconfig.h
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/readelflib.c
Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/NEWS
    fsf/trunk/libc/nptl/ChangeLog
    fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/powerpc/sem_post.c
    fsf/trunk/libc/ports/ChangeLog.aarch64
    fsf/trunk/libc/ports/ChangeLog.arm
    fsf/trunk/libc/ports/ChangeLog.mips
    fsf/trunk/libc/ports/sysdeps/mips/fpu_control.h
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/ldconfig.h
    fsf/trunk/libc/sysdeps/generic/memcopy.h
    fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c
    fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_powl.c
    fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
    fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c
    fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_logbl.c
    fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
    fsf/trunk/libc/sysdeps/ieee754/ldbl-opt/Makefile
    fsf/trunk/libc/sysdeps/powerpc/sysdep.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Wed Dec  5 00:02:16 2012
@@ -1,3 +1,130 @@
+2012-12-04  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/sysdep.h (_SYS_AUXV_H): Define to 1 not empty.
+
+	* sysdeps/ieee754/ldbl-128ibm/e_atanhl.c (__ieee754_atanhl): Mark
+	variable LX with __attribute__ ((unused)).
+	* sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c (__ieee754_rem_pio2l):
+	Likewise.
+	* sysdeps/ieee754/ldbl-128ibm/s_isnanl.c (___isnanl): Likewise.
+	* sysdeps/ieee754/ldbl-128ibm/s_logbl.c (__logbl): Likewise.
+	* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c: Mark variable LY
+	with __attribute__ ((unused)).
+
+2012-12-04  David S. Miller  <davem@xxxxxxxxxxxxxxxxxxxx>
+
+	* sysdeps/generic/memcopy.h: Add multiple inclusion protection.
+
+2012-12-04  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/ieee754/ldbl-opt/Makefile [$(subdir) = math]
+	(CFLAGS-nldbl-acos.c): New variable.
+	[$(subdir) = math] (CFLAGS-nldbl-acosh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-asin.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-asinh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-atan.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-atan2.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-atanh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-cabs.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-cacos.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-cacosh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-carg.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-casin.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-casinh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-catan.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-catanh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-cbrt.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-ccos.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-ccosh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-ceil.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-cexp.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-cimag.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-clog.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-clog10.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-conj.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-copysign.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-cos.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-cosh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-cpow.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-cproj.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-creal.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-csin.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-csinh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-csqrt.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-ctan.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-ctanh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-drem.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-erf.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-erfc.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-exp.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-exp10.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-exp2.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-expm1.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-fabs.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-fdim.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-finite.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-floor.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-fma.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-fmax.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-fmin.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-fmod.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-frexp.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-gamma.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-hypot.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-ilogb.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-isinf.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-isnan.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-j0.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-j1.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-jn.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-ldexp.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-lgamma.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-lgamma_r.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-llrint.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-llround.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-log.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-log10.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-log1p.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-log2.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-logb.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-lrint.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-lround.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-modf.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-nan.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-nearbyint.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-nextafter.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-nexttoward.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-nexttowardf.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-pow.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-pow10.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-remainder.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-remquo.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-rint.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-round.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-scalb.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-scalbln.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-scalbn.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-significand.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-sin.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-sincos.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-sinh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-sqrt.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-tan.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-tanh.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-tgamma.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-trunc.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-y0.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-y1.c): Likewise.
+	[$(subdir) = math] (CFLAGS-nldbl-yn.c): Likewise.
+
+	* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
+	(INTERNAL_SYSCALL_DECL): Use __attribute__ ((unused)).
+
+	[BZ #14914]
+	* sysdeps/ieee754/ldbl-128ibm/e_powl.c (__ieee754_powl): Clear
+	whole low double instead of just low 47 bits when splitting values
+	into two parts.
+
 2012-12-03  Allan McRae  <allan@xxxxxxxxxxxxx>
 
 	* manual/stdio.texi (Predefined Printf Handlers): Remove

Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Wed Dec  5 00:02:16 2012
@@ -22,7 +22,7 @@
   14661, 14669, 14672, 14683, 14694, 14716, 14719, 14743, 14767, 14783,
   14784, 14785, 14793, 14796, 14797, 14801, 14803, 14805, 14807, 14811,
   14815, 14821, 14822, 14824, 14828, 14831, 14835, 14838, 14856, 14863,
-  14865, 14866, 14868, 14869, 14871, 14879, 14889, 14893.
+  14865, 14866, 14868, 14869, 14871, 14879, 14889, 14893, 14914.
 
 * CVE-2011-4609 svc_run() produces high cpu usage when accept fails with
   EMFILE has been fixed (Bugzilla #14889).

Modified: fsf/trunk/libc/nptl/ChangeLog
==============================================================================
--- fsf/trunk/libc/nptl/ChangeLog (original)
+++ fsf/trunk/libc/nptl/ChangeLog Wed Dec  5 00:02:16 2012
@@ -1,3 +1,9 @@
+2012-12-04  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/powerpc/sem_post.c (__old_sem_post):
+	Cast result of atomic_increment_val to (void) instead of storing
+	in otherwise-unused variable.
+
 2012-12-03  Allan McRae  <allan@xxxxxxxxxxxxx>
 
 	* Makefile (LDFLAGS-tst-cond24, LDFLAGS-tst-cond25): Remove.

Modified: fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/powerpc/sem_post.c
==============================================================================
--- fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/powerpc/sem_post.c (original)
+++ fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/powerpc/sem_post.c Wed Dec  5 00:02:16 2012
@@ -1,5 +1,5 @@
 /* sem_post -- post to a POSIX semaphore.  Powerpc version.
-   Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc.
+   Copyright (C) 2003-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Paul Mackerras <paulus@xxxxxxxxxx>, 2003.
 
@@ -56,7 +56,7 @@
   int *futex = (int *) sem;
 
   __asm __volatile (__lll_rel_instr ::: "memory");
-  int nr = atomic_increment_val (futex);
+  (void) atomic_increment_val (futex);
   /* We always have to assume it is a shared semaphore.  */
   int err = lll_futex_wake (futex, 1, LLL_SHARED);
   if (__builtin_expect (err, 0) < 0)

Modified: fsf/trunk/libc/ports/ChangeLog.aarch64
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.aarch64 (original)
+++ fsf/trunk/libc/ports/ChangeLog.aarch64 Wed Dec  5 00:02:16 2012
@@ -1,3 +1,12 @@
+2012-12-04  Steve McIntyre <steve.mcintyre@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/aarch64/ldconfig.h: Add entries
+        for /lib/ld-linux.so.3 and /lib/ld-linux-armhf.so.3.
+
+2012-12-04  Steve McIntyre <steve.mcintyre@xxxxxxxxxx>
+
+        * sysdeps/unix/sysv/linux/aarch64/readelflib.c: New file.
+
 2012-11-29  Steve McIntyre <steve.mcintyre@xxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/aarch64/dl-cache.h: New file.

Modified: fsf/trunk/libc/ports/ChangeLog.arm
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.arm (original)
+++ fsf/trunk/libc/ports/ChangeLog.arm Wed Dec  5 00:02:16 2012
@@ -1,3 +1,15 @@
+2012-12-04  Steve McIntyre  <steve.mcintyre@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/arm/dl-cache.h: New file.
+
+2012-12-04  Steve McIntyre  <steve.mcintyre@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/arm/ldconfig.h: New file.
+
+2012-12-04  Steve McIntyre  <steve.mcintyre@xxxxxxxxxx>
+
+        * sysdeps/unix/sysv/linux/arm/readelflib.c: New file.
+
 2012-11-30  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/arm/libm-test-ulps: Update.

Modified: fsf/trunk/libc/ports/ChangeLog.mips
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.mips (original)
+++ fsf/trunk/libc/ports/ChangeLog.mips Wed Dec  5 00:02:16 2012
@@ -1,3 +1,10 @@
+2012-12-04  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/mips/fpu_control.h [__mips_soft_float] (_FPU_GETCW):
+	Define to set cw to 0, not just to plain "0" as a statement.
+	[__mips_soft_float] (_FPU_SETCW): Define to (void) (cw), rather
+	than doing nothing with cw.
+
 2012-11-30  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/mips/mips32/libm-test-ulps: Update.

Modified: fsf/trunk/libc/ports/sysdeps/mips/fpu_control.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/mips/fpu_control.h (original)
+++ fsf/trunk/libc/ports/sysdeps/mips/fpu_control.h Wed Dec  5 00:02:16 2012
@@ -1,6 +1,5 @@
 /* FPU control word bits.  Mips version.
-   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2006, 2008
-   Free Software Foundation, Inc.
+   Copyright (C) 1996-2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Olaf Flebbe and Ralf Baechle.
 
@@ -63,8 +62,8 @@
 #define _FPU_RESERVED 0xffffffff
 #define _FPU_DEFAULT  0x00000000
 typedef unsigned int fpu_control_t;
-#define _FPU_GETCW(cw) 0
-#define _FPU_SETCW(cw) do { } while (0)
+#define _FPU_GETCW(cw) (cw) = 0
+#define _FPU_SETCW(cw) (void) (cw)
 extern fpu_control_t __fpu_control;
 
 #else /* __mips_soft_float */

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/ldconfig.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/ldconfig.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/ldconfig.h Wed Dec  5 00:02:16 2012
@@ -19,7 +19,9 @@
 #include <sysdeps/generic/ldconfig.h>
 
 #define SYSDEP_KNOWN_INTERPRETER_NAMES \
-  { "/lib/ld-linux-aarch64.so.1", FLAG_ELF_LIBC6 },
+  { "/lib/ld-linux-aarch64.so.1", FLAG_ELF_LIBC6 }, \
+  { "/lib/ld-linux.so.3", FLAG_ELF_LIBC6 }, \
+  { "/lib/ld-linux-armhf.so.3", FLAG_ELF_LIBC6 },
 #define SYSDEP_KNOWN_LIBRARY_NAMES \
   { "libc.so.6", FLAG_ELF_LIBC6 },	\
   { "libm.so.6", FLAG_ELF_LIBC6 },

Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/readelflib.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/readelflib.c (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/readelflib.c Wed Dec  5 00:02:16 2012
@@ -1,0 +1,18 @@
+/* Copyright (C) 2012 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <http://www.gnu.org/licenses/>.  */
+
+#include "../arm/readelflib.c"

Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/dl-cache.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/dl-cache.h (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/dl-cache.h Wed Dec  5 00:02:16 2012
@@ -1,0 +1,29 @@
+/* Support for reading /etc/ld.so.cache files written by Linux ldconfig.
+   Copyright (C) 2003-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/>.  */
+
+#include <ldconfig.h>
+
+#ifdef __ARM_PCS_VFP
+# define _dl_cache_check_flags(flags) \
+  ((flags) == (FLAG_ARM_LIBHF | FLAG_ELF_LIBC6))
+#else
+# define _dl_cache_check_flags(flags) \
+  ((flags) == FLAG_ELF_LIBC6)
+#endif
+
+#include_next <dl-cache.h>

Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/ldconfig.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/ldconfig.h (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/ldconfig.h Wed Dec  5 00:02:16 2012
@@ -1,0 +1,25 @@
+/* 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/>.  */
+
+#include <sysdeps/generic/ldconfig.h>
+
+#define SYSDEP_KNOWN_INTERPRETER_NAMES \
+  { "/lib/ld-linux.so.3", FLAG_ELF_LIBC6 }, \
+  { "/lib/ld-linux-armhf.so.3", FLAG_ELF_LIBC6 },
+#define SYSDEP_KNOWN_LIBRARY_NAMES \
+  { "libc.so.6", FLAG_ELF_LIBC6 },	\
+  { "libm.so.6", FLAG_ELF_LIBC6 },

Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/readelflib.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/readelflib.c (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/arm/readelflib.c Wed Dec  5 00:02:16 2012
@@ -1,0 +1,73 @@
+/* Copyright (C) 1999-2012 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Andreas Jaeger <aj@xxxxxxx>, 1999 and
+		  Jakub Jelinek <jakub@xxxxxxxxxx>, 1999.
+
+   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/>.  */
+
+
+int process_elf32_file (const char *file_name, const char *lib, int *flag,
+			unsigned int *osversion, char **soname,
+			void *file_contents, size_t file_length);
+int process_elf64_file (const char *file_name, const char *lib, int *flag,
+			unsigned int *osversion, char **soname,
+			void *file_contents, size_t file_length);
+
+/* Returns 0 if everything is ok, != 0 in case of error.  */
+int
+process_elf_file (const char *file_name, const char *lib, int *flag,
+		  unsigned int *osversion, char **soname, void *file_contents,
+		  size_t file_length)
+{
+  ElfW(Ehdr) *elf_header = (ElfW(Ehdr) *) file_contents;
+  int ret;
+
+  if (elf_header->e_ident [EI_CLASS] == ELFCLASS32)
+    {
+      Elf32_Ehdr *elf32_header = (Elf32_Ehdr *) elf_header;
+
+      ret = process_elf32_file (file_name, lib, flag, osversion, soname,
+				file_contents, file_length);
+
+      if (!ret && EF_ARM_EABI_VERSION (elf32_header->e_flags) == EF_ARM_EABI_VER5)
+	{
+	  if (elf32_header->e_flags & EF_ARM_ABI_FLOAT_HARD)
+	    *flag = FLAG_ARM_LIBHF|FLAG_ELF_LIBC6;
+	  else if (elf32_header->e_flags & EF_ARM_ABI_FLOAT_SOFT)
+	    *flag = FLAG_ELF_LIBC6;
+	}
+    }
+  else
+    {
+      ret = process_elf64_file (file_name, lib, flag, osversion, soname,
+				file_contents, file_length);
+      /* AArch64 libraries are always libc.so.6+.  */
+      if (!ret)
+	*flag = FLAG_AARCH64_LIB64|FLAG_ELF_LIBC6;
+    }
+  return ret;
+}
+
+#undef __ELF_NATIVE_CLASS
+#undef process_elf_file
+#define process_elf_file process_elf32_file
+#define __ELF_NATIVE_CLASS 32
+#include "elf/readelflib.c"
+
+#undef __ELF_NATIVE_CLASS
+#undef process_elf_file
+#define process_elf_file process_elf64_file
+#define __ELF_NATIVE_CLASS 64
+#include "elf/readelflib.c"

Modified: fsf/trunk/libc/sysdeps/generic/memcopy.h
==============================================================================
--- fsf/trunk/libc/sysdeps/generic/memcopy.h (original)
+++ fsf/trunk/libc/sysdeps/generic/memcopy.h Wed Dec  5 00:02:16 2012
@@ -1,5 +1,5 @@
 /* memcopy.h -- definitions for memory copy functions.  Generic C version.
-   Copyright (C) 1991, 1992, 1993, 1997, 2004 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1992, 1993, 1997, 2004, 2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Torbjorn Granlund (tege@xxxxxxx).
 
@@ -16,6 +16,9 @@
    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 _MEMCOPY_H
+#define _MEMCOPY_H	1
 
 /* The strategy of the memory functions is:
 
@@ -144,3 +147,5 @@
 
 /* Threshold value for when to enter the unrolled loops.  */
 #define	OP_T_THRES	16
+
+#endif /* memcopy.h */

Modified: fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c
==============================================================================
--- fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c (original)
+++ fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c Wed Dec  5 00:02:16 2012
@@ -40,7 +40,7 @@
 {
 	long double t;
 	int64_t hx,ix;
-	u_int64_t lx;
+	u_int64_t lx __attribute__ ((unused));
 	GET_LDOUBLE_WORDS64(hx,lx,x);
 	ix = hx&0x7fffffffffffffffLL;
 	if (ix >= 0x3ff0000000000000LL) { /* |x|>=1 */

Modified: fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_powl.c
==============================================================================
--- fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_powl.c (original)
+++ fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_powl.c Wed Dec  5 00:02:16 2012
@@ -324,13 +324,13 @@
 
   o.value = s_h;
   o.parts32.w3 = 0;
-  o.parts32.w2 &= 0xffff8000;
+  o.parts32.w2 = 0;
   s_h = o.value;
   /* t_h=ax+bp[k] High */
   t_h = ax + bp[k];
   o.value = t_h;
   o.parts32.w3 = 0;
-  o.parts32.w2 &= 0xffff8000;
+  o.parts32.w2 = 0;
   t_h = o.value;
   t_l = ax - (t_h - bp[k]);
   s_l = v * ((u - s_h * t_h) - s_h * t_l);
@@ -344,7 +344,7 @@
   t_h = 3.0 + s2 + r;
   o.value = t_h;
   o.parts32.w3 = 0;
-  o.parts32.w2 &= 0xffff8000;
+  o.parts32.w2 = 0;
   t_h = o.value;
   t_l = r - ((t_h - 3.0) - s2);
   /* u+v = s*(1+...) */
@@ -354,7 +354,7 @@
   p_h = u + v;
   o.value = p_h;
   o.parts32.w3 = 0;
-  o.parts32.w2 &= 0xffff8000;
+  o.parts32.w2 = 0;
   p_h = o.value;
   p_l = v - (p_h - u);
   z_h = cp_h * p_h;		/* cp_h+cp_l = 2/(3*log2) */
@@ -364,7 +364,7 @@
   t1 = (((z_h + z_l) + dp_h[k]) + t);
   o.value = t1;
   o.parts32.w3 = 0;
-  o.parts32.w2 &= 0xffff8000;
+  o.parts32.w2 = 0;
   t1 = o.value;
   t2 = z_l - (((t1 - t) - dp_h[k]) - z_h);
 
@@ -377,7 +377,7 @@
   y1 = y;
   o.value = y1;
   o.parts32.w3 = 0;
-  o.parts32.w2 &= 0xffff8000;
+  o.parts32.w2 = 0;
   y1 = o.value;
   p_l = (y - y1) * t1 + y * t2;
   p_h = y1 * t1;
@@ -421,7 +421,7 @@
   t = p_l + p_h;
   o.value = t;
   o.parts32.w3 = 0;
-  o.parts32.w2 &= 0xffff8000;
+  o.parts32.w2 = 0;
   t = o.value;
   u = t * lg2_h;
   v = (p_l - (t - p_h)) * lg2 + t * lg2_l;

Modified: fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
==============================================================================
--- fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c (original)
+++ fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c Wed Dec  5 00:02:16 2012
@@ -200,7 +200,8 @@
   double tx[8];
   int exp;
   int64_t n, ix, hx, ixd;
-  u_int64_t lx, lxd;
+  u_int64_t lx __attribute__ ((unused));
+  u_int64_t lxd;
 
   GET_LDOUBLE_WORDS64 (hx, lx, x);
   ix = hx & 0x7fffffffffffffffLL;

Modified: fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c
==============================================================================
--- fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c (original)
+++ fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c Wed Dec  5 00:02:16 2012
@@ -29,7 +29,8 @@
 int
 ___isnanl (long double x)
 {
-	int64_t hx,lx;
+	int64_t hx;
+	int64_t lx __attribute__ ((unused));
 	GET_LDOUBLE_WORDS64(hx,lx,x);
 	hx &= 0x7fffffffffffffffLL;
 	hx = 0x7ff0000000000000LL - hx;

Modified: fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_logbl.c
==============================================================================
--- fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_logbl.c (original)
+++ fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_logbl.c Wed Dec  5 00:02:16 2012
@@ -26,7 +26,8 @@
 long double
 __logbl (long double x)
 {
-  int64_t lx, hx, rhx;
+  int64_t hx, rhx;
+  int64_t lx __attribute__ ((unused));
 
   GET_LDOUBLE_WORDS64 (hx, lx, x);
   hx &= 0x7fffffffffffffffLL;	/* high |x| */

Modified: fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
==============================================================================
--- fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (original)
+++ fsf/trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c Wed Dec  5 00:02:16 2012
@@ -31,7 +31,8 @@
 long double __nextafterl(long double x, long double y)
 {
 	int64_t hx,hy,ihx,ihy,ilx;
-	u_int64_t lx,ly;
+	u_int64_t lx;
+	u_int64_t ly __attribute__ ((unused));
 
 	GET_LDOUBLE_WORDS64(hx,lx,x);
 	GET_LDOUBLE_WORDS64(hy,ly,y);

Modified: fsf/trunk/libc/sysdeps/ieee754/ldbl-opt/Makefile
==============================================================================
--- fsf/trunk/libc/sysdeps/ieee754/ldbl-opt/Makefile (original)
+++ fsf/trunk/libc/sysdeps/ieee754/ldbl-opt/Makefile Wed Dec  5 00:02:16 2012
@@ -46,4 +46,103 @@
 libnldbl-static-only-routines = $(libnldbl-routines)
 extra-objs += $(addsuffix .oS, $(libnldbl-routines))
 
+CFLAGS-nldbl-acos.c = -fno-builtin-acosl
+CFLAGS-nldbl-acosh.c = -fno-builtin-acoshl
+CFLAGS-nldbl-asin.c = -fno-builtin-asinl
+CFLAGS-nldbl-asinh.c = -fno-builtin-asinhl
+CFLAGS-nldbl-atan.c = -fno-builtin-atanl
+CFLAGS-nldbl-atan2.c = -fno-builtin-atan2l
+CFLAGS-nldbl-atanh.c = -fno-builtin-atanhl
+CFLAGS-nldbl-cabs.c = -fno-builtin-cabsl
+CFLAGS-nldbl-cacos.c = -fno-builtin-cacosl
+CFLAGS-nldbl-cacosh.c = -fno-builtin-cacoshl
+CFLAGS-nldbl-carg.c = -fno-builtin-cargl
+CFLAGS-nldbl-casin.c = -fno-builtin-casinl
+CFLAGS-nldbl-casinh.c = -fno-builtin-casinhl
+CFLAGS-nldbl-catan.c = -fno-builtin-catanl
+CFLAGS-nldbl-catanh.c = -fno-builtin-catanhl
+CFLAGS-nldbl-cbrt.c = -fno-builtin-cbrtl
+CFLAGS-nldbl-ccos.c = -fno-builtin-ccosl
+CFLAGS-nldbl-ccosh.c = -fno-builtin-ccoshl
+CFLAGS-nldbl-ceil.c = -fno-builtin-ceill
+CFLAGS-nldbl-cexp.c = -fno-builtin-cexpl
+CFLAGS-nldbl-cimag.c = -fno-builtin-cimagl
+CFLAGS-nldbl-clog.c = -fno-builtin-clogl
+CFLAGS-nldbl-clog10.c = -fno-builtin-clog10l
+CFLAGS-nldbl-conj.c = -fno-builtin-conjl
+CFLAGS-nldbl-copysign.c = -fno-builtin-copysignl
+CFLAGS-nldbl-cos.c = -fno-builtin-cosl
+CFLAGS-nldbl-cosh.c = -fno-builtin-coshl
+CFLAGS-nldbl-cpow.c = -fno-builtin-cpowl
+CFLAGS-nldbl-cproj.c = -fno-builtin-cprojl
+CFLAGS-nldbl-creal.c = -fno-builtin-creall
+CFLAGS-nldbl-csin.c = -fno-builtin-csinl
+CFLAGS-nldbl-csinh.c = -fno-builtin-csinhl
+CFLAGS-nldbl-csqrt.c = -fno-builtin-csqrtl
+CFLAGS-nldbl-ctan.c = -fno-builtin-ctanl
+CFLAGS-nldbl-ctanh.c = -fno-builtin-ctanhl
+CFLAGS-nldbl-drem.c = -fno-builtin-dreml
+CFLAGS-nldbl-erf.c = -fno-builtin-erfl
+CFLAGS-nldbl-erfc.c = -fno-builtin-erfcl
+CFLAGS-nldbl-exp.c = -fno-builtin-expl
+CFLAGS-nldbl-exp10.c = -fno-builtin-exp10l
+CFLAGS-nldbl-exp2.c = -fno-builtin-exp2l
+CFLAGS-nldbl-expm1.c = -fno-builtin-expm1l
+CFLAGS-nldbl-fabs.c = -fno-builtin-fabsl
+CFLAGS-nldbl-fdim.c = -fno-builtin-fdiml
+CFLAGS-nldbl-finite.c = -fno-builtin-finitel
+CFLAGS-nldbl-floor.c = -fno-builtin-floorl
+CFLAGS-nldbl-fma.c = -fno-builtin-fmal
+CFLAGS-nldbl-fmax.c = -fno-builtin-fmaxl
+CFLAGS-nldbl-fmin.c = -fno-builtin-fminl
+CFLAGS-nldbl-fmod.c = -fno-builtin-fmodl
+CFLAGS-nldbl-frexp.c = -fno-builtin-frexpl
+CFLAGS-nldbl-gamma.c = -fno-builtin-gammal
+CFLAGS-nldbl-hypot.c = -fno-builtin-hypotl
+CFLAGS-nldbl-ilogb.c = -fno-builtin-ilogbl
+CFLAGS-nldbl-isinf.c = -fno-builtin-isinfl
+CFLAGS-nldbl-isnan.c = -fno-builtin-isnanl
+CFLAGS-nldbl-j0.c = -fno-builtin-j0l
+CFLAGS-nldbl-j1.c = -fno-builtin-j1l
+CFLAGS-nldbl-jn.c = -fno-builtin-jnl
+CFLAGS-nldbl-ldexp.c = -fno-builtin-ldexpl
+CFLAGS-nldbl-lgamma.c = -fno-builtin-lgammal
+CFLAGS-nldbl-lgamma_r.c = -fno-builtin-lgammal_r
+CFLAGS-nldbl-llrint.c = -fno-builtin-llrintl
+CFLAGS-nldbl-llround.c = -fno-builtin-llroundl
+CFLAGS-nldbl-log.c = -fno-builtin-logl
+CFLAGS-nldbl-log10.c = -fno-builtin-log10l
+CFLAGS-nldbl-log1p.c = -fno-builtin-log1pl
+CFLAGS-nldbl-log2.c = -fno-builtin-log2l
+CFLAGS-nldbl-logb.c = -fno-builtin-logbl
+CFLAGS-nldbl-lrint.c = -fno-builtin-lrintl
+CFLAGS-nldbl-lround.c = -fno-builtin-lroundl
+CFLAGS-nldbl-modf.c = -fno-builtin-modfl
+CFLAGS-nldbl-nan.c = -fno-builtin-nanl
+CFLAGS-nldbl-nearbyint.c = -fno-builtin-nearbyintl
+CFLAGS-nldbl-nextafter.c = -fno-builtin-nextafterl
+CFLAGS-nldbl-nexttoward.c = -fno-builtin-nexttoward -fno-builtin-nexttowardl
+CFLAGS-nldbl-nexttowardf.c = -fno-builtin-nexttowardf
+CFLAGS-nldbl-pow.c = -fno-builtin-powl
+CFLAGS-nldbl-pow10.c = -fno-builtin-pow10l
+CFLAGS-nldbl-remainder.c = -fno-builtin-remainderl
+CFLAGS-nldbl-remquo.c = -fno-builtin-remquol
+CFLAGS-nldbl-rint.c = -fno-builtin-rintl
+CFLAGS-nldbl-round.c = -fno-builtin-roundl
+CFLAGS-nldbl-scalb.c = -fno-builtin-scalbl
+CFLAGS-nldbl-scalbln.c = -fno-builtin-scalblnl
+CFLAGS-nldbl-scalbn.c = -fno-builtin-scalbnl
+CFLAGS-nldbl-significand.c = -fno-builtin-significandl
+CFLAGS-nldbl-sin.c = -fno-builtin-sinl
+CFLAGS-nldbl-sincos.c = -fno-builtin-sincosl
+CFLAGS-nldbl-sinh.c = -fno-builtin-sinhl
+CFLAGS-nldbl-sqrt.c = -fno-builtin-sqrtl
+CFLAGS-nldbl-tan.c = -fno-builtin-tanl
+CFLAGS-nldbl-tanh.c = -fno-builtin-tanhl
+CFLAGS-nldbl-tgamma.c = -fno-builtin-tgammal
+CFLAGS-nldbl-trunc.c = -fno-builtin-truncl
+CFLAGS-nldbl-y0.c = -fno-builtin-y0l
+CFLAGS-nldbl-y1.c = -fno-builtin-y1l
+CFLAGS-nldbl-yn.c = -fno-builtin-ynl
+
 endif

Modified: fsf/trunk/libc/sysdeps/powerpc/sysdep.h
==============================================================================
--- fsf/trunk/libc/sysdeps/powerpc/sysdep.h (original)
+++ fsf/trunk/libc/sysdeps/powerpc/sysdep.h Wed Dec  5 00:02:16 2012
@@ -19,7 +19,7 @@
  * Powerpc Feature masks for the Aux Vector Hardware Capabilities (AT_HWCAP). 
  * This entry is copied to _dl_hwcap or rtld_global._dl_hwcap during startup.
  */
-#define _SYS_AUXV_H
+#define _SYS_AUXV_H 1
 #include <bits/hwcap.h>
 
 #define PPC_FEATURE_970 (PPC_FEATURE_POWER4 + PPC_FEATURE_HAS_ALTIVEC)

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h Wed Dec  5 00:02:16 2012
@@ -175,7 +175,7 @@
    an error return status).  */
 
 # undef INTERNAL_SYSCALL_DECL
-# define INTERNAL_SYSCALL_DECL(err) long int err
+# define INTERNAL_SYSCALL_DECL(err) long int err __attribute__ ((unused))
 
 # undef INTERNAL_SYSCALL
 # define INTERNAL_SYSCALL_NCS(name, err, nr, args...)			\

_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits