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

[Commits] r17701 - in /trunk: ./ libc/ libc/conform/ libc/debug/ libc/elf/ libc/hurd/ libc/malloc/ libc/manual/ libc/math/ libc/nptl/ ...



Author: joseph
Date: Wed Mar 21 20:25:11 2012
New Revision: 17701

Log:
Merge changes between r17530 and r17700 from /fsf/trunk.

Added:
    trunk/libc/sysdeps/generic/_itoa.h
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/generic/_itoa.h
    trunk/libc/sysdeps/i386/fpu/fenv_private.h
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/i386/fpu/fenv_private.h
    trunk/libc/sysdeps/ieee754/dbl-64/wordsize-64/math_private.h
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/ieee754/dbl-64/wordsize-64/math_private.h
    trunk/libc/sysdeps/ieee754/flt-32/math_private.h
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/ieee754/flt-32/math_private.h
    trunk/libc/sysdeps/ieee754/ldbl-96/e_rem_pio2l.c
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/ieee754/ldbl-96/e_rem_pio2l.c
    trunk/libc/sysdeps/ieee754/ldbl-96/k_cosl.c
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/ieee754/ldbl-96/k_cosl.c
    trunk/libc/sysdeps/ieee754/ldbl-96/k_sinl.c
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/ieee754/ldbl-96/k_sinl.c
    trunk/libc/sysdeps/ieee754/ldbl-96/k_tanl.c
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/ieee754/ldbl-96/k_tanl.c
    trunk/libc/sysdeps/ieee754/ldbl-96/t_sincosl.c
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/ieee754/ldbl-96/t_sincosl.c
    trunk/libc/sysdeps/sparc/configure
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/configure
    trunk/libc/sysdeps/sparc/configure.in
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/configure.in
    trunk/libc/sysdeps/sparc/fpu/fenv_private.h
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/fpu/fenv_private.h
    trunk/libc/sysdeps/sparc/fpu/math_private.h
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/fpu/math_private.h
    trunk/libc/sysdeps/sparc/sparc-ifunc.h
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc-ifunc.h
    trunk/libc/sysdeps/sparc/sparc32/fpu/s_fma.c
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc32/fpu/s_fma.c
    trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/
      - copied from r17700, fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/
    trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S
    trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmaxf.S
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmaxf.S
    trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S
    trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/s_fminf.S
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/s_fminf.S
    trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/unix/
      - copied from r17700, fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/fpu/unix/
    trunk/libc/sysdeps/sparc/sparc64/fpu/multiarch/
      - copied from r17700, fsf/trunk/libc/sysdeps/sparc/sparc64/fpu/multiarch/
    trunk/libc/sysdeps/sparc/sparc64/fpu/s_fma.c
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc64/fpu/s_fma.c
    trunk/libc/sysdeps/sparc/sparc64/fpu/s_fmax.S
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc64/fpu/s_fmax.S
    trunk/libc/sysdeps/sparc/sparc64/fpu/s_fmaxf.S
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc64/fpu/s_fmaxf.S
    trunk/libc/sysdeps/sparc/sparc64/fpu/s_fmin.S
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc64/fpu/s_fmin.S
    trunk/libc/sysdeps/sparc/sparc64/fpu/s_fminf.S
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/sparc/sparc64/fpu/s_fminf.S
    trunk/libc/sysdeps/unix/sysv/linux/sparc/getshmlba.c
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/getshmlba.c
    trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c
      - copied unchanged from r17700, fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c
    trunk/ports/sysdeps/alpha/fpu/math_private.h
      - copied unchanged from r17700, fsf/trunk/ports/sysdeps/alpha/fpu/math_private.h
    trunk/ports/sysdeps/unix/sysv/linux/alpha/bits/socket_type.h
      - copied unchanged from r17700, fsf/trunk/ports/sysdeps/unix/sysv/linux/alpha/bits/socket_type.h
Removed:
    trunk/libc/NOTES
    trunk/libc/stdio-common/_itoa.h
    trunk/libc/sysdeps/i386/fpu/branred.c
    trunk/libc/sysdeps/i386/fpu/dosincos.c
    trunk/libc/sysdeps/i386/fpu/e_rem_pio2f.c
    trunk/libc/sysdeps/i386/fpu/e_rem_pio2l.c
    trunk/libc/sysdeps/i386/fpu/k_rem_pio2.c
    trunk/libc/sysdeps/i386/fpu/k_rem_pio2f.c
    trunk/libc/sysdeps/i386/fpu/mpa.c
    trunk/libc/sysdeps/i386/fpu/mptan.c
    trunk/libc/sysdeps/i386/fpu/s_cexp.S
    trunk/libc/sysdeps/i386/fpu/s_cexpf.S
    trunk/libc/sysdeps/i386/fpu/s_cexpl.S
    trunk/libc/sysdeps/i386/fpu/s_cos.S
    trunk/libc/sysdeps/i386/fpu/s_cosf.S
    trunk/libc/sysdeps/i386/fpu/s_cosl.S
    trunk/libc/sysdeps/i386/fpu/s_sin.S
    trunk/libc/sysdeps/i386/fpu/s_sincos.S
    trunk/libc/sysdeps/i386/fpu/s_sincosf.S
    trunk/libc/sysdeps/i386/fpu/s_sincosl.S
    trunk/libc/sysdeps/i386/fpu/s_sinf.S
    trunk/libc/sysdeps/i386/fpu/s_sinl.S
    trunk/libc/sysdeps/i386/fpu/s_tan.S
    trunk/libc/sysdeps/i386/fpu/s_tanf.S
    trunk/libc/sysdeps/i386/fpu/s_tanl.S
    trunk/libc/sysdeps/i386/fpu/sincos32.c
    trunk/libc/sysdeps/sparc/elf/rtld-global-offsets.sym
    trunk/libc/sysdeps/unix/errnos-tmpl.c
    trunk/libc/sysdeps/unix/errnos.awk
    trunk/libc/sysdeps/unix/ioctls-tmpl.c
    trunk/libc/sysdeps/unix/ioctls.awk
    trunk/libc/sysdeps/unix/mk-local_lim.c
    trunk/libc/sysdeps/unix/snarf-ioctls
    trunk/libc/sysdeps/x86_64/fpu/e_rem_pio2l.c
    trunk/libc/sysdeps/x86_64/fpu/k_cosl.c
    trunk/libc/sysdeps/x86_64/fpu/k_sinl.c
    trunk/libc/sysdeps/x86_64/fpu/k_tanl.c
    trunk/libc/sysdeps/x86_64/fpu/s_cosl.S
    trunk/libc/sysdeps/x86_64/fpu/s_sincos.S
    trunk/libc/sysdeps/x86_64/fpu/s_sincosl.S
    trunk/libc/sysdeps/x86_64/fpu/s_sinl.S
    trunk/libc/sysdeps/x86_64/fpu/s_tanl.S
    trunk/ports/sysdeps/unix/sysv/linux/alpha/bits/socket.h
Modified:
    trunk/   (props changed)
    trunk/libc/ChangeLog
    trunk/libc/Makefile
    trunk/libc/Makerules
    trunk/libc/NEWS
    trunk/libc/README
    trunk/libc/aclocal.m4
    trunk/libc/config.h.in
    trunk/libc/config.make.in
    trunk/libc/configure
    trunk/libc/configure.in
    trunk/libc/conform/conformtest.pl
    trunk/libc/conform/run-conformtest.sh
    trunk/libc/debug/backtracesymsfd.c
    trunk/libc/debug/segfault.c
    trunk/libc/elf/cache.c
    trunk/libc/elf/dl-cache.c
    trunk/libc/elf/dl-minimal.c
    trunk/libc/elf/dl-misc.c
    trunk/libc/elf/dl-sysdep.c
    trunk/libc/elf/dl-version.c
    trunk/libc/elf/rtld.c
    trunk/libc/elf/sotruss-lib.c
    trunk/libc/hurd/hurdsock.c
    trunk/libc/hurd/lookup-retry.c
    trunk/libc/malloc/malloc.c
    trunk/libc/malloc/mtrace.c
    trunk/libc/manual/creature.texi
    trunk/libc/manual/intro.texi
    trunk/libc/manual/lang.texi
    trunk/libc/manual/llio.texi
    trunk/libc/math/gen-libm-test.pl
    trunk/libc/math/libm-test.inc
    trunk/libc/math/s_clog.c
    trunk/libc/math/s_clog10.c
    trunk/libc/math/s_clog10f.c
    trunk/libc/math/s_clog10l.c
    trunk/libc/math/s_clogf.c
    trunk/libc/math/s_clogl.c
    trunk/libc/math/s_csqrt.c
    trunk/libc/math/s_csqrtf.c
    trunk/libc/math/s_csqrtl.c
    trunk/libc/math/w_exp2.c
    trunk/libc/math/w_exp2f.c
    trunk/libc/math/w_exp2l.c
    trunk/libc/math/w_j0.c
    trunk/libc/math/w_j0f.c
    trunk/libc/math/w_j0l.c
    trunk/libc/math/w_j1.c
    trunk/libc/math/w_j1f.c
    trunk/libc/math/w_j1l.c
    trunk/libc/math/w_jn.c
    trunk/libc/math/w_jnf.c
    trunk/libc/math/w_jnl.c
    trunk/libc/nptl/ChangeLog
    trunk/libc/nptl/sysdeps/unix/sysv/linux/libc-lowlevellock.c
    trunk/libc/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
    trunk/libc/nptl/sysdeps/x86_64/pthreaddef.h
    trunk/libc/nptl/unwind.c
    trunk/libc/nscd/nscd_getgr_r.c
    trunk/libc/nscd/nscd_getpw_r.c
    trunk/libc/nscd/nscd_getserv_r.c
    trunk/libc/nss/nss_db/db-init.c
    trunk/libc/posix/getopt_init.c
    trunk/libc/posix/wordexp.c
    trunk/libc/stdio-common/_itoa.c
    trunk/libc/stdio-common/_itowa.c
    trunk/libc/stdio-common/printf_fphex.c
    trunk/libc/stdio-common/vfprintf.c
    trunk/libc/string/_strerror.c
    trunk/libc/sysdeps/generic/dl-osinfo.h
    trunk/libc/sysdeps/generic/elf/backtracesymsfd.c
    trunk/libc/sysdeps/generic/ldconfig.h
    trunk/libc/sysdeps/generic/math_private.h
    trunk/libc/sysdeps/i386/configure
    trunk/libc/sysdeps/i386/configure.in
    trunk/libc/sysdeps/i386/fpu/e_pow.S
    trunk/libc/sysdeps/i386/fpu/e_powf.S
    trunk/libc/sysdeps/i386/fpu/e_powl.S
    trunk/libc/sysdeps/i386/fpu/feholdexcpt.c
    trunk/libc/sysdeps/i386/fpu/libm-test-ulps
    trunk/libc/sysdeps/i386/fpu/math_private.h
    trunk/libc/sysdeps/i386/i686/hp-timing.h
    trunk/libc/sysdeps/ieee754/dbl-64/e_atan2.c
    trunk/libc/sysdeps/ieee754/dbl-64/e_exp.c
    trunk/libc/sysdeps/ieee754/dbl-64/e_exp2.c
    trunk/libc/sysdeps/ieee754/dbl-64/e_pow.c
    trunk/libc/sysdeps/ieee754/dbl-64/k_rem_pio2.c
    trunk/libc/sysdeps/ieee754/dbl-64/s_fma.c
    trunk/libc/sysdeps/ieee754/dbl-64/s_fmaf.c
    trunk/libc/sysdeps/ieee754/dbl-64/s_nearbyint.c
    trunk/libc/sysdeps/ieee754/dbl-64/s_rint.c
    trunk/libc/sysdeps/ieee754/dbl-64/s_sin.c
    trunk/libc/sysdeps/ieee754/dbl-64/s_tan.c
    trunk/libc/sysdeps/ieee754/dbl-64/wordsize-64/s_llround.c
    trunk/libc/sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c
    trunk/libc/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c
    trunk/libc/sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c
    trunk/libc/sysdeps/ieee754/flt-32/e_exp2f.c
    trunk/libc/sysdeps/ieee754/flt-32/e_expf.c
    trunk/libc/sysdeps/ieee754/flt-32/e_hypotf.c
    trunk/libc/sysdeps/ieee754/ldbl-128/s_expm1l.c
    trunk/libc/sysdeps/ieee754/ldbl-96/s_cosl.c
    trunk/libc/sysdeps/ieee754/ldbl-96/s_sinl.c
    trunk/libc/sysdeps/ieee754/ldbl-96/s_tanl.c
    trunk/libc/sysdeps/mach/_strerror.c
    trunk/libc/sysdeps/mach/hurd/powerpc/register-dump.h
    trunk/libc/sysdeps/mach/hurd/sethostid.c
    trunk/libc/sysdeps/mach/hurd/xmknodat.c
    trunk/libc/sysdeps/mach/xpg-strerror.c
    trunk/libc/sysdeps/powerpc/fpu/e_hypotf.c
    trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps
    trunk/libc/sysdeps/powerpc/powerpc32/dl-machine.c
    trunk/libc/sysdeps/powerpc/powerpc32/power4/hp-timing.h
    trunk/libc/sysdeps/powerpc/powerpc32/register-dump.h
    trunk/libc/sysdeps/powerpc/powerpc64/dl-machine.c
    trunk/libc/sysdeps/powerpc/powerpc64/hp-timing.h
    trunk/libc/sysdeps/powerpc/powerpc64/register-dump.h
    trunk/libc/sysdeps/sparc/Makefile
    trunk/libc/sysdeps/sparc/fpu/libm-test-ulps
    trunk/libc/sysdeps/sparc/sparc32/dl-machine.h
    trunk/libc/sysdeps/sparc/sparc32/dl-trampoline.S
    trunk/libc/sysdeps/sparc/sparc32/sparcv9/Makefile
    trunk/libc/sysdeps/sparc/sparc32/sparcv9/hp-timing.h
    trunk/libc/sysdeps/sparc/sparc64/Makefile
    trunk/libc/sysdeps/sparc/sparc64/dl-trampoline.S
    trunk/libc/sysdeps/sparc/sparc64/fpu/s_copysign.S
    trunk/libc/sysdeps/sparc/sparc64/fpu/s_copysignf.S
    trunk/libc/sysdeps/sparc/sparc64/hp-timing.h
    trunk/libc/sysdeps/sparc/sparc64/multiarch/memcpy.S
    trunk/libc/sysdeps/sparc/sparc64/multiarch/memset.S
    trunk/libc/sysdeps/unix/Makefile
    trunk/libc/sysdeps/unix/sysv/linux/Makefile
    trunk/libc/sysdeps/unix/sysv/linux/configure
    trunk/libc/sysdeps/unix/sysv/linux/configure.in
    trunk/libc/sysdeps/unix/sysv/linux/dl-osinfo.h
    trunk/libc/sysdeps/unix/sysv/linux/fd_to_filename.h
    trunk/libc/sysdeps/unix/sysv/linux/futimes.c
    trunk/libc/sysdeps/unix/sysv/linux/i386/readelflib.c
    trunk/libc/sysdeps/unix/sysv/linux/i386/register-dump.h
    trunk/libc/sysdeps/unix/sysv/linux/kernel-features.h
    trunk/libc/sysdeps/unix/sysv/linux/openat.c
    trunk/libc/sysdeps/unix/sysv/linux/ptsname.c
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h
    trunk/libc/sysdeps/unix/sysv/linux/sh/sh3/register-dump.h
    trunk/libc/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h
    trunk/libc/sysdeps/unix/sysv/linux/shmat.c
    trunk/libc/sysdeps/unix/sysv/linux/sparc/Makefile
    trunk/libc/sysdeps/unix/sysv/linux/sparc/Versions
    trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/shm.h
    trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h
    trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c
    trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/register-dump.h
    trunk/libc/sysdeps/unix/sysv/linux/sparc/sysdep.h
    trunk/libc/sysdeps/unix/sysv/linux/ttyname.c
    trunk/libc/sysdeps/unix/sysv/linux/ttyname_r.c
    trunk/libc/sysdeps/unix/sysv/linux/x86_64/dl-cache.h
    trunk/libc/sysdeps/unix/sysv/linux/x86_64/ldconfig.h
    trunk/libc/sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed
    trunk/libc/sysdeps/unix/sysv/linux/x86_64/makecontext.c
    trunk/libc/sysdeps/unix/sysv/linux/x86_64/readelflib.c
    trunk/libc/sysdeps/unix/sysv/linux/x86_64/register-dump.h
    trunk/libc/sysdeps/x86_64/bits/atomic.h
    trunk/libc/sysdeps/x86_64/bits/mathdef.h
    trunk/libc/sysdeps/x86_64/bits/setjmp.h
    trunk/libc/sysdeps/x86_64/elf/start.S
    trunk/libc/sysdeps/x86_64/ffsll.c
    trunk/libc/sysdeps/x86_64/fpu/bits/fenv.h
    trunk/libc/sysdeps/x86_64/fpu/bits/mathinline.h
    trunk/libc/sysdeps/x86_64/fpu/e_powl.S
    trunk/libc/sysdeps/x86_64/fpu/feholdexcpt.c
    trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps
    trunk/libc/sysdeps/x86_64/fpu/math_private.h
    trunk/libc/sysdeps/x86_64/jmpbuf-unwind.h
    trunk/libc/time/offtime.c
    trunk/libc/timezone/Makefile
    trunk/ports/ChangeLog.alpha
    trunk/ports/ChangeLog.arm
    trunk/ports/ChangeLog.m68k
    trunk/ports/ChangeLog.mips
    trunk/ports/sysdeps/alpha/hp-timing.h
    trunk/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps
    trunk/ports/sysdeps/mips/mips64/gmp-mparam.h
    trunk/ports/sysdeps/unix/sysv/linux/arm/register-dump.h
    trunk/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h
    trunk/ports/sysdeps/unix/sysv/linux/m68k/register-dump.h
    trunk/ports/sysdeps/unix/sysv/linux/mips/register-dump.h

Propchange: trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Mar 21 20:25:11 2012
@@ -1,1 +1,1 @@
-/fsf/trunk:15224-17530
+/fsf/trunk:15224-17700

Modified: trunk/libc/ChangeLog
==============================================================================
--- trunk/libc/ChangeLog (original)
+++ trunk/libc/ChangeLog Wed Mar 21 20:25:11 2012
@@ -1,3 +1,973 @@
+2012-03-21  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/configure.in: Check x86_64* instead
+	of x86_64 when setting libc_cv_slibdir, libdir and
+	libc_cv_localedir.
+	* sysdeps/unix/sysv/linux/configure: Regenerated.
+
+2012-03-21  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* manual/lang.texi (Old Varargs): Remove section.
+	(How Variadic): Update menu.
+	(va_start): Do not mention varargs.h.
+
+2012-03-21  Thomas Schwinge  <thomas@xxxxxxxxxxxxxxxx>
+	    Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* configure.in (libc_cv_ssp): Use LIBC_TRY_CC_OPTION instead of a
+	link test.
+	* configure: Regenerated.
+
+2012-03-21  Thomas Schwinge  <thomas@xxxxxxxxxxxxxxxx>
+
+        * conform/conformtest.pl: Handle --tmpdir argument, defaulting to /tmp.
+        * conform/run-conformtest.sh: Pass --tmpdir argument when invoking
+        conformtest.pl
+
+2012-03-21  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* NOTES: Remove.
+	* Makefile (files-for-dist): Remove NOTES.
+	(NOTES): Remove rule.
+	* README: Don't refer to NOTES.
+	* manual/creature.texi: Don't include macros.texi.
+	* manual/intro.texi (creature.texi): Remove comment referring to
+	NOTES.
+
+	* aclocal.m4 (LIBC_TRY_CC_OPTION): New macro.
+	* configure.in (libc_cv_cc_submachine): Use LIBC_TRY_CC_OPTION.
+	* configure: Regenerated.
+	* sysdeps/i386/configure.in (libc_cv_cc_sse4): Use
+	LIBC_TRY_CC_OPTION.
+	(libc_cv_as_i686): Likewise.
+	(libc_cv_cc_avx): Likewise.
+	(libc_cv_cc_sse2avx): Likewise.
+	(libc_cv_cc_fma4): Likewise.
+	(libc_cv_cc_novzeroupper): Likewise.
+	* sysdeps/i386/configure: Regenerated.
+
+	[BZ #13883]
+	* sysdeps/i386/fpu/s_cexp.S: Remove.
+	* sysdeps/i386/fpu/s_cexpf.S: Likewise.
+	* sysdeps/i386/fpu/s_cexpl.S: Likewise.
+	* math/libm-test.inc (cexp_test): Add more tests.
+	* sysdeps/i386/fpu/libm-test-ulps: Update.
+	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2012-03-21  Allan McRae  <allan@xxxxxxxxxxxxx>
+
+	* timezone/Makefile: Do not install iso3166.tab and zone.tab
+
+2012-03-21  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #13871]
+	* math/w_exp2.c: Do not include <float.h>.
+	(o_threshold, u_threshold): Remove.
+	(__exp2): Calculate result before checking finiteness and calling
+	__kernel_standard.
+	* math/w_exp2f.c: Likewise.
+	* math/w_exp2l.c: Likewise.
+	* math/libm-test.inc (exp2_test): Require overflow exception for
+	1e6 input.
+
+	[BZ #3866]
+	* sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Test for y outside the
+	range of signed 64-bit integers before using fistpll.  Remove
+	checks for whether integers fit in mantissa bits.
+	* sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Test for y outside
+	the range of signed 32-bit integers before using fistpl.  Remove
+	checks for whether integers fit in mantissa bits.
+	* sysdeps/i386/fpu/e_powl.S (p64): New object.
+	(__ieee754_powl): Test for y outside the range of signed 64-bit
+	integers before using fistpll.  Reduce 64-bit values to 63-bit
+	ones as needed.
+	* sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Ensure
+	divide-by-zero is raised for zero to large negative powers.
+	* sysdeps/x86_64/fpu/e_powl.S (p64): New object.
+	(__ieee754_powl): Test for y outside the range of signed 64-bit
+	integers before using fistpll.  Reduce 64-bit values to 63-bit
+	ones as needed.
+	* math/libm-test.inc (pow_test): Add more tests.
+
+2012-03-20  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* debug/backtracesymsfd.c: Include <_itoa.h> instead of
+	<stdio-common/_itoa.h>.
+	* debug/segfault.c: Likewise.
+	* elf/dl-cache.c: Likewise.
+	* elf/dl-minimal.c: Likewise.
+	* elf/dl-misc.c: Likewise.
+	* elf/dl-sysdep.c: Likewise.
+	* elf/dl-version.c: Likewise.
+	* elf/rtld.c: Likewise.
+	* hurd/hurdsock.c: Likewise.
+	* hurd/lookup-retry.c: Likewise.
+	* malloc/malloc.c: Likewise.
+	* malloc/mtrace.c: Likewise.
+	* nscd/nscd_getgr_r.c: Likewise.
+	* nscd/nscd_getpw_r.c: Likewise.
+	* nscd/nscd_getserv_r.c: Likewise.
+	* posix/getopt_init.c: Likewise.
+	* posix/wordexp.c: Likewise.
+	* stdio-common/_itoa.c: Likewise.
+	* stdio-common/printf_fphex.c: Likewise.
+	* stdio-common/vfprintf.c: Likewise.
+	* string/_strerror.c: Likewise.
+	* sysdeps/generic/elf/backtracesymsfd.c: Likewise.
+	* sysdeps/i386/i686/hp-timing.h: Likewise.
+	* sysdeps/mach/_strerror.c: Likewise.
+	* sysdeps/mach/hurd/powerpc/register-dump.h: Likewise.
+	* sysdeps/mach/hurd/sethostid.c: Likewise.
+	* sysdeps/mach/hurd/xmknodat.c: Likewise.
+	* sysdeps/mach/xpg-strerror.c: Likewise.
+	* sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
+	* sysdeps/powerpc/powerpc32/power4/hp-timing.h: Likewise.
+	* sysdeps/powerpc/powerpc32/register-dump.h: Likewise.
+	* sysdeps/powerpc/powerpc64/dl-machine.c: Likewise.
+	* sysdeps/powerpc/powerpc64/hp-timing.h: Likewise.
+	* sysdeps/powerpc/powerpc64/register-dump.h: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
+	* sysdeps/sparc/sparc64/hp-timing.h: Likewise.
+	* sysdeps/unix/sysv/linux/fd_to_filename.h: Likewise.
+	* sysdeps/unix/sysv/linux/futimes.c: Likewise.
+	* sysdeps/unix/sysv/linux/i386/register-dump.h: Likewise.
+	* sysdeps/unix/sysv/linux/ptsname.c: Likewise.
+	* sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h: Likewise.
+	* sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h: Likewise.
+	* sysdeps/unix/sysv/linux/sh/sh3/register-dump.h: Likewise.
+	* sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Likewise.
+	* sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h: Likewise.
+	* sysdeps/unix/sysv/linux/sparc/sparc64/register-dump.h: Likewise.
+	* sysdeps/unix/sysv/linux/ttyname.c: Likewise.
+	* sysdeps/unix/sysv/linux/ttyname_r.c: Likewise.
+	* sysdeps/unix/sysv/linux/x86_64/register-dump.h: Likewise.
+
+	* stdio-common/_itoa.c: Include <_itoa.h> instead of "_itoa.h".
+
+	* stdio-common/_itoa.h: Moved to ...
+	* sysdeps/generic/_itoa.h: Here.
+
+	* stdio-common/_itowa.c: Include <_itowa.h> instead of "_itowa.h".
+
+	* stdio-common/printf_fphex.c: Include <_itoa.h> and <_itowa.h>
+	instead of "_itoa.h" and "_itowa.h".
+	* stdio-common/vfprintf.: Likewise.
+
+2012-03-20  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/x86_64/fpu/bits/mathinline.h: Don't include
+	<bits/wordsize.h>.
+	(__signbitf): Check __x86_64__ instead of __WORDSIZE.
+	(__signbit): Likwise.
+	(llrintf): Likwise.
+	(llrint): Likwise.
+
+2012-03-20  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/x86_64/bits/setjmp.h (__jmp_buf): Support x86-64 with
+	__WORDSIZE != 64.
+
+2012-03-20  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* math/gen-libm-test.pl (%beautify): Add OVERFLOW_EXCEPTION and
+	OVERFLOW_EXCEPTION_OK.
+	* math/libm-test.inc ("Philosophy"): Update comment about
+	exception testing.
+	(OVERFLOW_EXCEPTION): Define.
+	(OVERFLOW_EXCEPTION_OK): Likewise.
+	(INVALID_EXCEPTION_OK): Renumber.
+	(DIVIDE_BY_ZERO_EXCEPTION_OK): Likewise.
+	(IGNORE_ZERO_INF_SIGN): Likewise.
+	(test_exceptions): Handle FE_OVERFLOW.
+	(exp10_test): Expect overflow exceptions.
+	(exp2_test): Likewise.
+	(expm1_test): Likewise.
+	(nextafter_test): Likewise.
+	(pow_test): Likewise.
+	(scalbn_test): Likewise.
+	(scalbln_test): Likewise.
+
+2012-03-19  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/x86_64/bits/atomic.h
+	(__arch_c_compare_and_exchange_val_64_acq): Use atomic64_t on
+	64bit integer.
+	(atomic_exchange_acq): Likewise.
+	(__arch_exchange_and_add_body): Likewise.
+	(__arch_add_body): Likewise.
+	(atomic_add_negative): Likewise.
+	(atomic_add_zero): Likewise.
+
+2012-03-19  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/x86_64/fpu/bits/fenv.h: Don't include <bits/wordsize.h>.
+	(fenv_t): Check __x86_64__ instead of __WORDSIZE.
+
+2012-03-19  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/x86_64/bits/mathdef.h: Don't include <bits/wordsize.h>.
+	Check __x86_64__ instead of __WORDSIZE.
+
+2012-03-19  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed: Support x32.
+
+2012-03-19  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/sparc/fpu/libm-test-ulps: Update.
+
+	* sysdeps/sparc/fpu/fenv_private.h: New file.
+	* sysdeps/sparc/fpu/math_private.h: Use it.
+	(libc_feholdexcept, libc_feholdexceptf, libc_feholdexceptl):
+	Remove.
+	(libc_feholdexcept_setround, libc_feholdexcept_setroundf,
+	(libc_feholdexcept_setroundl): Remove.
+	(libc_fetestexcept, libc_fetestexceptf, libc_fetestexceptl):
+	Remove.
+	(libc_fesetenv, libc_fesetenvf, libc_fesetenvl): Remove.
+	(libc_feupdateenv, libc_feupdateenvf, libc_feupdateenvf): Remove.
+
+2012-03-19  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/x86_64/fpu/math_private.h (EXTRACT_WORDS64): Use
+	int64_t instead of long int.
+	(INSERT_WORDS64): Likwise.
+
+2012-03-19  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/x86_64/jmpbuf-unwind.h (_JMPBUF_CFA_UNWINDS_ADJ): Cast
+	_Unwind_GetCFA return to _Unwind_Ptr first.
+
+2012-03-19  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #13629]
+	* math/s_clog.c: Include <float.h>.
+	(__clog): Scale large or subnormal inputs.
+	* math/s_clogf.c: Likewise.
+	* math/s_clogl.c: Likewise.
+	* math/s_clog10.c: Include <float.h>.
+	(M_LOG10_2): Define.
+	(__clog10): Scale large or subnormal inputs.
+	* math/s_clog10f.c: Likewise.
+	* math/s_clog10l.c: Likewise.
+	* math/libm-test.inc (clog_test): Add more tests.
+	(clog10_test): Likewise.
+	* sysdeps/i386/fpu/libm-test-ulps: Update.
+	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+	[BZ #11451]
+	* sysdeps/ieee754/dbl-64/e_atan2.c (__ieee754_atan2): Scale large
+	x and y.
+	* math/libm-test.inc (atan2_test): Add another test.
+
+	* Makerules (common-objdir-compile): Remove.
+	* sysdeps/unix/Makefile (config-generated): Do not add
+	$(unix-generated) to variable.
+	[generic bits/local_lim.h] (mk-local_lim-CFLAGS): Remove variable.
+	[generic bits/local_lim.h] ($(common-objpfx)bits/local_lim.h):
+	Remove rule.
+	[generic bits/local_lim.h] ($(common-objpfx)mk-local_lim):
+	Likewise.
+	[generic bits/local_lim.h] (before-compile): Do not append to
+	variable.
+	[generic bits/local_lim.h] (common-generated): Likewise.
+	[generic sys/param.h] (before-compile): Do not append to variable.
+	[generic sys/param.h] ($(common-objpfx)sys/param.h): Remove rule.
+	[generic sys/param.h] ($(common-objpfx)param.h.c): Likewise.
+	[generic sys/param.h] ($(common-objpfx)param.h.dep): Likewise.
+	[generic sys/param.h] ($(common-objpfx)param.h.dep): Do not
+	include.
+	[generic sys/param.h] (sys/param.h-includes): Remove variable.
+	[generic sys/param.h] (sys/param.h-includes): Remove rule.
+	[generic sys/param.h] ($(addprefix
+	$(common-objpfx),$(sys/param.h-includes))): Likewise.
+	[generic sys/param.h] (common-generated): Do not append to
+	variable.
+	[generic sys/param.h] (sysdep_headers): Likewise.
+	[generic bits/errno.h] (before-compile): Do not append to
+	variable.
+	[generic bits/errno.h] ($(common-objpfx)bits/errno.h): Remove
+	rule.
+	[generic bits/errno.h] ($(common-objpfx)make-errnos): Likewise.
+	[generic bits/errno.h] ($(common-objpfx)make-errnos.c): Likewise.
+	[generic bits/errno.h] ($(common-objpfx)errnos): Likewise.
+	[generic bits/errno.h] (common-generated): Do not append to
+	variable.
+	[generic bits/ioctls.h] (before-compile): Do not append to
+	variable.
+	[generic bits/ioctls.h] ($(common-objpfx)bits/ioctls.h): Remove
+	rule.
+	[generic bits/ioctls.h] (ioctl-includes): Remove variable.
+	[generic bits/ioctls.h] (make-ioctls-CFLAGS): Likewise.
+	[generic bits/ioctls.h] ($(common-objpfx)make-ioctls): Remove
+	rule.
+	[generic bits/ioctls.h] ($(common-objpfx)make-ioctls.c): Likewise.
+	[generic bits/ioctls.h] (bits_termios.h): Remove variable.
+	[generic bits/ioctls.h] ($(common-objpfx)ioctls): Remove rule.
+	[generic bits/ioctls.h] (common-generated): Do not append to
+	variable.
+	[generic sys/syscall.h] (syscall.h): Remove variable.
+	[generic sys/syscall.h] ($(common-objpfx)sys/syscall.h): Remove
+	rule.
+	[generic sys/syscall.h] (before-compile): Do not append to
+	variable.
+	[generic sys/syscall.h] (common-generated): Likewise.
+	* sysdeps/unix/errnos-tmpl.c: Remove file.
+	* sysdeps/unix/errnos.awk: Likewise.
+	* sysdeps/unix/ioctls-tmpl.c: Likewise.
+	* sysdeps/unix/ioctls.awk: Likewise.
+	* sysdeps/unix/mk-local_lim.c: Likewise.
+	* sysdeps/unix/snarf-ioctls: Likewise.
+
+2012-03-19  Richard Henderson  <rth@xxxxxxxxxxx>
+
+	* sysdeps/i386/fpu/fenv_private.h: New file.
+	* sysdeps/i386/fpu/math_private.h: Use it.
+	(math_opt_barrier, math_force_eval): Remove.
+	(libc_feholdexcept_setround_53bit): Remove.
+	(libc_feupdateenv_53bit): Remove.
+	* sysdeps/x86_64/fpu/math_private.h: Likewise.
+	(math_opt_barrier, math_force_eval): Remove.
+	(libc_feholdexcept): Remove.
+	(libc_feholdexcept_setround): Remove.
+	(libc_fetestexcept, libc_fesetenv): Remove.
+	(libc_feupdateenv_test): Remove.
+	(libc_feupdateenv, libc_feholdsetround): Remove.
+	(libc_feresetround): Remove.
+
+	* sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Avoid the fldenv.
+	* sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Likewise.
+
+	* sysdeps/generic/math_private.h (default_libc_feupdateenv_test): New.
+	(libc_feupdateenv_test, libc_feupdateenv_testf): New.
+	(libc_feupdateenv_testl): New.
+	* sysdeps/x86_64/fpu/math_private.h (libc_feupdateenv_test): New.
+	(libc_feupdateenv_testf): New.
+	(libc_feupdateenv): Use libc_feupdateenv_test.
+	* sysdeps/ieee754/dbl-64/s_fma.c (__fma): Use libc_feupdateenv_test.
+	* sysdeps/ieee754/dbl-64/s_fmaf.c (__fmaf): Likewise.
+
+	* sysdeps/generic/math_private.h (libc_feholdsetround): New.
+	(libc_feholdsetroundf, libc_feholdsetroundl): New.
+	(libc_feresetround, libc_feresetroundf, libc_feresetroundl): New.
+	(libc_feresetround_noex): New.
+	(libc_feresetround_noexf): New.
+	(libc_feresetround_noexl): New.
+	(SET_RESTORE_ROUND, SET_RESTORE_ROUNDF, SET_RESTORE_ROUNDL): New.
+	(SET_RESTORE_ROUND_NOEX, SET_RESTORE_ROUND_NOEXF): New.
+	(SET_RESTORE_ROUND_NOEXL, SET_RESTORE_ROUND_53BIT): New.
+	* sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Use
+	SET_RESTORE_ROUND.
+	* sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Likewise.
+	* sysdeps/ieee754/dbl-64/s_sin.c (__sin): Use SET_RESTORE_ROUND_53BIT.
+	(__cos): Likewise.
+	* sysdeps/ieee754/dbl-64/s_tan.c (__tan): Likewise.
+	* sysdeps/ieee754/dbl-64/e_exp2.c (__ieee754_exp2): Use
+	SET_RESTORE_ROUND_NOEX.
+	* sysdeps/ieee754/dbl-64/e_exp2f.c (__ieee754_exp2f): Use
+	SET_RESTORE_ROUND_NOEXF.
+	* sysdeps/ieee754/flt-32/e_expf.c (__ieee754_expf): Likewise.
+	* sysdeps/x86_64/fpu/math_private.h (libc_feholdsetround): New.
+	(libc_feholdsetroundf): New.
+	(libc_feresetround, libc_feresetroundf): New.
+
+	* sysdeps/i386/fpu/math_private.h: Include <fenv.h>, <fpu_control.h>.
+	(libc_feholdexcept_setround_53bit): Convert from macro to function.
+	(libc_feupdateenv_53bit): Likewise.  Don't force _FPU_EXTENDED.
+
+	* sysdeps/generic/math_private.h: Include <fenv.h>.
+	(default_libc_feholdexcept): New.
+	(default_libc_feholdexcept_setround): New.
+	(default_libc_fesetenv, default_libc_feupdateenv): New.
+	(libc_feholdexcept): Only define if undefined.
+	(libc_feholdexceptf, libc_feholdexceptl): Likewise.
+	(libc_feholdexcept_setround, libc_feholdexcept_setroundf): Likewise.
+	(libc_feholdexcept_setroundl): Likewise.
+	(libc_feholdexcept_setround_53bit): Likewise.
+	(libc_fetestexcept, libc_fetestexceptf, libc_fetestexceptl): Likewise.
+	(libc_fesetenv, libc_fesetenvf, libc_fesetenvl): Likewise.
+	(libc_feupdateenv, libc_feupdateenvf, libc_feupdateenvl): Likewise.
+	(libc_feupdateenv_53bit): Likewise.
+	* sysdeps/x86_64/fpu/math_private.h: Include <fenv.h>.
+	(libc_feholdexcept): Convert from macro to inline function.
+	(libc_feholdexcept_setround, libc_fetestexcept): Likewise.
+	(libc_fesetenv, libc_feupdateenv): Likewise.
+
+	* sysdeps/generic/math_private.h (GET_HIGH_WORD): Define only if
+	not previously defined.
+	(GET_LOW_WORD, EXTRACT_WORDS64, INSERT_WORDS): Likewise.
+	(INSERT_WORDS64, SET_HIGH_WORD, SET_LOW_WORD): Likewise.
+	(GET_FLOAT_WORD, SET_FLOAT_WORD): Likewise.
+	* sysdeps/ieee754/dbl-64/wordsize-64/math_private.h: New file.
+	* sysdeps/ieee754/flt-32/math_private.h: New file.
+	* sysdeps/x86_64/fpu/math_private.h: Move the include_next of
+	math_private.h below SET_FLOAT_WORD.
+	(__isnan, __isinf_ns, __finite): Remove.
+	(__isnanf, __isinf_nsf, __finitef): Remove.
+
+2012-03-18  Andreas Schwab  <schwab@xxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2012-03-17  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	[BZ #6471]
+	* sysdeps/unix/sysv/linux/sparc/Versions: Add __getshmlba entry
+	for 2.16.
+
+2012-03-16  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/shmat.c (shmat): Use -1l to avoid
+	warnings.
+
+	[BZ #6471]
+	* sysdeps/unix/sysv/linux/shmat.c (shmat): Test for syscall errors
+	properly.
+	* sysdeps/unix/sysv/linux/sparc/getshmlba.c: New file.
+	* sysdeps/unix/sysv/linux/sparc/Makefile: Add getshmlba to
+	sysdep_routines when subdir is sysvipc.
+	* sysdeps/unix/sysv/linux/sparc/bits/shm.h (SHMLBA): Use new
+	__getshmlba helper.
+
+	* sysdeps/sparc/fpu/libm-test/ulps: Update.
+
+2012-03-16  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/x86_64/ffsll.c (ffsl): Define alias only under
+	[__LP64__].
+
+2012-03-16  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: Moved to ...
+	* sysdeps/ieee754/dbl-64/wordsize-64/s_llround.c: This.
+	(__lround): Renamed to ...
+	(__llround): This.  Replace long int with long long int.
+	Define lround functions as aliases of llround functions.
+	* sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: Empty file.
+
+2012-03-16  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
+	Use greg_t on sp.  Use unsigned int on idx_uc_link.  Cast
+	adresses to uintptr_t.  Replace "long int" and "unsigned long
+	int" with "greg_t" on va_arg.
+
+2012-03-16  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* sysdeps/generic/ldconfig.h (FLAG_X8664_LIBX32): New macro.
+	* elf/cache.c (print_entry): Handle FLAG_X8664_LIBX32.
+
+	* sysdeps/unix/sysv/linux/i386/readelflib.c (process_elf_file):
+	Move e_machine check before EI_CLASS check.  Handle x32
+	libraries.  Check EM_IA_64 only if SKIP_EM_IA_64 isn't defined.
+	* sysdeps/unix/sysv/linux/x86_64/readelflib.c: Just define
+	SKIP_EM_IA_64 and include
+	<sysdeps/unix/sysv/linux/i386/readelflib.c>.
+
+	* sysdeps/unix/sysv/linux/x86_64/dl-cache.h:
+	Don't include <sysdeps/unix/sysv/linux/sparc/dl-cache.h>.
+	(add_system_dir): New macro.
+
+	* sysdeps/unix/sysv/linux/x86_64/ldconfig.h
+	(SYSDEP_KNOWN_INTERPRETER_NAMES): Add /libx32/ld-linux-x32.so.2.
+
+2012-03-16  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #2551]
+	[BZ #2552]
+	[BZ #2553]
+	[BZ #2554]
+	[BZ #2562]
+	[BZ #2563]
+	[BZ #2565]
+	[BZ #2566]
+	[BZ #2576]
+	* math/w_j0.c (j0): Don't produce TLOSS errors for POSIX libm.
+	(y0): Likewise.
+	* math/w_j0f.c (j0f): Likewise.
+	(y0f): Likewise.
+	* math/w_j0l.c (__j0l): Likewise.
+	(__y0l): Likewise.
+	* math/w_j1.c (j1): Likewise.
+	(y1): Likewise.
+	* math/w_j1f.c (j1f): Likewise.
+	(y1f): Likewise.
+	* math/w_j1l.c (__j1l): Likewise.
+	(__y1l): Likewise.
+	* math/w_jn.c (jn): Likewise.
+	(yn): Likewise.
+	* math/w_jnf.c (jnf): Likewise.
+	(ynf): Likewise.
+	* math/w_jnl.c (__jnl): Likewise.
+	(__ynl): Likewise.
+	* math/libm-test.inc (j0_test): Add more tests.
+	(j1_test): Likewise.
+	(jn_test): Likewise.  Add trailing semicolon to existing test.
+	(y0_test): Likewise.
+	(y1_test): Likewise.
+	* sysdeps/i386/fpu/libm-test-ulps: Update.
+	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+	[BZ #13851]
+	[BZ #13854]
+	* sysdeps/ieee754/dbl-64/s_tan.c (tan): Use
+	libc_feholdexcept_setround_53bit and libc_feupdateenv_53bit.
+	* sysdeps/ieee754/ldbl-96/k_tanl.c: New file.
+	* sysdeps/ieee754/ldbl-96/s_tanl.c: Include <errno.h>.
+	(__tanl): Set errno for infinite argument.
+	* sysdeps/i386/fpu/mptan.c: Remove.
+	* sysdeps/i386/fpu/s_tan.S: Likewise.
+	* sysdeps/i386/fpu/s_tanl.S: Likewise.
+	* sysdeps/x86_64/fpu/k_tanl.c: Likewise.
+	* sysdeps/x86_64/fpu/s_tanl.S: Likewise.
+	* math/libm-test.inc (tan_test): Add more tests and enable more
+	tests for double and long double.
+	* sysdeps/i386/fpu/libm-test-ulps: Update.
+	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2012-03-16  Jan Kratochvil  <jan.kratochvil@xxxxxxxxxx>
+
+	* sysdeps/x86_64/elf/start.S: Include <sysdep.h>.
+	(_start): Add cfi_startproc, cfi_undefined for rip and cfi_endproc.
+
+2012-03-16  Roland McGrath  <roland@xxxxxxxxxxxxx>
+
+	* aclocal.m4 (LIBC_PRECONFIGURE): New macro.
+	* configure.in: Use it for both main tree and add-ons.
+	* configure: Regenerated.
+
+2012-03-16  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* time/offtime.c (__offtime): Use time_t on days, rem, y and yg.
+
+2012-03-16  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/ieee754/ldbl-96/t_sincosl.c: Include generator program
+	in comment.
+
+	[BZ #13851]
+	* sysdeps/ieee754/ldbl-96/e_rem_pio2l.c: New file.
+	* sysdeps/ieee754/ldbl-96/k_cosl.c: Likewise.
+	* sysdeps/ieee754/ldbl-96/k_sinl.c: Likewise.
+	* sysdeps/ieee754/ldbl-96/t_sincosl.c: Likewise.
+	* sysdeps/ieee754/ldbl-96/s_cosl.c (__cosl): Correct test for
+	infinite argument.
+	* sysdeps/ieee754/ldbl-96/s_sinl.c (__sinl): Likewise.
+	* sysdeps/ieee754/dbl-64/k_rem_pio2.c: Handle __FLT_EVAL_METHOD__
+	!= 0 for prec == 2.
+	* sysdeps/i386/fpu/e_rem_pio2l.c: Remove.
+	* sysdeps/i386/fpu/k_rem_pio2.c: Likewise.
+	* sysdeps/i386/fpu/s_cosl.S: Likewise.
+	* sysdeps/i386/fpu/s_sincosl.S: Likewise.
+	* sysdeps/i386/fpu/s_sinl.S: Likewise.
+	* sysdeps/x86_64/fpu/e_rem_pio2l.c: Likewise.
+	* sysdeps/x86_64/fpu/k_cosl.c: Likewise.
+	* sysdeps/x86_64/fpu/k_sinl.c: Likewise.
+	* sysdeps/x86_64/fpu/s_cosl.S: Likewise.
+	* sysdeps/x86_64/fpu/s_sincosl.S: Likewise.
+	* sysdeps/x86_64/fpu/s_sinl.S: Likewise.
+	* math/libm-test.inc (cos_test): Add more tests and enable more
+	tests for long double.
+	(sin_test): Likewise.
+	(sincos_test): Likewise.
+	* sysdeps/i386/fpu/libm-test-ulps: Update.
+	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2012-03-16  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/sparc/fpu/math_private.h: New file.
+
+2012-03-15  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fma-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fma.c: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaf-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaf.c: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fma-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fma.c: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Add fma/fmaf
+	sysdep routines.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Likewise.
+
+	* sysdeps/sparc/sparc32/fpu/s_fma.c: New file.
+	* sysdeps/sparc/sparc64/fpu/s_fma.c: New file.
+
+	* sysdeps/sparc/sparc-ifunc.h: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S: Use
+	sparc-ifunc.h
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.S:
+	Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.S:
+	Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf.S:
+	Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaxf.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fminf.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S:
+	Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.S:
+	Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrt.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrtf.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_finite.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_finitef.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmax.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmaxf.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmin.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fminf.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinf.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinff.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnan.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_rint.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.S: Likewise.
+
+2012-03-15  Andreas Schwab  <schwab@xxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/fpu/e_hypotf.c: Use double precision instead of
+	scaling.
+	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2012-03-15  Andreas Jaeger  <aj@xxxxxxx>
+
+	[BZ #13852]
+	* sysdeps/i386/fpu/e_rem_pio2f.c: Delete so that i386 uses the
+	ieee754/flt-32 implementation for sin, cos and sincos.
+	* sysdeps/i386/fpu/k_rem_pio2f.c: Likewise.
+	* sysdeps/i386/fpu/s_cosf.S: Likewise.
+	* sysdeps/i386/fpu/s_sincosf.S: Likewise.
+	* sysdeps/i386/fpu/s_sinf.S: Likewise.
+	* sysdeps/i386/fpu/s_tanf.S: Delete so that i386 uses the
+	ieee754/flt-32 implementation for tan.
+
+	* math/libm-test.inc (cos_test): Enable some large input tests for
+	float as well
+	(sin_test): Likewise.
+	(sincos_test): Likewise.
+	(tan_test): Add tests for large input.
+
+	* sysdeps/i386/fpu/libm-test-ulps: Update.
+
+2012-03-15  Andreas Jaeger  <aj@xxxxxxx>
+
+	[BZ #13658]
+	* math/libm-test.inc (cos_test): Add more test cases.
+	(sin_test): Likewise.
+	(sincos_test): Likewise.
+
+2012-03-15  Andreas Jaeger  <aj@xxxxxxx>
+
+	[BZ #13837]
+	* math/libm-test.inc (cos_test): Add a test case for large input
+	value.
+	(sin_test): Likewise.
+	(sincos_test): Likewise.
+
+2012-03-15  Andreas Jaeger  <aj@xxxxxxx>,
+	Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #13658]
+	* sysdeps/x86_64/fpu/s_sincos.S: Delete files so that
+	x86-64 and i386 use the iee754/dbl-64 sin and cos implementation.
+	* sysdeps/i386/fpu/branred.c: Likewise.
+	* sysdeps/i386/fpu/dosincos.c: Likewise.
+	* sysdeps/i386/fpu/mpa.c: Likewise.
+	* sysdeps/i386/fpu/s_cos.S: Likewise.
+	* sysdeps/i386/fpu/s_sin.S: Likewise.
+	* sysdeps/i386/fpu/s_sincos.S: Likewise.
+	* sysdeps/i386/fpu/sincos32.c: Likewise.
+
+	* sysdeps/generic/math_private.h (libc_feholdexcept_setround_53bit):
+	Define.
+	(libc_feupdateenv_53bit): Define.
+	* sysdeps/i386/fpu/math_private.h (libc_feholdexcept_setround_53bit):
+	Define.
+	(libc_feupdateenv_53bit): Define.
+
+	* sysdeps/ieee754/dbl-64/s_sin.c (__sin): Do double arithmetic in
+	53 bit (without extend i386 double precision).
+
+	* math/libm-test.inc (sincos_test): Add tests for large input.
+	(sin): Likewise.
+	(cos): Likewise.
+
+	* sysdeps/i386/fpu/libm-test-ulps: Update ULPs.
+
+2012-03-15  Andreas Schwab  <schwab@xxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2012-03-15  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/sparc/sparc64/fpu/s_fmax.S: New file.
+	* sysdeps/sparc/sparc64/fpu/s_fmaxf.S: New file.
+	* sysdeps/sparc/sparc64/fpu/s_fmin.S: New file.
+	* sysdeps/sparc/sparc64/fpu/s_fminf.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fmaxf.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fminf.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmax.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmaxf-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmaxf.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmin-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fmin.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fminf-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_fminf.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaxf-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaxf.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fminf-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fminf.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Add new vis3
+	fmin/fmax sysdep routines.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Likewise.
+
+2012-03-14  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_finite-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_finite.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_finitef-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_finitef.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinf-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinf.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinff-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isinff.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnan-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnan.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrint-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_rint-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_rint.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_rintf-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Add new VIS3
+	routines.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf-vis3.S:
+	New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrt-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrt.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrtf-vis3.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/w_sqrtf.S: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Add new
+	VIS3 routines.
+
+	* sysdeps/sparc/sparc32/sparcv9/fpu/unix/sysv/linux/multiarch/Implies:
+	New file.
+
+	* sysdeps/sparc/fpu/libm-test-ulps: Update.
+
+	* sysdeps/sparc/configure.in: New file.
+	* sysdeps/sparc/configure: Generate.
+	* configure.in (libc_cv_sparc_as_vis3): Substitute.
+	* configure: Regenerate.
+	* config.h.in (HAVE_AS_VIS3_SUPPORT): New.
+	* config.make.in (have-as-vis3): New.
+	* sysdeps/sparc/sparc32/sparcv9/Makefile (ASFLAGS-*): If VIS3 is
+	available use -Av9d instead of -Av9a.
+	* sysdeps/sparc/sparc64/Makefile: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign-vis3.S:
+	New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.S: New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf-vis3.S:
+	New file.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.S: New
+	file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbit-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf-vis3.S: New file.
+	* sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.S: New file.
+
+	* sysdeps/sparc/sparc64/fpu/s_copysign.S (__copysign): Use
+	fzeros/fnegs to load 0x80000000 into a float register instead of
+	using the stack.
+	* sysdeps/sparc/sparc64/fpu/s_copysignf.S (__copysignf): Likewise.
+
+2012-03-14  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
+	bits/syscall.h.
+	($(objpfx)syscall-%.h): Rename rule to $(objpfx)bits/syscall%h.
+	($(objpfx)syscall-%.d): Rename rule to $(objpfx)bits/syscall%d.
+	($(inst_includedir)/bits/syscall.h): Remove rule.
+	($(objpfx)bits/syscall.d): Include instead of
+	$(objpfx)syscall-list.d.
+	(generated): Change syscall-list.h and syscall-list.d to
+	bits/syscall.h and bits/syscall.d.
+
+2012-03-14  Roland McGrath  <roland@xxxxxxxxxxxxx>
+
+	[BZ #13846]
+	* manual/llio.texi (Memory-mapped I/O): Fix wrong function name.
+
+2012-03-14  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #13841]
+	* math/s_csqrt.c: Include <float.h>.
+	(__csqrt): Scale large or subnormal inputs.
+	* math/s_csqrtf.c: Likewise.
+	* math/s_csqrtl.c: Likewise.
+	* math/libm-test.inc (csqrt_test): Add more tests.
+	* sysdeps/i386/fpu/libm-test-ulps: Update.
+	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+	[BZ #13840]
+	* math/libm-test.inc (hypot_test): Add more tests.
+
+2012-03-13  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	[BZ #13840]
+	* sysdeps/ieee754/flt-32/e_hypotf.c (__ieee754_hypotf): Rewrite to use
+	double-precision for the calculation instead of scaling.
+
+2012-03-13  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/ieee754/dbl-64/s_nearbyint.c (__nearbyint): Do not
+	manipulate bits before adding and subtracting TWO52[sx].
+	* sysdeps/ieee754/dbl-64/s_rint.c (__rint): Likewise.
+	* sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c (__nearbyint):
+	Likewise.
+	* sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c (__rint): Likewise.
+
+2012-03-13  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/sparc/Makefile: Remove rtld-global-offsets.sym handling.
+	* sysdeps/sparc/elf/rtld-global-offsets.sym: Delete.
+	* sysdeps/sparc/sparc64/multiarch/memcpy.S: Don't include
+	rtld-global-offsets.h
+	* sysdeps/sparc/sparc64/multiarch/memset.S: Likewise.
+
+	* sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use expl for
+	large parameters.
+
+	* sysdeps/unix/sysv/linux/sparc/sparc64/dl-fxstatat64.c: New file.
+
+	* sysdeps/unix/sysv/linux/openat.c (OPENAT_NOT_CANCEL): Declare syscall
+	'err' in the ifdef scope in which it is actually used.
+
+	* nss/nss_db/db-init.c: Include string.h
+
+2012-03-12  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix
+	masking out of the most significant byte of random value used.
+	* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard):
+	Fix coding style in previous change.
+
+	* sysdeps/unix/sysv/linux/kernel-features.h
+	(__ASSUME_CLONE_THREAD_FLAGS): Set on sparc when 2.5.64 and later.
+	(__ASSUME_TGKILL): Set on sparc when 2.6.1 and later, simplify
+	expression.
+	(__ASSUME_FADVISE64_64_SYSCALL): Set on sparc when 2.6.1 and
+	later.
+
+2012-03-11  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c
+	(__makecontext): Fix signedness of pointer casts setting up 'sp'.
+	* sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL) Use 'long'
+	for 'resultvar' otherwise things get truncated on 64-bit.
+
+	* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard):
+	Fix masking out of the most significant byte of random value used.
+
+	* sysdeps/sparc/fpu/libm-test-ulps: Update.
+
+2012-03-10  Andreas Schwab  <schwab@xxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2012-03-09  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Protect local
+	variables with appropriate CPP guards.
+	* sysdeps/sparc/sparc32/dl-trampoline.S: Propagate the stack_ptr from the
+	frame pointer, not the stack pointer.  Correct layout comments.  Fix test
+	on resulting framesize and the management of the outregs buffer for pltexit.
+	Preserve floating point return values across _dl_call_pltexit call.
+	* sysdeps/sparc/sparc64/dl-trampoline.S: Fix test on resulting
+	framesize and the management of the outregs buffer for pltexit.
+	Preserve floating point return values across _dl_call_pltexit
+	call.
+	* elf/sotruss-lib.c (la_sparc32_gnu_pltenter, la_sparc64_gnu_pltenter,
+	la_sparc32_gnu_pltexit, la_sparc64_gnu_pltexit): New functions.
+	(print_exit): Fix format string for return register value.
+
 2012-03-10  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sunrpc/Makefile (others): Add rpcgen.

Modified: trunk/libc/Makefile
==============================================================================
--- trunk/libc/Makefile (original)
+++ trunk/libc/Makefile Wed Mar 21 20:25:11 2012
@@ -1,5 +1,4 @@
-# Copyright (C) 1991-2002,2003,2004,2005,2006,2008,2009,2011
-#	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
@@ -384,7 +383,7 @@
 
 generated := $(generated) stubs.h
 
-files-for-dist := README FAQ INSTALL NOTES configure ChangeLog NEWS
+files-for-dist := README FAQ INSTALL configure ChangeLog NEWS
 
 # Regenerate stuff, then error if these things are not committed yet.
 dist-prepare: $(files-for-dist)
@@ -419,7 +418,6 @@
 -chmod a-w $@
 endef
 INSTALL: manual/install.texi manual/macros.texi; $(format-me)
-NOTES: manual/creature.texi manual/macros.texi; $(format-me)
 manual/dir-add.texi manual/dir-add.info: FORCE
 	$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
 FAQ: scripts/gen-FAQ.pl FAQ.in

Modified: trunk/libc/Makerules
==============================================================================
--- trunk/libc/Makerules (original)
+++ trunk/libc/Makerules Wed Mar 21 20:25:11 2012
@@ -1189,14 +1189,6 @@
 	    $(firstword $(filter /%,$< $(shell pwd)/$<)) -o $(@F)
 endef
 
-# Command to compile $< in $(common-objdir) using the native libraries.
-# We must cd to $(objdir) anyway so that $(..)config.h is valid.
-define common-objdir-compile
-$(patsubst %/,cd % &&,$(objpfx)) \
-$(BUILD_CC) $($(basename $(<F))-CFLAGS) $(ALL_BUILD_CFLAGS) \
-	    $(firstword $(filter /%,$< $(shell pwd)/$<)) -o $(..)$(@F)
-endef
-
 # We always want to use configuration definitions.
 # Note that this is only used for commands running in $(objpfx).
 ALL_BUILD_CFLAGS = $(BUILD_CFLAGS) -include $(..)config.h

Modified: trunk/libc/NEWS
==============================================================================
--- trunk/libc/NEWS (original)
+++ trunk/libc/NEWS Wed Mar 21 20:25:11 2012
@@ -9,12 +9,14 @@
 
 * The following bugs are resolved with this release:
 
-  174, 350, 411, 2541, 2547, 2548, 3335, 3976, 3992, 4026, 4108, 4596, 4822,
-  5077, 5461, 5805, 5993, 6884, 6907, 6911, 9739, 9902, 10110, 10135, 10140,
-  10210, 10545, 10716, 11174, 11322, 11365, 11494, 12047, 13058, 13525,
+  174, 350, 411, 2541, 2547, 2548, 2551, 2552, 2553, 2554, 2562, 2563, 2565,
+  2566, 2576, 3335, 3976, 3992, 4026, 4108, 4596, 4822, 5077, 5461, 5805,
+  5993, 6471, 6884, 6907, 6911, 9739, 9902, 10110, 10135, 10140, 10210,
+  10545, 10716, 11174, 11322, 11365, 11451, 11494, 12047, 13058, 13525,
   13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13547, 13551,
-  13552, 13553, 13555, 13559, 13566, 13583, 13618, 13637, 13656, 13673,
-  13695, 13704, 13706, 13726, 13738, 13786, 13792, 13806
+  13552, 13553, 13555, 13559, 13566, 13583, 13618, 13637, 13656, 13658,
+  13673, 13695, 13704, 13706, 13726, 13738, 13786, 13792, 13806, 13840,
+  13841, 13844, 13846, 13851, 13852, 13854, 13871, 13883
 
 * ISO C11 support:
 

Removed: trunk/libc/NOTES
==============================================================================
--- trunk/libc/NOTES (original)
+++ trunk/libc/NOTES (removed)
@@ -1,223 +1,0 @@
-Feature Test Macros
--------------------
-
-The exact set of features available when you compile a source file is
-controlled by which "feature test macros" you define.
-
-   If you compile your programs using `gcc -ansi', you get only the
-ISO C library features, unless you explicitly request additional
-features by defining one or more of the feature macros.  *Note GNU CC
-Command Options: (gcc.info)Invoking GCC, for more information about GCC
-options.
-
-   You should define these macros by using `#define' preprocessor
-directives at the top of your source code files.  These directives
-_must_ come before any `#include' of a system header file.  It is best
-to make them the very first thing in the file, preceded only by
-comments.  You could also use the `-D' option to GCC, but it's better
-if you make the source files indicate their own meaning in a
-self-contained way.
-
-   This system exists to allow the library to conform to multiple
-standards.  Although the different standards are often described as
-supersets of each other, they are usually incompatible because larger
-standards require functions with names that smaller ones reserve to the
-user program.  This is not mere pedantry -- it has been a problem in
-practice.  For instance, some non-GNU programs define functions named
-`getline' that have nothing to do with this library's `getline'.  They
-would not be compilable if all features were enabled indiscriminately.
-
-   This should not be used to verify that a program conforms to a
-limited standard.  It is insufficient for this purpose, as it will not
-protect you from including header files outside the standard, or
-relying on semantics undefined within the standard.
-
- -- Macro: _POSIX_SOURCE
-     If you define this macro, then the functionality from the POSIX.1
-     standard (IEEE Standard 1003.1) is available, as well as all of the
-     ISO C facilities.
-
-     The state of `_POSIX_SOURCE' is irrelevant if you define the macro
-     `_POSIX_C_SOURCE' to a positive integer.
-
- -- Macro: _POSIX_C_SOURCE
-     Define this macro to a positive integer to control which POSIX
-     functionality is made available.  The greater the value of this
-     macro, the more functionality is made available.
-
-     If you define this macro to a value greater than or equal to `1',
-     then the functionality from the 1990 edition of the POSIX.1
-     standard (IEEE Standard 1003.1-1990) is made available.
-
-     If you define this macro to a value greater than or equal to `2',
-     then the functionality from the 1992 edition of the POSIX.2
-     standard (IEEE Standard 1003.2-1992) is made available.
-
-     If you define this macro to a value greater than or equal to
-     `199309L', then the functionality from the 1993 edition of the
-     POSIX.1b standard (IEEE Standard 1003.1b-1993) is made available.
-
-     Greater values for `_POSIX_C_SOURCE' will enable future extensions.
-     The POSIX standards process will define these values as necessary,
-     and the GNU C Library should support them some time after they
-     become standardized.  The 1996 edition of POSIX.1 (ISO/IEC 9945-1:
-     1996) states that if you define `_POSIX_C_SOURCE' to a value
-     greater than or equal to `199506L', then the functionality from
-     the 1996 edition is made available.
-
- -- Macro: _BSD_SOURCE
-     If you define this macro, functionality derived from 4.3 BSD Unix
-     is included as well as the ISO C, POSIX.1, and POSIX.2 material.
-
-     Some of the features derived from 4.3 BSD Unix conflict with the
-     corresponding features specified by the POSIX.1 standard.  If this
-     macro is defined, the 4.3 BSD definitions take precedence over the
-     POSIX definitions.
-
-     Due to the nature of some of the conflicts between 4.3 BSD and
-     POSIX.1, you need to use a special "BSD compatibility library"
-     when linking programs compiled for BSD compatibility.  This is
-     because some functions must be defined in two different ways, one
-     of them in the normal C library, and one of them in the
-     compatibility library.  If your program defines `_BSD_SOURCE', you
-     must give the option `-lbsd-compat' to the compiler or linker when
-     linking the program, to tell it to find functions in this special
-     compatibility library before looking for them in the normal C
-     library.  
-
- -- Macro: _SVID_SOURCE
-     If you define this macro, functionality derived from SVID is
-     included as well as the ISO C, POSIX.1, POSIX.2, and X/Open
-     material.
-
- -- Macro: _XOPEN_SOURCE
- -- Macro: _XOPEN_SOURCE_EXTENDED
-     If you define this macro, functionality described in the X/Open
-     Portability Guide is included.  This is a superset of the POSIX.1
-     and POSIX.2 functionality and in fact `_POSIX_SOURCE' and
-     `_POSIX_C_SOURCE' are automatically defined.
-
-     As the unification of all Unices, functionality only available in
-     BSD and SVID is also included.
-
-     If the macro `_XOPEN_SOURCE_EXTENDED' is also defined, even more
-     functionality is available.  The extra functions will make all
-     functions available which are necessary for the X/Open Unix brand.
-
-     If the macro `_XOPEN_SOURCE' has the value 500 this includes all
-     functionality described so far plus some new definitions from the
-     Single Unix Specification, version 2.
-
- -- Macro: _LARGEFILE_SOURCE
-     If this macro is defined some extra functions are available which
-     rectify a few shortcomings in all previous standards.
-     Specifically, the functions `fseeko' and `ftello' are available.
-     Without these functions the difference between the ISO C interface
-     (`fseek', `ftell') and the low-level POSIX interface (`lseek')
-     would lead to problems.
-
-     This macro was introduced as part of the Large File Support
-     extension (LFS).
-
- -- Macro: _LARGEFILE64_SOURCE
-     If you define this macro an additional set of functions is made
-     available which enables 32 bit systems to use files of sizes beyond
-     the usual limit of 2GB.  This interface is not available if the
-     system does not support files that large.  On systems where the
-     natural file size limit is greater than 2GB (i.e., on 64 bit
-     systems) the new functions are identical to the replaced functions.
-
-     The new functionality is made available by a new set of types and
-     functions which replace the existing ones.  The names of these new
-     objects contain `64' to indicate the intention, e.g., `off_t' vs.
-     `off64_t' and `fseeko' vs. `fseeko64'.
-
-     This macro was introduced as part of the Large File Support
-     extension (LFS).  It is a transition interface for the period when
-     64 bit offsets are not generally used (see `_FILE_OFFSET_BITS').
-
- -- Macro: _FILE_OFFSET_BITS
-     This macro determines which file system interface shall be used,
-     one replacing the other.  Whereas `_LARGEFILE64_SOURCE' makes the
-     64 bit interface available as an additional interface,
-     `_FILE_OFFSET_BITS' allows the 64 bit interface to replace the old
-     interface.
-
-     If `_FILE_OFFSET_BITS' is undefined, or if it is defined to the
-     value `32', nothing changes.  The 32 bit interface is used and
-     types like `off_t' have a size of 32 bits on 32 bit systems.
-
-     If the macro is defined to the value `64', the large file interface
-     replaces the old interface.  I.e., the functions are not made
-     available under different names (as they are with
-     `_LARGEFILE64_SOURCE').  Instead the old function names now
-     reference the new functions, e.g., a call to `fseeko' now indeed
-     calls `fseeko64'.
-
-     This macro should only be selected if the system provides
-     mechanisms for handling large files.  On 64 bit systems this macro
-     has no effect since the `*64' functions are identical to the
-     normal functions.
-
-     This macro was introduced as part of the Large File Support
-     extension (LFS).
-
- -- Macro: _ISOC99_SOURCE
-     Until the revised ISO C standard is widely adopted the new features
-     are not automatically enabled.  The GNU C Library nevertheless has
-     a complete implementation of the new standard and to enable the
-     new features the macro `_ISOC99_SOURCE' should be defined.
-
- -- Macro: _GNU_SOURCE
-     If you define this macro, everything is included: ISO C89,
-     ISO C99, POSIX.1, POSIX.2, BSD, SVID, X/Open, LFS, and GNU
-     extensions.  In the cases where POSIX.1 conflicts with BSD, the
-     POSIX definitions take precedence.
-
-     If you want to get the full effect of `_GNU_SOURCE' but make the
-     BSD definitions take precedence over the POSIX definitions, use
-     this sequence of definitions:
-
-          #define _GNU_SOURCE
-          #define _BSD_SOURCE
-          #define _SVID_SOURCE
-
-     Note that if you do this, you must link your program with the BSD
-     compatibility library by passing the `-lbsd-compat' option to the
-     compiler or linker.  *NB:* If you forget to do this, you may get
-     very strange errors at run time.
-
- -- Macro: _REENTRANT
- -- Macro: _THREAD_SAFE
-     If you define one of these macros, reentrant versions of several
-     functions get declared.  Some of the functions are specified in
-     POSIX.1c but many others are only available on a few other systems
-     or are unique to the GNU C Library.  The problem is the delay in
-     the standardization of the thread safe C library interface.
-
-     Unlike on some other systems, no special version of the C library
-     must be used for linking.  There is only one version but while
-     compiling this it must have been specified to compile as thread
-     safe.
-
-   We recommend you use `_GNU_SOURCE' in new programs.  If you don't
-specify the `-ansi' option to GCC and don't define any of these macros
-explicitly, the effect is the same as defining `_POSIX_C_SOURCE' to 2
-and `_POSIX_SOURCE', `_SVID_SOURCE', and `_BSD_SOURCE' to 1.
-
-   When you define a feature test macro to request a larger class of
-features, it is harmless to define in addition a feature test macro for
-a subset of those features.  For example, if you define
-`_POSIX_C_SOURCE', then defining `_POSIX_SOURCE' as well has no effect.
-Likewise, if you define `_GNU_SOURCE', then defining either
-`_POSIX_SOURCE' or `_POSIX_C_SOURCE' or `_SVID_SOURCE' as well has no
-effect.
-
-   Note, however, that the features of `_BSD_SOURCE' are not a subset of
-any of the other feature test macros supported.  This is because it
-defines BSD features that take precedence over the POSIX features that
-are requested by the other macros.  For this reason, defining
-`_BSD_SOURCE' in addition to the other feature test macros does have an
-effect: it causes the BSD features to take priority over the conflicting
-POSIX features.
-

Modified: trunk/libc/README
==============================================================================
--- trunk/libc/README (original)
+++ trunk/libc/README Wed Mar 21 20:25:11 2012
@@ -112,10 +112,6 @@
 the manual in the current development sources to see if your problem has
 already been corrected.
 
-The file NOTES contains a description of the feature-test macros used
-in the GNU C library, explaining how you can tell the library what
-facilities you want it to make available.
-
 Please see http://www.gnu.org/software/libc/bugs.html for bug reporting
 information.  We are now using the Bugzilla system to track all bug reports.
 This web page gives detailed information on how to report bugs properly.

Modified: trunk/libc/aclocal.m4
==============================================================================
--- trunk/libc/aclocal.m4 (original)
+++ trunk/libc/aclocal.m4 Wed Mar 21 20:25:11 2012
@@ -130,6 +130,26 @@
       [$2], [$3])
 rm -f conftest*])
 
+dnl Test a compiler option or options with an empty input file.
+dnl LIBC_TRY_CC_OPTION([options], [action-if-true], [action-if-false])
+AC_DEFUN([LIBC_TRY_CC_OPTION],
+[AS_IF([AC_TRY_COMMAND([${CC-cc} $1 -xc /dev/null -S -o /dev/null])],
+	[$2], [$3])])
+
+dnl Find and source sysdeps/*/preconfigure.
+dnl LIBC_PRECONFIGURE([$srcdir], [for])
+AC_DEFUN([LIBC_PRECONFIGURE], [dnl
+if frags=`ls -d $1/sysdeps/*/preconfigure 2> /dev/null`
+then
+  AC_MSG_CHECKING($2 preconfigure fragments)
+  for frag in $frags; do
+    name=`echo "$frag" | sed 's@/[[^/]]*[$]@@;s@^.*/@@'`
+    echo $ECHO_N "$name $ECHO_C" >&AS_MESSAGE_FD
+    . "$frag"
+  done
+  AC_MSG_RESULT()
+fi])
+
 # These two macros are taken from GCC's config/acx.m4.
 dnl Support the --with-pkgversion configure option.
 dnl ACX_PKGVERSION(default-pkgversion)

Modified: trunk/libc/config.h.in
==============================================================================
--- trunk/libc/config.h.in (original)
+++ trunk/libc/config.h.in Wed Mar 21 20:25:11 2012
@@ -89,6 +89,9 @@
 
 /* Defined on SPARC if GCC emits GOTDATA relocations.  */
 #undef  HAVE_GCC_GOTDATA
+
+/* Define on SPARC if AS supports VIS3 instructions.  */
+#undef  HAVE_AS_VIS3_SUPPORT
 
 /* Define if the linker supports the -z combreloc option.  */
 #undef	HAVE_Z_COMBRELOC

Modified: trunk/libc/config.make.in
==============================================================================
--- trunk/libc/config.make.in (original)
+++ trunk/libc/config.make.in Wed Mar 21 20:25:11 2012
@@ -58,6 +58,7 @@
 have-forced-unwind = @libc_cv_forced_unwind@
 have-fpie = @libc_cv_fpie@
 have-mfma4 = @libc_cv_cc_fma4@
+have-as-vis3 = @libc_cv_sparc_as_vis3@
 gnu89-inline-CFLAGS = @gnu89_inline@
 have-ssp = @libc_cv_ssp@
 have-selinux = @have_selinux@

Modified: trunk/libc/configure
==============================================================================
--- trunk/libc/configure (original)
+++ trunk/libc/configure Wed Mar 21 20:25:11 2012
@@ -616,6 +616,7 @@
 static
 ldd_rewrite_script
 use_ldconfig
+libc_cv_sparc_as_vis3
 libc_cv_as_i686
 libc_cv_cc_fma4
 libc_cv_cc_novzeroupper
@@ -3885,6 +3886,19 @@
 fi
 
 
+if frags=`ls -d $srcdir/sysdeps/*/preconfigure 2> /dev/null`
+then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysdeps preconfigure fragments" >&5
+$as_echo_n "checking for sysdeps preconfigure fragments... " >&6; }
+  for frag in $frags; do
+    name=`echo "$frag" | sed 's@/[^/]*$@@;s@^.*/@@'`
+    echo $ECHO_N "$name $ECHO_C" >&6
+    . "$frag"
+  done
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5
+$as_echo "" >&6; }
+fi
+
 # An add-on can set this when it wants to disable the sanity check below.
 libc_config_ok=no
 
@@ -4002,17 +4016,17 @@
     fi
     if test -n "$libc_add_on"; then
       if frags=`ls -d $libc_add_on_srcdir/sysdeps/*/preconfigure 2> /dev/null`
-      then
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking add-on $libc_add_on for preconfigure fragments" >&5
+then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking add-on $libc_add_on for preconfigure fragments" >&5
 $as_echo_n "checking add-on $libc_add_on for preconfigure fragments... " >&6; }
-	for frag in $frags; do
-	  name=`echo "$frag" | sed 's@/[^/]*$@@;s@^.*/@@'`
-	  echo $ECHO_N "$name $ECHO_C" >&6
-	  . "$frag"
-	done
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5
+  for frag in $frags; do
+    name=`echo "$frag" | sed 's@/[^/]*$@@;s@^.*/@@'`
+    echo $ECHO_N "$name $ECHO_C" >&6
+    . "$frag"
+  done
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5
 $as_echo "" >&6; }
-      fi
+fi
       use_add_ons="$use_add_ons $libc_add_on"
       add_ons_pfx="$add_ons_pfx $libc_add_on/"
       test -z "$libc_add_on_canonical" ||
@@ -6704,18 +6718,17 @@
 if ${libc_cv_ssp+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -Werror -fstack-protector
-			    -o /dev/null -c -x c /dev/null 1>&5'
+  if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -Werror -fstack-protector -xc /dev/null -S -o /dev/null'
   { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
   (eval $ac_try) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }
-then
+  test $ac_status = 0; }; }; then :
   libc_cv_ssp=yes
 else
   libc_cv_ssp=no
 fi
+
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_ssp" >&5
 $as_echo "$libc_cv_ssp" >&6; }
@@ -7110,10 +7123,11 @@
   (eval $ac_try) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then
+  test $ac_status = 0; }; }; then :
+
       libc_cv_cc_submachine="$opt"
       break
-    fi
+fi
   done
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_submachine" >&5
@@ -7695,6 +7709,7 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** be removed." >&5
 $as_echo "$as_me: WARNING: *** be removed." >&2;}
 fi
+
 
 
 

Modified: trunk/libc/configure.in
==============================================================================
--- trunk/libc/configure.in (original)
+++ trunk/libc/configure.in Wed Mar 21 20:25:11 2012
@@ -321,6 +321,9 @@
   *) submachine="$withval" ;;
   esac
 ])
+
+dnl Let sysdeps/*/preconfigure act here, like they can in add-ons.
+LIBC_PRECONFIGURE([$srcdir], [for sysdeps])
 
 # An add-on can set this when it wants to disable the sanity check below.
 libc_config_ok=no
@@ -441,16 +444,7 @@
       }
     fi
     if test -n "$libc_add_on"; then
-      if frags=`ls -d $libc_add_on_srcdir/sysdeps/*/preconfigure 2> /dev/null`
-      then
-	AC_MSG_CHECKING(add-on $libc_add_on for preconfigure fragments)
-	for frag in $frags; do
-	  name=`echo "$frag" | sed 's@/[[^/]]*$@@;s@^.*/@@'`
-	  echo $ECHO_N "$name $ECHO_C" >&AS_MESSAGE_FD
-	  . "$frag"
-	done
-	AC_MSG_RESULT()
-      fi
+      LIBC_PRECONFIGURE([$libc_add_on_srcdir], [add-on $libc_add_on for])
       use_add_ons="$use_add_ons $libc_add_on"
       add_ons_pfx="$add_ons_pfx $libc_add_on/"
       test -z "$libc_add_on_canonical" ||
@@ -1787,13 +1781,10 @@
 AC_SUBST(fno_unit_at_a_time)
 
 AC_CACHE_CHECK(for -fstack-protector, libc_cv_ssp, [dnl
-if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -Werror -fstack-protector
-			    -o /dev/null -c -x c /dev/null 1>&AS_MESSAGE_LOG_FD])
-then
-  libc_cv_ssp=yes
-else
-  libc_cv_ssp=no
-fi])
+LIBC_TRY_CC_OPTION([$CFLAGS $CPPFLAGS -Werror -fstack-protector],
+		   [libc_cv_ssp=yes],
+		   [libc_cv_ssp=no])
+])
 AC_SUBST(libc_cv_ssp)
 
 AC_CACHE_CHECK(for -fgnu89-inline, libc_cv_gnu89_inline, [dnl
@@ -2034,10 +2025,9 @@
 		 libc_cv_cc_submachine, [dnl
   libc_cv_cc_submachine=no
   for opt in "-march=$submachine" "-mcpu=$submachine"; do
-    if AC_TRY_COMMAND([${CC-cc} $opt -xc /dev/null -S -o /dev/null]); then
+    LIBC_TRY_CC_OPTION([$opt], [
       libc_cv_cc_submachine="$opt"
-      break
-    fi
+      break], [])
   done])
   if test "x$libc_cv_cc_submachine" = xno; then
     AC_MSG_ERROR([${CC-cc} does not support $submachine])
@@ -2174,6 +2164,7 @@
 AC_SUBST(libc_cv_cc_novzeroupper)
 AC_SUBST(libc_cv_cc_fma4)
 AC_SUBST(libc_cv_as_i686)
+AC_SUBST(libc_cv_sparc_as_vis3)
 
 AC_SUBST(use_ldconfig)
 AC_SUBST(ldd_rewrite_script)

Modified: trunk/libc/conform/conformtest.pl
==============================================================================
--- trunk/libc/conform/conformtest.pl (original)
+++ trunk/libc/conform/conformtest.pl Wed Mar 21 20:25:11 2012
@@ -3,11 +3,11 @@
 use Getopt::Long;
 use POSIX;
 
+$standard = "XOPEN2K8";
 $CC = "gcc";
-
-$standard="XOPEN2K8";
+$tmpdir = "/tmp";
 GetOptions ('headers=s' => \@headers, 'standard=s' => \$standard,
-	    'flags=s' => \$flags, 'cc=s' => \$CC);
+	    'flags=s' => \$flags, 'cc=s' => \$CC, 'tmpdir=s' => \$tmpdir);
 @headers = split(/,/,join(',',@headers));
 
 # List of the headers we are testing.
@@ -83,11 +83,6 @@
 while ($#knownproblems >= 0) {
   $isknown{pop (@knownproblems)} = 1;
 }
-
-$uid = getuid();
-($pwname,$pwpasswd,$pwuid,$pwgid,
- $pwquota,$pwcomment,$pwgcos,$pwdir,$pwshell,$pwexpire) = getpwuid($uid);
-$tmpdir = "$pwdir";
 
 $verbose = 1;
 

Modified: trunk/libc/conform/run-conformtest.sh
==============================================================================
--- trunk/libc/conform/run-conformtest.sh (original)
+++ trunk/libc/conform/run-conformtest.sh Wed Mar 21 20:25:11 2012
@@ -4,6 +4,9 @@
 perl="$2"
 cc="$3"
 includes="$4"
+
+scratch=${objpfx}scratch
+mkdir -p "$scratch"
 
 standards=("ISO" "ISO99" "ISO11" "POSIX" "XPG3" "XPG4" "UNIX98"
 	   "XOPEN2K" "XOPEN2K8" "POSIX2008")
@@ -13,7 +16,7 @@
 for s in ${standards[*]}; do
     echo -n $s...
     e=0
-    if ! $perl conformtest.pl --cc="$cc" --flags="$includes" --standard=$s > ${objpfx}conform-$s.out; then
+    if ! $perl conformtest.pl --tmpdir="$scratch" --cc="$cc" --flags="$includes" --standard=$s > ${objpfx}conform-$s.out; then
 	e=1
     fi
     printf "\n%s\n" $s >> ${objpfx}run-conformtest.out

Modified: trunk/libc/debug/backtracesymsfd.c
==============================================================================
--- trunk/libc/debug/backtracesymsfd.c (original)
+++ trunk/libc/debug/backtracesymsfd.c Wed Mar 21 20:25:11 2012
@@ -21,7 +21,7 @@
 #include <string.h>
 #include <sys/uio.h>
 
-#include <stdio-common/_itoa.h>
+#include <_itoa.h>
 #include <not-cancel.h>
 
 #if __ELF_NATIVE_CLASS == 32

Modified: trunk/libc/debug/segfault.c
==============================================================================
--- trunk/libc/debug/segfault.c (original)
+++ trunk/libc/debug/segfault.c Wed Mar 21 20:25:11 2012
@@ -29,7 +29,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
-#include <stdio-common/_itoa.h>
+#include <_itoa.h>
 #include <ldsodefs.h>
 #include <gnu/option-groups.h>
 

Modified: trunk/libc/elf/cache.c
==============================================================================
--- trunk/libc/elf/cache.c (original)
+++ trunk/libc/elf/cache.c Wed Mar 21 20:25:11 2012
@@ -90,6 +90,10 @@
       break;
     case FLAG_MIPS64_LIBN64:
       fputs (",64bit", stdout);
+      break;
+    case FLAG_X8664_LIBX32:
+      fputs (",x32", stdout);
+      break;
     case 0:
       break;
     default:

Modified: trunk/libc/elf/dl-cache.c
==============================================================================
--- trunk/libc/elf/dl-cache.c (original)
+++ trunk/libc/elf/dl-cache.c Wed Mar 21 20:25:11 2012
@@ -24,7 +24,7 @@
 #include <dl-cache.h>
 #include <dl-procinfo.h>
 
-#include <stdio-common/_itoa.h>
+#include <_itoa.h>
 
 #ifndef _DL_PLATFORMS_COUNT
 # define _DL_PLATFORMS_COUNT 0

Modified: trunk/libc/elf/dl-minimal.c
==============================================================================
--- trunk/libc/elf/dl-minimal.c (original)
+++ trunk/libc/elf/dl-minimal.c Wed Mar 21 20:25:11 2012
@@ -26,7 +26,7 @@
 #include <sys/param.h>
 #include <sys/types.h>
 #include <ldsodefs.h>
-#include <stdio-common/_itoa.h>
+#include <_itoa.h>
 
 #include <assert.h>
 

Modified: trunk/libc/elf/dl-misc.c
==============================================================================
--- trunk/libc/elf/dl-misc.c (original)
+++ trunk/libc/elf/dl-misc.c Wed Mar 21 20:25:11 2012
@@ -30,7 +30,7 @@
 #include <sys/stat.h>
 #include <sys/uio.h>
 #include <sysdep.h>
-#include <stdio-common/_itoa.h>
+#include <_itoa.h>
 #include <bits/libc-lock.h>
 
 /* Read the whole contents of FILE into new mmap'd space with given

Modified: trunk/libc/elf/dl-sysdep.c
==============================================================================
--- trunk/libc/elf/dl-sysdep.c (original)
+++ trunk/libc/elf/dl-sysdep.c Wed Mar 21 20:25:11 2012
@@ -29,7 +29,7 @@
 #include <sys/stat.h>
 #include <sys/mman.h>
 #include <ldsodefs.h>
-#include <stdio-common/_itoa.h>
+#include <_itoa.h>
 #include <fpu_control.h>
 
 #include <entry.h>

Modified: trunk/libc/elf/dl-version.c
==============================================================================
--- trunk/libc/elf/dl-version.c (original)
+++ trunk/libc/elf/dl-version.c Wed Mar 21 20:25:11 2012
@@ -23,7 +23,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <ldsodefs.h>
-#include <stdio-common/_itoa.h>
+#include <_itoa.h>
 
 #include <assert.h>
 

Modified: trunk/libc/elf/rtld.c
==============================================================================
--- trunk/libc/elf/rtld.c (original)
+++ trunk/libc/elf/rtld.c Wed Mar 21 20:25:11 2012
@@ -28,7 +28,7 @@
 #include <sys/param.h>
 #include <sys/stat.h>
 #include <ldsodefs.h>
-#include <stdio-common/_itoa.h>
+#include <_itoa.h>
 #include <entry.h>
 #include <fpu_control.h>
 #include <hp-timing.h>

Modified: trunk/libc/elf/sotruss-lib.c
==============================================================================
--- trunk/libc/elf/sotruss-lib.c (original)
+++ trunk/libc/elf/sotruss-lib.c Wed Mar 21 20:25:11 2012
@@ -1,5 +1,5 @@
 /* Trace calls through PLTs and show caller, callee, and parameters.
-   Copyright (C) 2011 Free Software Foundation, Inc.
+   Copyright (C) 2011, 2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@xxxxxxxxx>, 2011.
 
@@ -288,6 +288,40 @@
 
   return sym->st_value;
 }
+#elif defined __sparc__ && !defined __arch64__
+Elf32_Addr
+la_sparc32_gnu_pltenter (Elf32_Sym *sym __attribute__ ((unused)),
+			 unsigned int ndx __attribute__ ((unused)),
+			 uintptr_t *refcook, uintptr_t *defcook,
+			 La_sparc32_regs *regs, unsigned int *flags,
+			 const char *symname, long int *framesizep)
+{
+  print_enter (refcook, defcook, symname,
+	       regs->lr_reg[0], regs->lr_reg[1], regs->lr_reg[2],
+	       *flags);
+
+  /* No need to copy anything, we will not need the parameters in any case.  */
+  *framesizep = 0;
+
+  return sym->st_value;
+}
+#elif defined __sparc__ && defined __arch64__
+Elf64_Addr
+la_sparc64_gnu_pltenter (Elf64_Sym *sym __attribute__ ((unused)),
+			 unsigned int ndx __attribute__ ((unused)),
+			 uintptr_t *refcook, uintptr_t *defcook,
+			 La_sparc64_regs *regs, unsigned int *flags,
+			 const char *symname, long int *framesizep)
+{
+  print_enter (refcook, defcook, symname,
+	       regs->lr_reg[0], regs->lr_reg[1], regs->lr_reg[2],
+	       *flags);
+
+  /* No need to copy anything, we will not need the parameters in any case.  */
+  *framesizep = 0;
+
+  return sym->st_value;
+}
 #elif !defined HAVE_ARCH_PLTENTER
 # warning "pltenter for architecture not supported"
 #endif
@@ -302,7 +336,7 @@
   if (print_pid)
     snprintf (buf, sizeof (buf), "%5ld: ", (long int) getpid ());
 
-  fprintf (out_file, "%s%15s -> %-15s:%s%s - 0x%lu\n",
+  fprintf (out_file, "%s%15s -> %-15s:%s%s - 0x%lx\n",
 	   buf, (char *) *refcook, (char *) *defcook, " ", symname, reg);
 }
 
@@ -327,6 +361,26 @@
 
   return 0;
 }
+#elif defined __sparc__ && !defined __arch64__
+unsigned int
+la_sparc32_gnu_pltexit (Elf32_Sym *sym, unsigned int ndx, uintptr_t *refcook,
+			uintptr_t *defcook, const struct La_sparc32_regs *inregs,
+			struct La_sparc32_retval *outregs, const char *symname)
+{
+  print_exit (refcook, defcook, symname, outregs->lrv_reg[0]);
+
+  return 0;
+}
+#elif defined __sparc__ && defined __arch64__
+unsigned int
+la_sparc64_gnu_pltexit (Elf64_Sym *sym, unsigned int ndx, uintptr_t *refcook,
+			uintptr_t *defcook, const struct La_sparc64_regs *inregs,
+			struct La_sparc64_retval *outregs, const char *symname)
+{
+  print_exit (refcook, defcook, symname, outregs->lrv_reg[0]);
+
+  return 0;
+}
 #elif !defined HAVE_ARCH_PLTEXIT
 # warning "pltexit for architecture not supported"
 #endif

Modified: trunk/libc/hurd/hurdsock.c
==============================================================================
--- trunk/libc/hurd/hurdsock.c (original)
+++ trunk/libc/hurd/hurdsock.c Wed Mar 21 20:25:11 2012
@@ -22,7 +22,7 @@
 #include <string.h>
 #include <hurd/paths.h>
 #include <stdio.h>
-#include "stdio-common/_itoa.h"
+#include <_itoa.h>
 #include <cthreads.h>		/* For `struct mutex'.  */
 #include "hurdmalloc.h"		/* XXX */
 

Modified: trunk/libc/hurd/lookup-retry.c
==============================================================================
--- trunk/libc/hurd/lookup-retry.c (original)
+++ trunk/libc/hurd/lookup-retry.c Wed Mar 21 20:25:11 2012
@@ -24,7 +24,7 @@
 #include <limits.h>
 #include <fcntl.h>
 #include <string.h>
-#include "stdio-common/_itoa.h"
+#include <_itoa.h>
 
 /* Translate the error from dir_lookup into the error the user sees.  */
 static inline error_t

Modified: trunk/libc/malloc/malloc.c
==============================================================================
--- trunk/libc/malloc/malloc.c (original)
+++ trunk/libc/malloc/malloc.c Wed Mar 21 20:25:11 2012
@@ -218,7 +218,7 @@
 #include <malloc-machine.h>
 
 #include <atomic.h>
-#include <stdio-common/_itoa.h>
+#include <_itoa.h>
 #include <bits/wordsize.h>
 #include <sys/sysinfo.h>
 

Modified: trunk/libc/malloc/mtrace.c
==============================================================================
--- trunk/libc/malloc/mtrace.c (original)
+++ trunk/libc/malloc/mtrace.c Wed Mar 21 20:25:11 2012
@@ -31,7 +31,7 @@
 #include <string.h>
 #include <stdlib.h>
 
-#include <stdio-common/_itoa.h>
+#include <_itoa.h>
 
 #include <libc-internal.h>
 

Modified: trunk/libc/manual/creature.texi
==============================================================================
--- trunk/libc/manual/creature.texi (original)
+++ trunk/libc/manual/creature.texi Wed Mar 21 20:25:11 2012
@@ -1,6 +1,5 @@
 @node Feature Test Macros
 @subsection Feature Test Macros
-@include macros.texi
 
 @cindex feature test macros
 The exact set of features available when you compile a source file

Modified: trunk/libc/manual/intro.texi
==============================================================================
--- trunk/libc/manual/intro.texi (original)
+++ trunk/libc/manual/intro.texi Wed Mar 21 20:25:11 2012
@@ -548,7 +548,6 @@
 @end itemize
 
 @comment Include the section on Creature Nest Macros.
-@comment It is in a separate file so it can be formatted into ../NOTES.
 @include creature.texi
 
 @node Roadmap to the Manual,  , Using the Library, Introduction

Modified: trunk/libc/manual/lang.texi
==============================================================================
--- trunk/libc/manual/lang.texi (original)
+++ trunk/libc/manual/lang.texi Wed Mar 21 20:25:11 2012
@@ -229,7 +229,6 @@
 			  variable arguments functions.
 * Argument Macros::      Detailed specification of the macros
         		  for accessing variable arguments.
-* Old Varargs::		 The pre-ISO way of defining variadic functions.
 @end menu
 
 @node Variadic Prototypes
@@ -427,9 +426,6 @@
 This macro initializes the argument pointer variable @var{ap} to point
 to the first of the optional arguments of the current function;
 @var{last-required} must be the last required argument to the function.
-
-@xref{Old Varargs}, for an alternate definition of @code{va_start}
-found in the header file @file{varargs.h}.
 @end deftypefn
 
 @comment stdarg.h
@@ -511,68 +507,6 @@
 @include add.c.texi
 @end smallexample
 
-@node Old Varargs
-@subsubsection Old-Style Variadic Functions
-
-@pindex varargs.h
-Before @w{ISO C}, programmers used a slightly different facility for
-writing variadic functions.  The GNU C compiler still supports it;
-currently, it is more portable than the @w{ISO C} facility, since support
-for @w{ISO C} is still not universal.  The header file which defines the
-old-fashioned variadic facility is called @file{varargs.h}.
-
-Using @file{varargs.h} is almost the same as using @file{stdarg.h}.
-There is no difference in how you call a variadic function;
-see @ref{Calling Variadics}.  The only difference is in how you define
-them.  First of all, you must use old-style non-prototype syntax, like
-this:
-
-@smallexample
-tree
-build (va_alist)
-     va_dcl
-@{
-@end smallexample
-
-Secondly, you must give @code{va_start} only one argument, like this:
-
-@smallexample
-  va_list p;
-  va_start (p);
-@end smallexample
-
-These are the special macros used for defining old-style variadic
-functions:
-
-@comment varargs.h
-@comment Unix
-@deffn Macro va_alist
-This macro stands for the argument name list required in a variadic
-function.
-@end deffn
-
-@comment varargs.h
-@comment Unix
-@deffn Macro va_dcl
-This macro declares the implicit argument or arguments for a variadic
-function.
-@end deffn
-
-@comment varargs.h
-@comment Unix
-@deftypefn {Macro} void va_start (va_list @var{ap})
-This macro, as defined in @file{varargs.h}, initializes the argument
-pointer variable @var{ap} to point to the first argument of the current
-function.
-@end deftypefn
-
-The other argument macros, @code{va_arg} and @code{va_end}, are the same
-in @file{varargs.h} as in @file{stdarg.h}; see @ref{Argument Macros}, for
-details.
-
-It does not work to include both @file{varargs.h} and @file{stdarg.h} in
-the same compilation; they define @code{va_start} in conflicting ways.
-
 @node Null Pointer Constant
 @section Null Pointer Constant
 @cindex null pointer constant

Modified: trunk/libc/manual/llio.texi
==============================================================================
--- trunk/libc/manual/llio.texi (original)
+++ trunk/libc/manual/llio.texi Wed Mar 21 20:25:11 2012
@@ -1458,7 +1458,7 @@
 
 @end table
 
-@code{msync} returns @math{0} for success and @math{-1} for
+@code{madvise} returns @math{0} for success and @math{-1} for
 error.  Errors include:
 @table @code
 

Modified: trunk/libc/math/gen-libm-test.pl
==============================================================================
--- trunk/libc/math/gen-libm-test.pl (original)
+++ trunk/libc/math/gen-libm-test.pl Wed Mar 21 20:25:11 2012
@@ -1,5 +1,5 @@
 #!/usr/bin/perl -w
-# Copyright (C) 1999, 2006 Free Software Foundation, Inc.
+# Copyright (C) 1999-2012 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 # Contributed by Andreas Jaeger <aj@xxxxxxx>, 1999.
 
@@ -78,8 +78,10 @@
     "M_SQRT_PIl" => "sqrt (pi)",
     "INVALID_EXCEPTION" => "invalid exception",
     "DIVIDE_BY_ZERO_EXCEPTION" => "division by zero exception",
+    "OVERFLOW_EXCEPTION" => "overflow exception",
     "INVALID_EXCEPTION_OK" => "invalid exception allowed",
     "DIVIDE_BY_ZERO_EXCEPTION_OK" => "division by zero exception allowed",
+    "OVERFLOW_EXCEPTION_OK" => "overflow exception allowed",
     "EXCEPTIONS_OK" => "exceptions allowed",
     "IGNORE_ZERO_INF_SIGN" => "sign of zero/inf not specified",
 "INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN" => "invalid exception and sign of zero/inf not specified"

Modified: trunk/libc/math/libm-test.inc
==============================================================================
--- trunk/libc/math/libm-test.inc (original)
+++ trunk/libc/math/libm-test.inc Wed Mar 21 20:25:11 2012
@@ -78,8 +78,8 @@
    against.  These implemented tests should check all cases that are
    specified in ISO C99.
 
-   Exception testing: At the moment only divide-by-zero and invalid
-   exceptions are tested.  Overflow/underflow and inexact exceptions
+   Exception testing: At the moment only divide-by-zero, invalid and
+   overflow exceptions are tested.  Underflow and inexact exceptions
    aren't checked at the moment.
 
    NaN values: There exist signalling and quiet NaNs.  This implementation
@@ -133,12 +133,14 @@
 #define NO_EXCEPTION			0x0
 #define INVALID_EXCEPTION		0x1
 #define DIVIDE_BY_ZERO_EXCEPTION	0x2
+#define OVERFLOW_EXCEPTION		0x4
 /* The next flags signals that those exceptions are allowed but not required.   */
-#define INVALID_EXCEPTION_OK		0x4
-#define DIVIDE_BY_ZERO_EXCEPTION_OK	0x8
+#define INVALID_EXCEPTION_OK		0x8
+#define DIVIDE_BY_ZERO_EXCEPTION_OK	0x10
+#define OVERFLOW_EXCEPTION_OK		0x20
 #define EXCEPTIONS_OK INVALID_EXCEPTION_OK+DIVIDE_BY_ZERO_EXCEPTION_OK
 /* Some special test flags, passed togther with exceptions.  */
-#define IGNORE_ZERO_INF_SIGN		0x10
+#define IGNORE_ZERO_INF_SIGN		0x40
 
 /* Various constants (we must supply them precalculated for accuracy).  */
 #define M_PI_6l			.52359877559829887307710723054658383L
@@ -458,6 +460,11 @@
   if ((exception & INVALID_EXCEPTION_OK) == 0)
     test_single_exception (test_name, exception, INVALID_EXCEPTION, FE_INVALID,
 			 "Invalid operation");
+#endif
+#ifdef FE_OVERFLOW
+  if ((exception & OVERFLOW_EXCEPTION_OK) == 0)
+    test_single_exception (test_name, exception, OVERFLOW_EXCEPTION,
+			   FE_OVERFLOW, "Overflow");
 #endif
   feclearexcept (FE_ALL_EXCEPT);
 }
@@ -957,6 +964,8 @@
   TEST_ff_f (atan2, minus_infty, minus_infty, -M_PI_34l);
   TEST_ff_f (atan2, nan_value, nan_value, nan_value);
 
+  TEST_ff_f (atan2, max_value, max_value, M_PI_4l);
+
   TEST_ff_f (atan2, 0.75L, 1, 0.643501108793284386802809228717322638L);
   TEST_ff_f (atan2, -0.75L, 1.0L, -0.643501108793284386802809228717322638L);
   TEST_ff_f (atan2, 0.75L, -1.0L, 2.49809154479650885165983415456218025L);
@@ -1893,6 +1902,21 @@
   TEST_c_c (cexp, 0.75L, 1.25L, 0.667537446429131586942201977015932112L, 2.00900045494094876258347228145863909L);
   TEST_c_c (cexp, -2.0, -3.0, -0.13398091492954261346140525546115575L, -0.019098516261135196432576240858800925L);
 
+  TEST_c_c (cexp, 0, 0x1p65, 0.99888622066058013610642172179340364209972L, -0.047183876212354673805106149805700013943218L);
+  TEST_c_c (cexp, 0, -0x1p65, 0.99888622066058013610642172179340364209972L, 0.047183876212354673805106149805700013943218L);
+  TEST_c_c (cexp, 50, 0x1p127, 4.053997150228616856622417636046265337193e21L, 3.232070315463388524466674772633810238819e21L);
+
+#ifndef TEST_FLOAT
+  TEST_c_c (cexp, 0, 1e22, 0.5232147853951389454975944733847094921409L, -0.8522008497671888017727058937530293682618L);
+  TEST_c_c (cexp, 0, 0x1p1023, -0.826369834614147994500785680811743734805L, 0.5631277798508840134529434079444683477104L);
+  TEST_c_c (cexp, 500, 0x1p1023, -1.159886268932754433233243794561351783426e217L, 7.904017694554466595359379965081774849708e216L);
+#endif
+
+#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
+  TEST_c_c (cexp, 0, 0x1p16383L, 0.9210843909921906206874509522505756251609L, 0.3893629985894208126948115852610595405563L);
+  TEST_c_c (cexp, -10000, 0x1p16383L, 1.045876464564882298442774542991176546722e-4343L, 4.421154026488516836023811173959413420548e-4344L);
+#endif
+
   END (cexp, complex);
 }
 
@@ -1975,6 +1999,24 @@
   TEST_c_c (clog, 0.75L, 1.25L, 0.376885901188190075998919126749298416L, 1.03037682652431246378774332703115153L);
   TEST_c_c (clog, -2, -3, 1.2824746787307683680267437207826593L, -2.1587989303424641704769327722648368L);
 
+  TEST_c_c (clog, 0x1.fffffep+127L, 0x1.fffffep+127L, 89.06941264234832570836679262104313101776L, M_PI_4l);
+  TEST_c_c (clog, 0x1.fffffep+127L, 1.0L, 88.72283905206835305365817656031404273372L, 2.938736052218037251011746307725933020145e-39L);
+  TEST_c_c (clog, 0x1p-149L, 0x1p-149L, -102.9323563131518784484589700365392203592L, M_PI_4l);
+  TEST_c_c (clog, 0x1p-147L, 0x1p-147L, -101.5460619520319878296245057936228672231L, M_PI_4l);
+
+#ifndef TEST_FLOAT
+  TEST_c_c (clog, 0x1.fffffffffffffp+1023L, 0x1.fffffffffffffp+1023L, 710.1292864836639693869320059713862337880L, M_PI_4l);
+  TEST_c_c (clog, 0x1.fffffffffffffp+1023L, 0x1p+1023L, 709.8942846690411016323109979483151967689L, 0.4636476090008061606231772164674799632783L);
+  TEST_c_c (clog, 0x1p-1074L, 0x1p-1074L, -744.0934983311012896593986823853525458290L, M_PI_4l);
+  TEST_c_c (clog, 0x1p-1073L, 0x1p-1073L, -743.4003511505413443499814502638943692610L, M_PI_4l);
+#endif
+
+#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
+  TEST_c_c (clog, 0x1.fp+16383L, 0x1.fp+16383L, 11356.83823118610934184548269774874545400L, M_PI_4l);
+  TEST_c_c (clog, 0x1.fp+16383L, 0x1p+16383L, 11356.60974243783798653123798337822335902L, 0.4764674194737066993385333770295162295856L);
+  TEST_c_c (clog, 0x1p-16440L, 0x1p-16441L, -11395.22807662984378194141292922726786191L, 0.4636476090008061162142562314612144020285L);
+#endif
+
   END (clog, complex);
 }
 
@@ -2041,6 +2083,24 @@
   TEST_c_c (clog10, 0.75L, 1.25L, 0.163679467193165171449476605077428975L, 0.447486970040493067069984724340855636L);
   TEST_c_c (clog10, -2, -3, 0.556971676153418384603252578971164214L, -0.937554462986374708541507952140189646L);
 
+  TEST_c_c (clog10, 0x1.fffffep+127L, 0x1.fffffep+127L, 38.68235441693561449174780668781319348761L, M_PI4_LOG10El);
+  TEST_c_c (clog10, 0x1.fffffep+127L, 1.0L, 38.53183941910362389414093724045094697423L, 1.276276851248440096917018665609900318458e-39L);
+  TEST_c_c (clog10, 0x1p-149L, 0x1p-149L, -44.70295435610120748924022586658721447508L, M_PI4_LOG10El);
+  TEST_c_c (clog10, 0x1p-147L, 0x1p-147L, -44.10089436477324509881274807713822842154L, M_PI4_LOG10El);
+
+#ifndef TEST_FLOAT
+  TEST_c_c (clog10, 0x1.fffffffffffffp+1023L, 0x1.fffffffffffffp+1023L, 308.4052305577487344482591243175787477115L, M_PI4_LOG10El);
+  TEST_c_c (clog10, 0x1.fffffffffffffp+1023L, 0x1p+1023L, 308.3031705664207720674749211936626341569L, 0.2013595981366865903254995612594728746470L);
+  TEST_c_c (clog10, 0x1p-1074L, 0x1p-1074L, -323.1557003452838130619487034867432642357L, M_PI4_LOG10El);
+  TEST_c_c (clog10, 0x1p-1073L, 0x1p-1073L, -322.8546703496198318667349645920187712089L, M_PI4_LOG10El);
+#endif
+
+#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
+  TEST_c_c (clog10, 0x1.fp+16383L, 0x1.fp+16383L, 4932.212175672014259683102930239951947672L, M_PI4_LOG10El);
+  TEST_c_c (clog10, 0x1.fp+16383L, 0x1p+16383L, 4932.112944269463028900262609694408579449L, 0.2069271710841128115912940666587802677383L);
+  TEST_c_c (clog10, 0x1p-16440L, 0x1p-16441L, -4948.884673709346821106688037612752099609L, 0.2013595981366865710389502301937289472543L);
+#endif
+
   END (clog10, complex);
 }
 
@@ -2120,8 +2180,20 @@
 
   TEST_f_f (cos, 0.75L, 0.731688868873820886311838753000084544L);
 
+  TEST_f_f (cos, 0x1p65, 0.99888622066058013610642172179340364209972L);
+  TEST_f_f (cos, -0x1p65, 0.99888622066058013610642172179340364209972L);
+
 #ifdef TEST_DOUBLE
   TEST_f_f (cos, 0.80190127184058835, 0.69534156199418473);
+#endif
+
+#ifndef TEST_FLOAT
+  TEST_f_f (cos, 1e22, 0.5232147853951389454975944733847094921409L);
+  TEST_f_f (cos, 0x1p1023, -0.826369834614147994500785680811743734805L);
+#endif
+
+#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
+  TEST_f_f (cos, 0x1p16383L, 0.9210843909921906206874509522505756251609L);
 #endif
 
   END (cos);
@@ -2664,6 +2736,24 @@
   /* Principal square root should be returned (i.e., non-negative real
      part).  */
   TEST_c_c (csqrt, 0, -1, M_SQRT_2_2, -M_SQRT_2_2);
+
+  TEST_c_c (csqrt, 0x1.fffffep+127L, 0x1.fffffep+127L, 2.026714405498316804978751017492482558075e+19L, 8.394925938143272988211878516208015586281e+18L);

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