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

[Commits] r25088 - in /trunk: ./ libc/ libc/benchtests/ libc/elf/ libc/inet/netinet/ libc/malloc/ libc/math/ libc/nptl/ libc/nptl/sysd...



Author: joseph
Date: Tue Jan 21 18:56:41 2014
New Revision: 25088

Log:
Merge changes between r24941 and r25087 from /fsf/trunk.

Added:
    trunk/libc/nptl/sysdeps/unix/sysv/linux/s390/Versions
      - copied unchanged from r25087, fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/s390/Versions
    trunk/libc/nptl/sysdeps/unix/sysv/linux/s390/pt-longjmp.c
      - copied unchanged from r25087, fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/s390/pt-longjmp.c
    trunk/libc/nptl/tst-tls7.c
      - copied unchanged from r25087, fsf/trunk/libc/nptl/tst-tls7.c
    trunk/libc/nptl/tst-tls7mod.c
      - copied unchanged from r25087, fsf/trunk/libc/nptl/tst-tls7mod.c
    trunk/libc/po/pot.header
      - copied unchanged from r25087, fsf/trunk/libc/po/pot.header
    trunk/libc/ports/sysdeps/aarch64/configure
      - copied unchanged from r25087, fsf/trunk/libc/ports/sysdeps/aarch64/configure
    trunk/libc/ports/sysdeps/aarch64/configure.ac
      - copied unchanged from r25087, fsf/trunk/libc/ports/sysdeps/aarch64/configure.ac
    trunk/libc/ports/sysdeps/arm/gcc-compat.h
      - copied unchanged from r25087, fsf/trunk/libc/ports/sysdeps/arm/gcc-compat.h
    trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/fpu/
      - copied from r25087, fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/fpu/
    trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/nofpu/
      - copied from r25087, fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/nofpu/
    trunk/libc/sysdeps/generic/gcc-compat.h
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/generic/gcc-compat.h
    trunk/libc/sysdeps/powerpc/sotruss-lib.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/powerpc/sotruss-lib.c
    trunk/libc/sysdeps/s390/Makefile
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/Makefile
    trunk/libc/sysdeps/s390/__longjmp.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/__longjmp.c
    trunk/libc/sysdeps/s390/longjmp.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/longjmp.c
    trunk/libc/sysdeps/s390/rtld-__longjmp.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/rtld-__longjmp.c
    trunk/libc/sysdeps/s390/rtld-global-offsets.sym
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/rtld-global-offsets.sym
    trunk/libc/sysdeps/s390/rtld-setjmp.S
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/rtld-setjmp.S
    trunk/libc/sysdeps/s390/s390-32/__longjmp-common.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/s390-32/__longjmp-common.c
    trunk/libc/sysdeps/s390/s390-32/setjmp-common.S
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/s390-32/setjmp-common.S
    trunk/libc/sysdeps/s390/s390-64/__longjmp-common.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/s390-64/__longjmp-common.c
    trunk/libc/sysdeps/s390/s390-64/setjmp-common.S
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/s390-64/setjmp-common.S
    trunk/libc/sysdeps/s390/setjmp.S
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/setjmp.S
    trunk/libc/sysdeps/s390/sigjmp.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/sigjmp.c
    trunk/libc/sysdeps/s390/sotruss-lib.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/sotruss-lib.c
    trunk/libc/sysdeps/s390/v1-longjmp.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/v1-longjmp.c
    trunk/libc/sysdeps/s390/v1-setjmp.h
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/v1-setjmp.h
    trunk/libc/sysdeps/s390/v1-sigjmp.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/s390/v1-sigjmp.c
    trunk/libc/sysdeps/unix/sysv/linux/s390/getcontext.S
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/getcontext.S
    trunk/libc/sysdeps/unix/sysv/linux/s390/longjmp_chk.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/longjmp_chk.c
    trunk/libc/sysdeps/unix/sysv/linux/s390/rtld-getcontext.S
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/rtld-getcontext.S
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/getcontext-common.S
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/getcontext-common.S
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/sys/
      - copied from r25087, fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/sys/
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/ucontext_i.sym
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/ucontext_i.sym
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/getcontext-common.S
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/getcontext-common.S
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/sys/
      - copied from r25087, fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/sys/
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/ucontext_i.sym
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/ucontext_i.sym
    trunk/libc/sysdeps/unix/sysv/linux/s390/v1-longjmp_chk.c
      - copied unchanged from r25087, fsf/trunk/libc/sysdeps/unix/sysv/linux/s390/v1-longjmp_chk.c
Removed:
    trunk/libc/po/header.pot
    trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist
    trunk/libc/sysdeps/powerpc/powerpc64/fpu/s_truncl.S
    trunk/libc/sysdeps/s390/s390-32/__longjmp.c
    trunk/libc/sysdeps/s390/s390-32/setjmp.S
    trunk/libc/sysdeps/s390/s390-64/__longjmp.c
    trunk/libc/sysdeps/s390/s390-64/setjmp.S
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S
    trunk/libc/sysdeps/unix/sysv/linux/s390/sys/ucontext.h
    trunk/libc/sysdeps/unix/sysv/linux/s390/ucontext_i.sym
Modified:
    trunk/   (props changed)
    trunk/libc/ChangeLog
    trunk/libc/NEWS
    trunk/libc/Versions.def
    trunk/libc/benchtests/acos-inputs
    trunk/libc/benchtests/asin-inputs
    trunk/libc/config.h.in
    trunk/libc/elf/dl-load.c
    trunk/libc/elf/dl-open.c
    trunk/libc/elf/dl-reloc.c
    trunk/libc/elf/dl-tls.c
    trunk/libc/inet/netinet/in.h
    trunk/libc/malloc/memusagestat.c
    trunk/libc/math/auto-libm-test-in
    trunk/libc/math/auto-libm-test-out
    trunk/libc/math/test-fpucw-ieee.c
    trunk/libc/math/test-fpucw-static.c
    trunk/libc/nptl/ChangeLog
    trunk/libc/nptl/Makefile
    trunk/libc/nptl/allocatestack.c
    trunk/libc/nptl/tst-cancel-wrappers.sh
    trunk/libc/nscd/netgroupcache.c
    trunk/libc/nscd/nscd.c
    trunk/libc/po/Makefile
    trunk/libc/po/bg.po
    trunk/libc/po/ca.po
    trunk/libc/po/cs.po
    trunk/libc/po/de.po
    trunk/libc/po/eo.po
    trunk/libc/po/libc.pot
    trunk/libc/po/nl.po
    trunk/libc/po/pl.po
    trunk/libc/po/ru.po
    trunk/libc/po/sv.po
    trunk/libc/po/uk.po
    trunk/libc/po/vi.po
    trunk/libc/ports/ChangeLog.aarch64
    trunk/libc/ports/ChangeLog.arm
    trunk/libc/ports/ChangeLog.ia64
    trunk/libc/ports/ChangeLog.mips
    trunk/libc/ports/ChangeLog.tile
    trunk/libc/ports/sysdeps/aarch64/dl-trampoline.S
    trunk/libc/ports/sysdeps/aarch64/fpu/fpu_control.h
    trunk/libc/ports/sysdeps/aarch64/libm-test-ulps
    trunk/libc/ports/sysdeps/aarch64/shlib-versions
    trunk/libc/ports/sysdeps/aarch64/soft-fp/sfp-machine.h
    trunk/libc/ports/sysdeps/arm/__longjmp.S
    trunk/libc/ports/sysdeps/arm/arm-mcount.S
    trunk/libc/ports/sysdeps/arm/include/bits/setjmp.h
    trunk/libc/ports/sysdeps/arm/setjmp.S
    trunk/libc/ports/sysdeps/ia64/dl-tls.h
    trunk/libc/ports/sysdeps/ia64/fpu/libm-test-ulps
    trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/Makefile
    trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/clone.S
    trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/ldconfig.h
    trunk/libc/ports/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h
    trunk/libc/ports/sysdeps/unix/sysv/linux/arm/sysdep.h
    trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h
    trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sys/procfs.h
    trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sys/ptrace.h
    trunk/libc/ports/sysdeps/unix/sysv/linux/tile/sys/ptrace.h
    trunk/libc/stdio-common/vfprintf.c
    trunk/libc/sysdeps/i386/fpu/libm-test-ulps
    trunk/libc/sysdeps/i386/i686/memmove.S
    trunk/libc/sysdeps/ieee754/ldbl-128/e_lgammal_r.c
    trunk/libc/sysdeps/ieee754/ldbl-128/w_expl.c
    trunk/libc/sysdeps/ieee754/ldbl-128ibm/e_coshl.c
    trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c
    trunk/libc/sysdeps/ieee754/ldbl-128ibm/s_truncl.c
    trunk/libc/sysdeps/posix/system.c
    trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps
    trunk/libc/sysdeps/powerpc/nofpu/Makefile
    trunk/libc/sysdeps/powerpc/nofpu/libm-test-ulps
    trunk/libc/sysdeps/powerpc/powerpc64/multiarch/strcasecmp-power7.S
    trunk/libc/sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l-power7.S
    trunk/libc/sysdeps/powerpc/powerpc64/multiarch/strnlen-power7.S
    trunk/libc/sysdeps/powerpc/powerpc64/multiarch/wcscpy.c
    trunk/libc/sysdeps/s390/Versions
    trunk/libc/sysdeps/s390/bits/setjmp.h
    trunk/libc/sysdeps/s390/dl-tls.h
    trunk/libc/sysdeps/s390/fpu/libm-test-ulps
    trunk/libc/sysdeps/s390/s390-32/dl-machine.h
    trunk/libc/sysdeps/unix/sysv/linux/configure
    trunk/libc/sysdeps/unix/sysv/linux/configure.ac
    trunk/libc/sysdeps/unix/sysv/linux/powerpc/gettimeofday.c
    trunk/libc/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h
    trunk/libc/sysdeps/unix/sysv/linux/powerpc/time.c
    trunk/libc/sysdeps/unix/sysv/linux/s390/Makefile
    trunk/libc/sysdeps/unix/sysv/linux/s390/Versions
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/nptl/libpthread.abilist
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/nptl/libpthread.abilist
    trunk/libc/sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S
    trunk/libc/sysdeps/unix/sysv/linux/s390/sys/ptrace.h
    trunk/libc/sysdeps/unix/sysv/linux/sparc/sys/ptrace.h
    trunk/libc/sysdeps/unix/sysv/linux/sys/ptrace.h
    trunk/libc/sysdeps/unix/sysv/linux/tst-fanotify.c
    trunk/libc/sysdeps/x86_64/x32/symbol-hacks.h

Propchange: trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jan 21 18:56:41 2014
@@ -1,1 +1,1 @@
-/fsf/trunk:15224-24941
+/fsf/trunk:15224-25087

Modified: trunk/libc/ChangeLog
==============================================================================
--- trunk/libc/ChangeLog (original)
+++ trunk/libc/ChangeLog Tue Jan 21 18:56:41 2014
@@ -1,4 +1,305 @@
+2014-01-20  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	[BZ #15605]
+	* sysdeps/x86_64/x32/symbol-hacks.h: Include generic symbol-hacks.h.
+
+2014-01-20  Adhemerval Zanella  <azanella@xxxxxxxxxxxxxxxxxx>
+
+	[BZ#16431]
+	* sysdeps/unix/sysv/linux/powerpc/gettimeofday.c (__gettimeofday):
+	Adjust the vDSO correctly for internal calls.
+	* sysdeps/unix/sysv/linux/powerpc/time.c (time): Likewise.
+
+2014-01-20  Allan McRae  <allan@xxxxxxxxxxxxx>
+
+	* po/ca.po: Update Catalan translation from translation project.
+
+2014-01-16  Mike Frysinger  <vapier@xxxxxxxxxx>
+
+	* sysdeps/s390/sotruss-lib.c: New file.
+
+2014-01-16  Adhemerval Zanella  <azanella@xxxxxxxxxxxxxxxxxx>
+
+	[BZ#16430]
+	* sysdeps/unix/sysv/linux/powerpc/gettimeofday.c
+	(__GI___gettimeofday): Alias for a different internal symbol to avoid
+	local calls issues by not having a PLT stub required for IFUNC calls.
+	* sysdeps/unix/sysv/linux/powerpc/time.c (__GI_time): Likewise.
+
+2014-01-16 Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* math/test-fpucw-ieee.c: Use <> in #include of test-fpucw.c.
+	* math/test-fpucw-static.c: Likewise.
+
+2013-01-16  Siddhesh Poyarekar  <siddhesh@xxxxxxxxxx>
+
+	[BZ #16453]
+	* nscd/netgroupcache.c (addgetnetgrentX): Don't use alloca.
+
+2014-01-15  Adhemerval Zanella  <azanella@xxxxxxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/sotruss-lib.c: New file: sotruss-lib.so
+	implementation for powerpc.
+
+2014-01-15  OndÃÂej BÃÂlka  <neleai@xxxxxxxxx>
+
+	[BZ #14782]
+	* sysdeps/posix/system.c (__libc_system): Do not enable
+	asynchronous cancellation.
+
+2014-01-15  Andreas Krebbel  <Andreas.Krebbel@xxxxxxxxxx>
+
+	[BZ #16427]
+	* sysdeps/ieee754/ldbl-128/w_expl.c (__expl): Invoke the non-IEEE
+	handling only for numbers special also in the IEEE case.
+
+2014-01-15  Andreas Krebbel  <Andreas.Krebbel@xxxxxxxxxx>
+
+	* sysdeps/s390/fpu/libm-test-ulps: Regenerate.
+
+2014-01-11  Allan McRae  <allan@xxxxxxxxxxxxx>
+
+	* po/bg.po: Update Bulgarian translation from translation project.
+
+	* po/de.po: Update German translation from translation project.
+
+2014-01-10  Roland McGrath  <roland@xxxxxxxxxxxxx>
+
+	* sysdeps/generic/gcc-compat.h: New file.
+
+2014-01-10  Siddhesh Poyarekar  <siddhesh@xxxxxxxxxx>
+
+	* benchtests/asin-inputs: Correct slow inputs.
+	* benchtests/acos-inputs: Likewise.
+
+2014-01-10  Allan McRae  <allan@xxxxxxxxxxxxx>
+
+	* po:sv.po: Update Swedish translation from translation project.
+
+	* po/vi.po: Update Vietnamese translation from translation project.
+
+	* po/eo.po: Update Esperanto translation from translation project.
+
+	* po/cs.po: Update Czech translation from translation project.
+
+	* po/nl.po: Update Dutch translation from translation project.
+
+	* po/pl.po: Update Polish translation from translation project.
+
+	* po/ru.po: Update Russian translation from translation project.
+
+	* po/uk.po: Update Ukrainian translation from translation project.
+
+2014-01-08  Brooks Moses  <bmoses@xxxxxxxxxx>
+
+	* elf/dl-load.c: Fix comment typo.
+
+2014-01-08  Carlos O'Donell  <carlos@xxxxxxxxxx>
+
+	* po/header.pot: Rename to...
+	* po/pot.header: ... this.
+	* po/Makefile: Use pot.header.
+
+2014-01-08  Yuriy Kaminskiy  <yumkam@xxxxxxxxx>
+	    Maxim Kuvyrkov  <maxim@xxxxxxxxxxxxxx>
+
+	[BZ #16394]
+	* sysdeps/i386/i686/memmove.S (memmove): Compare distance between
+	SRC and DEST against LEN.
+
+2014-01-08  Adhemerval Zanella  <azanella@xxxxxxxxxxxxxxxxxx>
+
+	[BZ #16414]
+	* sysdeps/powerpc/powerpc64/fpu/s_truncl.S: Remove wrong
+	implementation.
+	* sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Remove bogus comment.
+
+2014-01-08  Adhemerval Zanella  <azanella@xxxxxxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2014-01-08  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #16408]
+	* sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Use __expl
+	for large positive arguments.
+
+2014-01-07  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/nofpu/libm-test-ulps: Regenerated.
+
+	* math/auto-libm-test-in: Mark various tests with
+	xfail-rounding:ldbl-128ibm.
+	* math/auto-libm-test-out: Regenerated.
+
+	[BZ #16407]
+	* sysdeps/ieee754/ldbl-128ibm/e_coshl.c (__ieee754_coshl):
+	Increase overflow threshold.
+
+2014-01-07  OndÃÂej BÃÂlka  <neleai@xxxxxxxxx>
+
+	[BZ #14286]
+	* stdio-common/vfprintf.c: Check for integer overflow.
+
+2014-01-07  Andreas Krebbel  <Andreas.Krebbel@xxxxxxxxxx>
+
+	* sysdeps/s390/dl-tls.h: sysdeps/s390/dl-tls.h: Remove casts for
+	the first argument and return value of __tls_get_addr_internal.
+
+2014-01-07  Andreas Krebbel  <Andreas.Krebbel@xxxxxxxxxx>
+
+	* sysdeps/s390/s390-32/dl-machine.h: Gate the definition of refsym
+	also with !RTLD_BOOTSTRAP to get rid of unused variable warning.
+
+2014-01-07  Andreas Krebbel  <Andreas.Krebbel@xxxxxxxxxx>
+
+	* sysdeps/s390/Makefile: Build rtld-global-offsets.sym.
+	* sysdeps/s390/rtld-global-offsets.sym: New file.
+	* sysdeps/unix/sysv/linux/s390/Versions: Add getcontext as new
+	GLIBC_2.19 symbol.
+	* sysdeps/unix/sysv/linux/s390/getcontext.S: New file.
+	* sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S: Rename to ...
+	* sysdeps/unix/sysv/linux/s390/s390-32/getcontext-common.S:
+	... this.
+	* sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S: Rename to ...
+	* sysdeps/unix/sysv/linux/s390/s390-64/getcontext-common.S:
+	... this.
+	* sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist:
+	Regenerate.
+	* sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist:
+	Regenerate.
+	* sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S: Restore upper
+	halfs of GPRs for high_gprs contexts.
+	* sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S: Save and
+	restore upper halfs of GPRs for high_gprs contexts.  Copy uc_flags
+	field.
+	* sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: Copy
+	uc_flags field.
+	* sysdeps/unix/sysv/linux/s390/sys/ucontext.h: Split into 32 and
+	64 bit versions:
+	* sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Add field
+	for high GPRs (uc_high_gprs) and for future extensions
+	(__reserved).
+	* sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Add field
+	for future extensions (__reserved).
+	* sysdeps/unix/sysv/linux/s390/ucontext_i.sym: Split into 32 and
+	64 bit versions:
+	* sysdeps/unix/sysv/linux/s390/s390-32/ucontext_i.sym: Add
+	SC_HIGHGPRS offset definition.
+	* sysdeps/unix/sysv/linux/s390/s390-64/ucontext_i.sym: New file.
+	* sysdeps/unix/sysv/linux/s390/rtld-getcontext.S: New file.
+
+2014-01-07  Andreas Krebbel  <Andreas.Krebbel@xxxxxxxxxx>
+
+	* Versions.def: Add GLIBC_2.19 for libpthread.
+	* nptl/sysdeps/unix/sysv/linux/s390/Versions: Add longjmp and
+	siglongjmp for libpthread with GLIBC_2.19 symver.
+	* nptl/sysdeps/unix/sysv/linux/s390/pt-longjmp.c: New file.
+	* sysdeps/s390/Makefile: Build v1-longjmp.c and v1-sigjmp.c.
+	* sysdeps/s390/Versions: New GLIBC_2.19 and GLIBC_PRIVATE symbols.
+	* sysdeps/s390/__longjmp.c: New file.
+	* sysdeps/s390/bits/setjmp.h: Add new fields to __s390_jmp_buf.
+	* sysdeps/s390/longjmp.c: New file.
+	* sysdeps/s390/setjmp.S: New file.
+	* sysdeps/s390/sigjmp.S: New file.
+	* sysdeps/s390/v1-longjmp.c: New file.
+	* sysdeps/s390/v1-setjmp.h: New file.
+	* sysdeps/s390/v1-sigjmp.c: New file.
+	* sysdeps/unix/sysv/linux/s390/Makefile: Build __longjmp_chk.
+	* sysdeps/unix/sysv/linux/s390/Versions: Add __longjmp_chk with
+	GLIBC_2.19 version.
+	* sysdeps/unix/sysv/linux/s390/longjmp_chk.c: New file.
+	* sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c: Provide
+	versioned symbols for ____longjmp_chk.
+	* sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c:
+	Likewise.
+	* sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist:
+	Regenerate.
+	* sysdeps/unix/sysv/linux/s390/s390-32/nptl/libpthread.abilist:
+	Regenerate.
+	* sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist:
+	Regenerate.
+	* sysdeps/unix/sysv/linux/s390/s390-64/nptl/libpthread.abilist:
+	Regenerate.
+	* sysdeps/unix/sysv/linux/s390/v1-longjmp_chk.c: New file.
+	* sysdeps/s390/s390-32/__longjmp.c: Rename to ...
+	* sysdeps/s390/s390-32/__longjmp-common.c: ... this.
+	* sysdeps/s390/s390-32/setjmp.S: Rename and adjust to ...
+	* sysdeps/s390/s390-32/setjmp-common.S: ... this.
+	* sysdeps/s390/s390-64/__longjmp.c: Rename to ...
+	* sysdeps/s390/s390-64/__longjmp-common.c: ... this.
+	* sysdeps/s390/s390-64/setjmp.S: Rename and adjust to ...
+	* sysdeps/s390/s390-64/setjmp-common.S: ... this.
+	* sysdeps/s390/rtld-__longjmp.c: New file.
+	* sysdeps/s390/rtld-setjmp.S: New file.
+
+2014-01-06  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #16400]
+	* sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r):
+	Return -__logl (x) for small positive arguments without evaluating
+	a polynomial.
+
+2014-01-06  Mike Frysinger  <vapier@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/sys/ptrace.h (ptrace_peeksiginfo_args):
+	Rename to ...
+	(__ptrace_peeksiginfo_args): ... this.
+	* sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
+	* sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
+	* sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
+
+2014-01-06  Allan McRae  <allan@xxxxxxxxxxxxx>
+
+	* inet/netinet/in.h: Fix typo in comment.
+
+2014-01-05  Andreas Jaeger  <aj@xxxxxxx>
+
+	* sysdeps/i386/fpu/libm-test-ulps: Update.
+
+2014-01-05  Allan McRae  <allan@xxxxxxxxxxxxx>
+
+	* po/libc.pot: Regenerated.
+
+	* malloc/memusagestat.c: Fix gettext call formatting.
+
+2014-01-04  Sami Kerola  <kerolasa@xxxxxx>
+
+	* nscd/nscd.c: Improve usage() output.
+
+2014-01-04  Mike Frysinger  <vapier@xxxxxxxxxx>
+
+	* config.h.in: Add HAVE_LINUX_FANOTIFY_H template.
+	* sysdeps/unix/sysv/linux/configure: Regenerated.
+	* sysdeps/unix/sysv/linux/configure.ac: Call AC_DEFINE.
+	* sysdeps/unix/sysv/linux/tst-fanotify.c: Include config.h.
+
 2014-01-03  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #16390]
+	* sysdeps/powerpc/nofpu/Makefile [$(subdir) = math]
+	(CFLAGS-e_atan2l.c): Use -fno-builtin-fabsl.
+
+2014-01-03  Adhemerval Zanella  <azanella@xxxxxxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/powerpc64/multiarch/strcasecmp-power7.S: Remove
+	extra tokens at end of #undef directive.
+	* sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l-power7.S: Likewise.
+	* sysdeps/powerpc/powerpc64/multiarch/strnlen-power7.S: Likewise.
+	* sysdeps/powerpc/powerpc64/multiarch/wcscpy.c: Likewise.
+
+2014-01-03  Andrew Hunter  <ahh@xxxxxxxxxx>
+
+	* elf/dl-open.c (dl_open_worker): New comment.
+	* elf/dl-reloc.c (_dl_try_allocate_static_tls): Use
+	atomic_compare_and_exchange_bool_acq
+	(_dl_allocate_static_tls): Block signals.
+	* elf/dl-tls.c (allocate_and_init): Return void.
+	(_dl_update_slotinfo): Block signals, use atomic update.
+
+2014-01-03  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/nofpu/libm-test-ulps: Regenerated.
 
 	* math/auto-libm-test-in: Mark various tests with
 	xfail-rounding:ldbl-128ibm.
@@ -5547,6 +5848,7 @@
 2013-09-05  Carlos O'Donell  <carlos@xxxxxxxxxx>
 	    Cong Wang  <amwang@xxxxxxxxxx>
 
+	[BZ #15850]
 	* sysdeps/unix/sysv/linux/bits/in.h
 	[_UAPI_LINUX_IN6_H]: Define __USE_KERNEL_IPV6_DEFS.
 	* inet/netinet/in.h: Move in_addr definition and bits/in.h inclusion

Modified: trunk/libc/NEWS
==============================================================================
--- trunk/libc/NEWS (original)
+++ trunk/libc/NEWS Tue Jan 21 18:56:41 2014
@@ -9,22 +9,23 @@
 
 * The following bugs are resolved with this release:
 
-  156, 387, 431, 832, 926, 2801, 4772, 6786, 6787, 6807, 6810, 7003, 9954,
-  10253, 10278, 11087, 11157, 11214, 12100, 12486, 12986, 13028, 13982,
-  13985, 14029, 14032, 14120, 14143, 14155, 14547, 14699, 14752, 14876,
-  14910, 15004, 15048, 15073, 15089, 15128, 15218, 15268, 15277, 15308,
-  15362, 15374, 15400, 15425, 15427, 15483, 15522, 15531, 15532, 15593,
-  15601, 15608, 15609, 15610, 15632, 15640, 15670, 15672, 15680, 15681,
-  15723, 15734, 15735, 15736, 15748, 15749, 15754, 15760, 15763, 15764,
-  15797, 15799, 15825, 15843, 15844, 15846, 15847, 15849, 15855, 15856,
-  15857, 15859, 15867, 15886, 15887, 15890, 15892, 15893, 15895, 15897,
-  15901, 15905, 15909, 15915, 15917, 15919, 15921, 15923, 15939, 15941,
-  15948, 15963, 15966, 15985, 15988, 15997, 16032, 16034, 16036, 16037,
-  16038, 16041, 16055, 16071, 16072, 16074, 16077, 16078, 16103, 16112,
-  16143, 16144, 16146, 16150, 16151, 16153, 16167, 16172, 16195, 16214,
-  16245, 16271, 16274, 16283, 16289, 16293, 16314, 16316, 16330, 16337,
-  16338, 16356, 16365, 16366, 16369, 16372, 16375, 16379, 16384, 16385,
-  16386.
+  156, 387, 431, 762, 832, 926, 2801, 4772, 6786, 6787, 6807, 6810, 7003,
+  9721, 9954, 10253, 10278, 11087, 11157, 11214, 12100, 12486, 12986,
+  13028, 13982, 13985, 14029, 14032, 14120, 14143, 14155, 14286, 14547,
+  14699, 14752, 14782, 14876, 14910, 15004, 15048, 15073, 15089, 15128,
+  15218, 15268, 15277, 15308, 15362, 15374, 15400, 15425, 15427, 15483,
+  15522, 15531, 15532, 15593, 15601, 15608, 15609, 15610, 15632, 15640,
+  15670, 15672, 15680, 15681, 15723, 15734, 15735, 15736, 15748, 15749,
+  15754, 15760, 15763, 15764, 15797, 15799, 15825, 15843, 15844, 15846,
+  15847, 15849, 15850, 15855, 15856, 15857, 15859, 15867, 15886, 15887,
+  15890, 15892, 15893, 15895, 15897, 15901, 15905, 15909, 15915, 15917,
+  15919, 15921, 15923, 15939, 15941, 15948, 15963, 15966, 15985, 15988,
+  15997, 16032, 16034, 16036, 16037, 16038, 16041, 16055, 16071, 16072,
+  16074, 16077, 16078, 16103, 16112, 16133, 16143, 16144, 16146, 16150,
+  16151, 16153, 16167, 16169, 16172, 16195, 16214, 16245, 16271, 16274,
+  16283, 16289, 16293, 16314, 16316, 16330, 16337, 16338, 16356, 16365,
+  16366, 16369, 16372, 16375, 16379, 16384, 16385, 16386, 16387, 16390,
+  16394, 16400, 16407, 16408, 16414, 16430, 16431, 16453.
 
 * Slovenian translations for glibc messages have been contributed by the
   Translation Project's Slovenian team of translators.
@@ -99,6 +100,9 @@
   cjy, lzh, cmn, mnp, cdo, czo, cpx, wuu, hsn, yue).
 
 * SystemTap probes for malloc have been introduced.
+
+* SystemTap probes for slow multiple precision fallback paths of
+  transcendental functions have been introduced.
 
 * Support for powerpc64le has been added.
 

Modified: trunk/libc/Versions.def
==============================================================================
--- trunk/libc/Versions.def (original)
+++ trunk/libc/Versions.def Tue Jan 21 18:56:41 2014
@@ -106,6 +106,7 @@
   GLIBC_2.11
   GLIBC_2.12
   GLIBC_2.18
+  GLIBC_2.19
   GLIBC_PRIVATE
 }
 libresolv {

Modified: trunk/libc/benchtests/acos-inputs
==============================================================================
--- trunk/libc/benchtests/acos-inputs (original)
+++ trunk/libc/benchtests/acos-inputs Tue Jan 21 18:56:41 2014
@@ -2704,20 +2704,9 @@
 # acos multiple precision fallback.
 # Implemented in __cos32 in sysdeps/ieee754/dbl-64/sincos32.c
 ## name: slow
-0x1.259e505cf0504p-15
-0x1.3f39d47a33d9bp-13
-0x1.6fc4b0eb33b13p-16
-0x1.71374498ed714p-26
-0x1.7eff5496b7ed2p-21
-0x1.e010a7d04711cp-16
-0x1.4987361088586p-14
-0x1.a7601192f9094p-10
-0x1.efad46d44e2d1p-18
-0x1.84a360ccf288dp-20
-0x1.0b263bc6fc966p-4
-0x1.1552272e0f268p-16
-0x1.c88b2415431cbp-23
-0x1.4360a7a7b5c14p-23
-0x1.92ace49380c10p-13
-0x1.d529ca96edee6p-7
-0x1.447197964af33p-4
+0x1.91744378d312fp-25
+0x1.e31933dfcae5ep-6
+0x1.560a94c69898dp-28
+0x1.4ede34c4c5b9cp-39
+-0x1.b5caf13967673p-28
+-0x1.d242039676722p-32

Modified: trunk/libc/benchtests/asin-inputs
==============================================================================
--- trunk/libc/benchtests/asin-inputs (original)
+++ trunk/libc/benchtests/asin-inputs Tue Jan 21 18:56:41 2014
@@ -2504,20 +2504,8 @@
 # asin multiple precision fallback path
 # Implemented in __sin32 in sysdeps/ieee754/dbl-64/sincos32.c
 ## name: slow
-0x1.e010a7d04711cp-16
-0x1.a7601192f9094p-10
-0x1.4987361088586p-14
-0x1.0b263bc6fc966p-4
-0x1.259e505cf0504p-15
 0x1.c88b2415431cbp-23
-0x1.447197964af33p-4
-0x1.efad46d44e2d1p-18
-0x1.6fc4b0eb33b13p-16
 0x1.84a360ccf288dp-20
-0x1.92ace49380c10p-13
-0x1.1552272e0f268p-16
-0x1.d529ca96edee6p-7
-0x1.3f39d47a33d9bp-13
 0x1.7eff5496b7ed2p-21
 0x1.4360a7a7b5c14p-23
 0x1.71374498ed714p-26

Modified: trunk/libc/config.h.in
==============================================================================
--- trunk/libc/config.h.in (original)
+++ trunk/libc/config.h.in Tue Jan 21 18:56:41 2014
@@ -191,6 +191,9 @@
 
 /* Define if STT_GNU_IFUNC support actually works.  */
 #undef HAVE_IFUNC
+
+/* Define if linux/fanotify.h is available.  */
+#undef HAVE_LINUX_FANOTIFY_H
 
 /*
  */

Modified: trunk/libc/elf/dl-load.c
==============================================================================
--- trunk/libc/elf/dl-load.c (original)
+++ trunk/libc/elf/dl-load.c Tue Jan 21 18:56:41 2014
@@ -1734,7 +1734,7 @@
       unsigned int osversion;
       size_t maplength;
 
-      /* We successfully openened the file.  Now verify it is a file
+      /* We successfully opened the file.  Now verify it is a file
 	 we can use.  */
       __set_errno (0);
       fbp->len = 0;

Modified: trunk/libc/elf/dl-open.c
==============================================================================
--- trunk/libc/elf/dl-open.c (original)
+++ trunk/libc/elf/dl-open.c Tue Jan 21 18:56:41 2014
@@ -548,7 +548,10 @@
 	     generation of the DSO we are allocating data for.  */
 	  _dl_update_slotinfo (imap->l_tls_modid);
 #endif
-
+	  /* We do this iteration under a signal mask in dl-reloc; why not
+	     here?  Because these symbols are new and dlopen hasn't
+	     returned yet.  So we can't possibly be racing with a TLS
+	     access to them from another thread.  */
 	  GL(dl_init_static_tls) (imap);
 	  assert (imap->l_need_tls_init == 0);
 	}

Modified: trunk/libc/elf/dl-reloc.c
==============================================================================
--- trunk/libc/elf/dl-reloc.c (original)
+++ trunk/libc/elf/dl-reloc.c Tue Jan 21 18:56:41 2014
@@ -16,8 +16,10 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <atomic.h>
 #include <errno.h>
 #include <libintl.h>
+#include <signal.h>
 #include <stdlib.h>
 #include <unistd.h>
 #include <ldsodefs.h>
@@ -70,8 +72,6 @@
 
   size_t offset = GL(dl_tls_static_used) + (freebytes - n * map->l_tls_align
 					    - map->l_tls_firstbyte_offset);
-
-  map->l_tls_offset = GL(dl_tls_static_used) = offset;
 #elif TLS_DTV_AT_TP
   /* dl_tls_static_used includes the TCB at the beginning.  */
   size_t offset = (((GL(dl_tls_static_used)
@@ -83,7 +83,36 @@
   if (used > GL(dl_tls_static_size))
     goto fail;
 
-  map->l_tls_offset = offset;
+#else
+# error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined"
+#endif
+  /* We've computed the new value we want, now try to install it.  */
+  ptrdiff_t val;
+  if ((val = map->l_tls_offset) == NO_TLS_OFFSET)
+    {
+      /* l_tls_offset starts out at NO_TLS_OFFSET, and all attempts to
+	 change it go from NO_TLS_OFFSET to some other value.  We use
+	 compare_and_exchange to ensure only one attempt succeeds.  We
+	 don't actually need any memory ordering here, but _acq is the
+	 weakest available.  */
+      (void ) atomic_compare_and_exchange_bool_acq (&map->l_tls_offset,
+						    offset,
+						    NO_TLS_OFFSET);
+      val = map->l_tls_offset;
+      assert (val != NO_TLS_OFFSET);
+    }
+  if (val != offset)
+    {
+      /* We'd like to set a static offset for this section, but another
+	 thread has already used a dynamic TLS block for it.  Since we can
+	 only use static offsets if everyone does (and it's not practical
+	 to move that thread's dynamic block), we have to fail.  */
+      goto fail;
+    }
+  /* We installed the value; now update the globals.  */
+#if TLS_TCB_AT_TP
+  GL(dl_tls_static_used) = offset;
+#elif TLS_DTV_AT_TP
   map->l_tls_firstbyte_offset = GL(dl_tls_static_used);
   GL(dl_tls_static_used) = used;
 #else
@@ -114,8 +143,17 @@
 internal_function __attribute_noinline__
 _dl_allocate_static_tls (struct link_map *map)
 {
-  if (map->l_tls_offset == FORCED_DYNAMIC_TLS_OFFSET
-      || _dl_try_allocate_static_tls (map))
+  /* We wrap this in a signal mask because it has to iterate all threads
+     (including this one) and update this map's TLS entry. A signal handler
+     accessing TLS would try to do the same update and break.  */
+  sigset_t old;
+  _dl_mask_all_signals (&old);
+  int err = -1;
+  if (map->l_tls_offset != FORCED_DYNAMIC_TLS_OFFSET)
+    err = _dl_try_allocate_static_tls (map);
+
+  _dl_unmask_signals (&old);
+  if (err != 0)
     {
       _dl_signal_error (0, map->l_name, NULL, N_("\
 cannot allocate memory in static TLS block"));

Modified: trunk/libc/elf/dl-tls.c
==============================================================================
--- trunk/libc/elf/dl-tls.c (original)
+++ trunk/libc/elf/dl-tls.c Tue Jan 21 18:56:41 2014
@@ -17,6 +17,7 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <assert.h>
+#include <atomic.h>
 #include <errno.h>
 #include <libintl.h>
 #include <signal.h>
@@ -533,19 +534,21 @@
 # endif
 
 
-static void *
-allocate_and_init (struct link_map *map)
+static void
+allocate_and_init (dtv_t *dtv, struct link_map *map)
 {
   void *newp;
   newp = __signal_safe_memalign (map->l_tls_align, map->l_tls_blocksize);
   if (newp == NULL)
     oom ();
 
-  /* Initialize the memory.  */
+  /* Initialize the memory. Since this is our thread's space, we are
+     under a signal mask, and no one has touched this section before,
+     we can safely just overwrite whatever's there.  */
   memset (__mempcpy (newp, map->l_tls_initimage, map->l_tls_initimage_size),
 	  '\0', map->l_tls_blocksize - map->l_tls_initimage_size);
 
-  return newp;
+  dtv->pointer.val = newp;
 }
 
 
@@ -587,7 +590,15 @@
 	 the entry we need.  */
       size_t new_gen = listp->slotinfo[idx].gen;
       size_t total = 0;
-
+      sigset_t old;
+
+      _dl_mask_all_signals (&old);
+      /* We use the signal mask as a lock against reentrancy here.
+         Check that a signal taken before the lock didn't already
+         update us.  */
+      dtv = THREAD_DTV ();
+      if (dtv[0].counter >= listp->slotinfo[idx].gen)
+        goto out;
       /* We have to look through the entire dtv slotinfo list.  */
       listp =  GL(dl_tls_dtv_slotinfo_list);
       do
@@ -699,6 +710,8 @@
 
       /* This will be the new maximum generation counter.  */
       dtv[0].counter = new_gen;
+   out:
+      _dl_unmask_signals (&old);
     }
 
   return the_map;
@@ -724,39 +737,60 @@
 
       the_map = listp->slotinfo[idx].map;
     }
-
- again:
-  /* Make sure that, if a dlopen running in parallel forces the
-     variable into static storage, we'll wait until the address in the
-     static TLS block is set up, and use that.  If we're undecided
-     yet, make sure we make the decision holding the lock as well.  */
-  if (__builtin_expect (the_map->l_tls_offset
-			!= FORCED_DYNAMIC_TLS_OFFSET, 0))
-    {
-      __rtld_lock_lock_recursive (GL(dl_load_lock));
-      if (__builtin_expect (the_map->l_tls_offset == NO_TLS_OFFSET, 1))
-	{
-	  the_map->l_tls_offset = FORCED_DYNAMIC_TLS_OFFSET;
-	  __rtld_lock_unlock_recursive (GL(dl_load_lock));
-	}
-      else
-	{
-	  __rtld_lock_unlock_recursive (GL(dl_load_lock));
-	  if (__builtin_expect (the_map->l_tls_offset
-				!= FORCED_DYNAMIC_TLS_OFFSET, 1))
-	    {
-	      void *p = dtv[GET_ADDR_MODULE].pointer.val;
-	      if (__builtin_expect (p == TLS_DTV_UNALLOCATED, 0))
-		goto again;
-
-	      return (char *) p + GET_ADDR_OFFSET;
-	    }
-	}
-    }
-  void *p = dtv[GET_ADDR_MODULE].pointer.val = allocate_and_init (the_map);
-  dtv[GET_ADDR_MODULE].pointer.is_static = false;
-
-  return (char *) p + GET_ADDR_OFFSET;
+  sigset_t old;
+  _dl_mask_all_signals (&old);
+
+  /* As with update_slotinfo, we use the sigmask as a check against
+     reentrancy.  */
+  if (dtv[GET_ADDR_MODULE].pointer.val != TLS_DTV_UNALLOCATED)
+    goto out;
+
+  /* Synchronize against a parallel dlopen() forcing this variable
+     into static storage.  If that happens, we have to be more careful
+     about initializing the area, as that dlopen() will be iterating
+     the threads to do so itself.  */
+  ptrdiff_t offset;
+  if ((offset = the_map->l_tls_offset) == NO_TLS_OFFSET)
+    {
+      /* l_tls_offset starts out at NO_TLS_OFFSET, and all attempts to
+	 change it go from NO_TLS_OFFSET to some other value.  We use
+	 compare_and_exchange to ensure only one attempt succeeds.  We
+	 don't actually need any memory ordering here, but _acq is the
+	 weakest available.  */
+      (void) atomic_compare_and_exchange_bool_acq (&the_map->l_tls_offset,
+						   FORCED_DYNAMIC_TLS_OFFSET,
+						   NO_TLS_OFFSET);
+      offset = the_map->l_tls_offset;
+      assert (offset != NO_TLS_OFFSET);
+    }
+  if (offset == FORCED_DYNAMIC_TLS_OFFSET)
+    {
+      allocate_and_init (&dtv[GET_ADDR_MODULE], the_map);
+    }
+  else
+    {
+      void **pp = &dtv[GET_ADDR_MODULE].pointer.val;
+      while (atomic_forced_read (*pp) == TLS_DTV_UNALLOCATED)
+	{
+	  /* for lack of a better (safe) thing to do, just spin.
+	    Someone else (not us; it's done under a signal mask) set
+	    this map to a static TLS offset, and they'll iterate all
+	    threads to initialize it.  They'll eventually write
+	    to pointer.val, at which point we know they've fully
+	    completed initialization.  */
+	  atomic_delay ();
+	}
+      /* Make sure we've picked up their initialization of the actual
+	 block; this pairs against the write barrier in
+	 init_one_static_tls, guaranteeing that we see their write of
+	 the tls_initimage into the static region.  */
+      atomic_read_barrier ();
+    }
+out:
+  assert (dtv[GET_ADDR_MODULE].pointer.val != TLS_DTV_UNALLOCATED);
+  _dl_unmask_signals (&old);
+
+  return (char *) dtv[GET_ADDR_MODULE].pointer.val + GET_ADDR_OFFSET;
 }
 
 

Modified: trunk/libc/inet/netinet/in.h
==============================================================================
--- trunk/libc/inet/netinet/in.h (original)
+++ trunk/libc/inet/netinet/in.h Tue Jan 21 18:56:41 2014
@@ -90,7 +90,7 @@
     IPPROTO_MAX
   };
 
-/* If __USER_KERNEL_IPV6_DEFS is defined then the user has included the kernel
+/* If __USE_KERNEL_IPV6_DEFS is defined then the user has included the kernel
    network headers first and we should use those ABI-identical definitions
    instead of our own.  */
 #ifndef __USE_KERNEL_IPV6_DEFS

Modified: trunk/libc/malloc/memusagestat.c
==============================================================================
--- trunk/libc/malloc/memusagestat.c (original)
+++ trunk/libc/malloc/memusagestat.c Tue Jan 21 18:56:41 2014
@@ -55,7 +55,7 @@
 {
   { "output", 'o', N_ ("FILE"), 0, N_ ("Name output file") },
   { "string", 's', N_ ("STRING"), 0, N_ ("Title string used in output graphic") },
-  { "time", 't', NULL, 0, N_ ("						      \
+  { "time", 't', NULL, 0, N_ ("\
 Generate output linear to time (default is linear to number of function calls)\
 ") },
   { "total", 'T', NULL, 0,

Modified: trunk/libc/math/auto-libm-test-in
==============================================================================
--- trunk/libc/math/auto-libm-test-in (original)
+++ trunk/libc/math/auto-libm-test-in Tue Jan 21 18:56:41 2014
@@ -614,8 +614,9 @@
 ctan 1 47
 ctan 1 355
 ctan 1 365
-ctan 1 5680
-ctan 1 5690
+# GCC bug 59666: results on directed rounding may be incorrect.
+ctan 1 5680 xfail-rounding:ldbl-128ibm
+ctan 1 5690 xfail-rounding:ldbl-128ibm
 
 ctan 0x3.243f6cp-1 0
 
@@ -623,10 +624,11 @@
 ctan 0x1p1023 1
 ctan 0x1p16383 1
 
-ctan 50000 50000
-ctan 50000 -50000
-ctan -50000 50000
-ctan -50000 -50000
+# GCC bug 59666: results on directed rounding may be incorrect.
+ctan 50000 50000 xfail-rounding:ldbl-128ibm
+ctan 50000 -50000 xfail-rounding:ldbl-128ibm
+ctan -50000 50000 xfail-rounding:ldbl-128ibm
+ctan -50000 -50000 xfail-rounding:ldbl-128ibm
 
 ctan 0x1.921fb6p+0 0x1p-149
 ctan 0x1.921fb54442d18p+0 0x1p-1074
@@ -646,8 +648,9 @@
 ctanh 47 1
 ctanh 355 1
 ctanh 365 1
-ctanh 5680 1
-ctanh 5690 1
+# GCC bug 59666: results on directed rounding may be incorrect.
+ctanh 5680 1 xfail-rounding:ldbl-128ibm
+ctanh 5690 1 xfail-rounding:ldbl-128ibm
 
 ctanh 0 0x3.243f6cp-1
 
@@ -655,10 +658,11 @@
 ctanh 1 0x1p1023
 ctanh 1 0x1p16383
 
-ctanh 50000 50000
-ctanh 50000 -50000
-ctanh -50000 50000
-ctanh -50000 -50000
+# GCC bug 59666: results on directed rounding may be incorrect.
+ctanh 50000 50000 xfail-rounding:ldbl-128ibm
+ctanh 50000 -50000 xfail-rounding:ldbl-128ibm
+ctanh -50000 50000 xfail-rounding:ldbl-128ibm
+ctanh -50000 -50000 xfail-rounding:ldbl-128ibm
 
 ctanh 0x1p-149 0x1.921fb6p+0
 ctanh 0x1p-1074 0x1.921fb54442d18p+0
@@ -709,13 +713,15 @@
 exp 88.72269439697265625
 exp 709.75
 # Bug 16284: results on directed rounding may be incorrect.
-exp 1000.0 xfail-rounding:dbl-64
-exp 710 xfail-rounding:dbl-64
+# GCC bug 59666: results on directed rounding may be incorrect.
+exp 1000.0 xfail-rounding:dbl-64 xfail-rounding:ldbl-128ibm
+exp 710 xfail-rounding:dbl-64 xfail-rounding:ldbl-128ibm
 exp -1234
 # Bug 16284: results on directed rounding may be incorrect.
-exp 0x2.c679d1f73f0fb628p+8 xfail-rounding:dbl-64
-exp 1e5 xfail-rounding:dbl-64
-exp max xfail-rounding:dbl-64
+# GCC bug 59666: results on directed rounding may be incorrect.
+exp 0x2.c679d1f73f0fb628p+8 xfail-rounding:dbl-64 xfail-rounding:ldbl-128ibm
+exp 1e5 xfail-rounding:dbl-64 xfail-rounding:ldbl-128ibm
+exp max xfail-rounding:dbl-64 xfail-rounding:ldbl-128ibm
 exp -7.4444006192138124e+02
 exp -0x1.75f113c30b1c8p+9
 exp -max

Modified: trunk/libc/math/auto-libm-test-out
==============================================================================
--- trunk/libc/math/auto-libm-test-out (original)
+++ trunk/libc/math/auto-libm-test-out Tue Jan 21 18:56:41 2014
@@ -58085,56 +58085,56 @@
 = ctan tonearest ldbl-128ibm 0x1p+0L 0x1.6dp+8L : 0xc.f47f4p-1056L 0x1p+0L : inexact-ok underflow errno-erange-ok
 = ctan towardzero ldbl-128ibm 0x1p+0L 0x1.6dp+8L : 0xc.f47fp-1056L 0x1p+0L : inexact-ok underflow errno-erange-ok
 = ctan upward ldbl-128ibm 0x1p+0L 0x1.6dp+8L : 0xc.f47f4p-1056L 0x1.000000000000000000000000008p+0L : inexact-ok underflow errno-erange-ok
-ctan 1 5680
-= ctan downward flt-32 0x1p+0f 0x1.63p+12f : 0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
+ctan 1 5680 xfail-rounding:ldbl-128ibm
+= ctan downward flt-32 0x1p+0f 0x1.63p+12f : 0x0p+0f 0x1p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest flt-32 0x1p+0f 0x1.63p+12f : 0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
-= ctan towardzero flt-32 0x1p+0f 0x1.63p+12f : 0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
-= ctan upward flt-32 0x1p+0f 0x1.63p+12f : 0x8p-152f 0x1.000002p+0f : inexact-ok underflow errno-erange-ok
-= ctan downward dbl-64 0x1p+0 0x1.63p+12 : 0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
+= ctan towardzero flt-32 0x1p+0f 0x1.63p+12f : 0x0p+0f 0x1p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward flt-32 0x1p+0f 0x1.63p+12f : 0x8p-152f 0x1.000002p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward dbl-64 0x1p+0 0x1.63p+12 : 0x0p+0 0x1p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest dbl-64 0x1p+0 0x1.63p+12 : 0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
-= ctan towardzero dbl-64 0x1p+0 0x1.63p+12 : 0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
-= ctan upward dbl-64 0x1p+0 0x1.63p+12 : 0x4p-1076 0x1.0000000000001p+0 : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-intel 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba298p-16392L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero dbl-64 0x1p+0 0x1.63p+12 : 0x0p+0 0x1p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward dbl-64 0x1p+0 0x1.63p+12 : 0x4p-1076 0x1.0000000000001p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-intel 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba298p-16392L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-intel 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba2ap-16392L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-intel 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba298p-16392L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-intel 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba2ap-16392L 0x1.0000000000000002p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-m68k 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29cp-16392L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-intel 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba298p-16392L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-intel 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba2ap-16392L 0x1.0000000000000002p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-m68k 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29cp-16392L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-m68k 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba2ap-16392L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-m68k 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29cp-16392L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-m68k 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba2ap-16392L 0x1.0000000000000002p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29e34d4429f85ccp-16392L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-m68k 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29cp-16392L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-m68k 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba2ap-16392L 0x1.0000000000000002p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29e34d4429f85ccp-16392L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29e34d4429f85ccp-16392L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29e34d4429f85ccp-16392L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29e34d4429f85dp-16392L 0x1.0000000000000000000000000001p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128ibm 0x1p+0L 0x1.63p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29e34d4429f85ccp-16392L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128 0x1p+0L 0x1.63p+12L : 0xe.6442e59c9ba29e34d4429f85dp-16392L 0x1.0000000000000000000000000001p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128ibm 0x1p+0L 0x1.63p+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128ibm 0x1p+0L 0x1.63p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128ibm 0x1p+0L 0x1.63p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128ibm 0x1p+0L 0x1.63p+12L : 0x4p-1076L 0x1.000000000000000000000000008p+0L : inexact-ok underflow errno-erange-ok
-ctan 1 5690
-= ctan downward flt-32 0x1p+0f 0x1.63ap+12f : 0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128ibm 0x1p+0L 0x1.63p+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128ibm 0x1p+0L 0x1.63p+12L : 0x4p-1076L 0x1.000000000000000000000000008p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+ctan 1 5690 xfail-rounding:ldbl-128ibm
+= ctan downward flt-32 0x1p+0f 0x1.63ap+12f : 0x0p+0f 0x1p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest flt-32 0x1p+0f 0x1.63ap+12f : 0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
-= ctan towardzero flt-32 0x1p+0f 0x1.63ap+12f : 0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
-= ctan upward flt-32 0x1p+0f 0x1.63ap+12f : 0x8p-152f 0x1.000002p+0f : inexact-ok underflow errno-erange-ok
-= ctan downward dbl-64 0x1p+0 0x1.63ap+12 : 0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
+= ctan towardzero flt-32 0x1p+0f 0x1.63ap+12f : 0x0p+0f 0x1p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward flt-32 0x1p+0f 0x1.63ap+12f : 0x8p-152f 0x1.000002p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward dbl-64 0x1p+0 0x1.63ap+12 : 0x0p+0 0x1p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest dbl-64 0x1p+0 0x1.63ap+12 : 0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
-= ctan towardzero dbl-64 0x1p+0 0x1.63ap+12 : 0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
-= ctan upward dbl-64 0x1p+0 0x1.63ap+12 : 0x4p-1076 0x1.0000000000001p+0 : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-intel 0x1p+0L 0x1.63ap+12L : 0x7.f673ec8p-16420L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero dbl-64 0x1p+0 0x1.63ap+12 : 0x0p+0 0x1p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward dbl-64 0x1p+0 0x1.63ap+12 : 0x4p-1076 0x1.0000000000001p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-intel 0x1p+0L 0x1.63ap+12L : 0x7.f673ec8p-16420L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-intel 0x1p+0L 0x1.63ap+12L : 0x7.f673edp-16420L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-intel 0x1p+0L 0x1.63ap+12L : 0x7.f673ec8p-16420L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-intel 0x1p+0L 0x1.63ap+12L : 0x7.f673edp-16420L 0x1.0000000000000002p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-m68k 0x1p+0L 0x1.63ap+12L : 0x7.f673eccp-16420L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-intel 0x1p+0L 0x1.63ap+12L : 0x7.f673ec8p-16420L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-intel 0x1p+0L 0x1.63ap+12L : 0x7.f673edp-16420L 0x1.0000000000000002p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-m68k 0x1p+0L 0x1.63ap+12L : 0x7.f673eccp-16420L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-m68k 0x1p+0L 0x1.63ap+12L : 0x7.f673eccp-16420L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-m68k 0x1p+0L 0x1.63ap+12L : 0x7.f673eccp-16420L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-m68k 0x1p+0L 0x1.63ap+12L : 0x7.f673edp-16420L 0x1.0000000000000002p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128 0x1p+0L 0x1.63ap+12L : 0x7.f673ecc6b39aff738e4p-16420L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-m68k 0x1p+0L 0x1.63ap+12L : 0x7.f673eccp-16420L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-m68k 0x1p+0L 0x1.63ap+12L : 0x7.f673edp-16420L 0x1.0000000000000002p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128 0x1p+0L 0x1.63ap+12L : 0x7.f673ecc6b39aff738e4p-16420L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128 0x1p+0L 0x1.63ap+12L : 0x7.f673ecc6b39aff738e8p-16420L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128 0x1p+0L 0x1.63ap+12L : 0x7.f673ecc6b39aff738e4p-16420L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128 0x1p+0L 0x1.63ap+12L : 0x7.f673ecc6b39aff738e8p-16420L 0x1.0000000000000000000000000001p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128ibm 0x1p+0L 0x1.63ap+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128 0x1p+0L 0x1.63ap+12L : 0x7.f673ecc6b39aff738e4p-16420L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128 0x1p+0L 0x1.63ap+12L : 0x7.f673ecc6b39aff738e8p-16420L 0x1.0000000000000000000000000001p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128ibm 0x1p+0L 0x1.63ap+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128ibm 0x1p+0L 0x1.63ap+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128ibm 0x1p+0L 0x1.63ap+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128ibm 0x1p+0L 0x1.63ap+12L : 0x4p-1076L 0x1.000000000000000000000000008p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128ibm 0x1p+0L 0x1.63ap+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128ibm 0x1p+0L 0x1.63ap+12L : 0x4p-1076L 0x1.000000000000000000000000008p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 ctan 0x3.243f6cp-1 0
 = ctan downward flt-32 0x1.921fb6p+0f 0x0p+0f : -0x1.5d1496p+24f 0x0p+0f : inexact-ok
 = ctan tonearest flt-32 0x1.921fb6p+0f 0x0p+0f : -0x1.5d1494p+24f 0x0p+0f : inexact-ok
@@ -58295,106 +58295,106 @@
 = ctan tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+0L : 0x3.89f37a0888a0e05652b04c0aa3p-4L 0x1.33b2569c333811735902f282a1p+0L : inexact-ok
 = ctan towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+0L : 0x3.89f37a0888a0e05652b04c0aa3p-4L 0x1.33b2569c333811735902f282a08p+0L : inexact-ok
 = ctan upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+0L : 0x3.89f37a0888a0e05652b04c0aa4p-4L 0x1.33b2569c333811735902f282a1p+0L : inexact-ok
-ctan 50000 50000
-= ctan downward flt-32 0xc.35p+12f 0xc.35p+12f : 0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
+ctan 50000 50000 xfail-rounding:ldbl-128ibm
+= ctan downward flt-32 0xc.35p+12f 0xc.35p+12f : 0x0p+0f 0x1p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest flt-32 0xc.35p+12f 0xc.35p+12f : 0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
-= ctan towardzero flt-32 0xc.35p+12f 0xc.35p+12f : 0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
-= ctan upward flt-32 0xc.35p+12f 0xc.35p+12f : 0x8p-152f 0x1.000002p+0f : inexact-ok underflow errno-erange-ok
-= ctan downward dbl-64 0xc.35p+12 0xc.35p+12 : 0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
+= ctan towardzero flt-32 0xc.35p+12f 0xc.35p+12f : 0x0p+0f 0x1p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward flt-32 0xc.35p+12f 0xc.35p+12f : 0x8p-152f 0x1.000002p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward dbl-64 0xc.35p+12 0xc.35p+12 : 0x0p+0 0x1p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest dbl-64 0xc.35p+12 0xc.35p+12 : 0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
-= ctan towardzero dbl-64 0xc.35p+12 0xc.35p+12 : 0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
-= ctan upward dbl-64 0xc.35p+12 0xc.35p+12 : 0x4p-1076 0x1.0000000000001p+0 : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero dbl-64 0xc.35p+12 0xc.35p+12 : 0x0p+0 0x1p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward dbl-64 0xc.35p+12 0xc.35p+12 : 0x4p-1076 0x1.0000000000001p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x8p-16448L 0x1.0000000000000002p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x8p-16448L 0x1.0000000000000002p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x4p-16448L 0x1.0000000000000002p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x4p-16448L 0x1.0000000000000002p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x4p-16496L 0x1.0000000000000000000000000001p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x4p-16496L 0x1.0000000000000000000000000001p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x4p-1076L 0x1.000000000000000000000000008p+0L : inexact-ok underflow errno-erange-ok
-ctan 50000 -50000
-= ctan downward flt-32 0xc.35p+12f -0xc.35p+12f : 0x0p+0f -0x1p+0f : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x4p-1076L 0x1.000000000000000000000000008p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+ctan 50000 -50000 xfail-rounding:ldbl-128ibm
+= ctan downward flt-32 0xc.35p+12f -0xc.35p+12f : 0x0p+0f -0x1p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest flt-32 0xc.35p+12f -0xc.35p+12f : 0x0p+0f -0x1p+0f : inexact-ok underflow errno-erange-ok
-= ctan towardzero flt-32 0xc.35p+12f -0xc.35p+12f : 0x0p+0f -0xf.fffffp-4f : inexact-ok underflow errno-erange-ok
-= ctan upward flt-32 0xc.35p+12f -0xc.35p+12f : 0x8p-152f -0xf.fffffp-4f : inexact-ok underflow errno-erange-ok
-= ctan downward dbl-64 0xc.35p+12 -0xc.35p+12 : 0x0p+0 -0x1p+0 : inexact-ok underflow errno-erange-ok
+= ctan towardzero flt-32 0xc.35p+12f -0xc.35p+12f : 0x0p+0f -0xf.fffffp-4f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward flt-32 0xc.35p+12f -0xc.35p+12f : 0x8p-152f -0xf.fffffp-4f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward dbl-64 0xc.35p+12 -0xc.35p+12 : 0x0p+0 -0x1p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest dbl-64 0xc.35p+12 -0xc.35p+12 : 0x0p+0 -0x1p+0 : inexact-ok underflow errno-erange-ok
-= ctan towardzero dbl-64 0xc.35p+12 -0xc.35p+12 : 0x0p+0 -0xf.ffffffffffff8p-4 : inexact-ok underflow errno-erange-ok
-= ctan upward dbl-64 0xc.35p+12 -0xc.35p+12 : 0x4p-1076 -0xf.ffffffffffff8p-4 : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero dbl-64 0xc.35p+12 -0xc.35p+12 : 0x0p+0 -0xf.ffffffffffff8p-4 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward dbl-64 0xc.35p+12 -0xc.35p+12 : 0x4p-1076 -0xf.ffffffffffff8p-4 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0xf.fffffffffffffffp-4L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x8p-16448L -0xf.fffffffffffffffp-4L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0xf.fffffffffffffffp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x8p-16448L -0xf.fffffffffffffffp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0xf.fffffffffffffffp-4L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x4p-16448L -0xf.fffffffffffffffp-4L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0xf.fffffffffffffffp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x4p-16448L -0xf.fffffffffffffffp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x4p-16496L -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0xf.fffffffffffffffffffffffffff8p-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x4p-16496L -0xf.fffffffffffffffffffffffffff8p-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x4p-1076L -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok underflow errno-erange-ok
-ctan -50000 50000
-= ctan downward flt-32 -0xc.35p+12f 0xc.35p+12f : -0x8p-152f 0x1p+0f : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x0p+0L -0xf.fffffffffffffffffffffffffcp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x4p-1076L -0xf.fffffffffffffffffffffffffcp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+ctan -50000 50000 xfail-rounding:ldbl-128ibm
+= ctan downward flt-32 -0xc.35p+12f 0xc.35p+12f : -0x8p-152f 0x1p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest flt-32 -0xc.35p+12f 0xc.35p+12f : -0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
-= ctan towardzero flt-32 -0xc.35p+12f 0xc.35p+12f : -0x0p+0f 0x1p+0f : inexact-ok underflow errno-erange-ok
-= ctan upward flt-32 -0xc.35p+12f 0xc.35p+12f : -0x0p+0f 0x1.000002p+0f : inexact-ok underflow errno-erange-ok
-= ctan downward dbl-64 -0xc.35p+12 0xc.35p+12 : -0x4p-1076 0x1p+0 : inexact-ok underflow errno-erange-ok
+= ctan towardzero flt-32 -0xc.35p+12f 0xc.35p+12f : -0x0p+0f 0x1p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward flt-32 -0xc.35p+12f 0xc.35p+12f : -0x0p+0f 0x1.000002p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward dbl-64 -0xc.35p+12 0xc.35p+12 : -0x4p-1076 0x1p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest dbl-64 -0xc.35p+12 0xc.35p+12 : -0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
-= ctan towardzero dbl-64 -0xc.35p+12 0xc.35p+12 : -0x0p+0 0x1p+0 : inexact-ok underflow errno-erange-ok
-= ctan upward dbl-64 -0xc.35p+12 0xc.35p+12 : -0x0p+0 0x1.0000000000001p+0 : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0x8p-16448L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero dbl-64 -0xc.35p+12 0xc.35p+12 : -0x0p+0 0x1p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward dbl-64 -0xc.35p+12 0xc.35p+12 : -0x0p+0 0x1.0000000000001p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0x8p-16448L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1.0000000000000002p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-m68k -0xc.35p+12L 0xc.35p+12L : -0x4p-16448L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1.0000000000000002p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-m68k -0xc.35p+12L 0xc.35p+12L : -0x4p-16448L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-m68k -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-m68k -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-m68k -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1.0000000000000002p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128 -0xc.35p+12L 0xc.35p+12L : -0x4p-16496L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-m68k -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-m68k -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1.0000000000000002p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128 -0xc.35p+12L 0xc.35p+12L : -0x4p-16496L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128 -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128 -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128 -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1.0000000000000000000000000001p+0L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128ibm -0xc.35p+12L 0xc.35p+12L : -0x4p-1076L 0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128 -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128 -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1.0000000000000000000000000001p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128ibm -0xc.35p+12L 0xc.35p+12L : -0x4p-1076L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128ibm -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128ibm -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128ibm -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1.000000000000000000000000008p+0L : inexact-ok underflow errno-erange-ok
-ctan -50000 -50000
-= ctan downward flt-32 -0xc.35p+12f -0xc.35p+12f : -0x8p-152f -0x1p+0f : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128ibm -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128ibm -0xc.35p+12L 0xc.35p+12L : -0x0p+0L 0x1.000000000000000000000000008p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+ctan -50000 -50000 xfail-rounding:ldbl-128ibm
+= ctan downward flt-32 -0xc.35p+12f -0xc.35p+12f : -0x8p-152f -0x1p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest flt-32 -0xc.35p+12f -0xc.35p+12f : -0x0p+0f -0x1p+0f : inexact-ok underflow errno-erange-ok
-= ctan towardzero flt-32 -0xc.35p+12f -0xc.35p+12f : -0x0p+0f -0xf.fffffp-4f : inexact-ok underflow errno-erange-ok
-= ctan upward flt-32 -0xc.35p+12f -0xc.35p+12f : -0x0p+0f -0xf.fffffp-4f : inexact-ok underflow errno-erange-ok
-= ctan downward dbl-64 -0xc.35p+12 -0xc.35p+12 : -0x4p-1076 -0x1p+0 : inexact-ok underflow errno-erange-ok
+= ctan towardzero flt-32 -0xc.35p+12f -0xc.35p+12f : -0x0p+0f -0xf.fffffp-4f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward flt-32 -0xc.35p+12f -0xc.35p+12f : -0x0p+0f -0xf.fffffp-4f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward dbl-64 -0xc.35p+12 -0xc.35p+12 : -0x4p-1076 -0x1p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest dbl-64 -0xc.35p+12 -0xc.35p+12 : -0x0p+0 -0x1p+0 : inexact-ok underflow errno-erange-ok
-= ctan towardzero dbl-64 -0xc.35p+12 -0xc.35p+12 : -0x0p+0 -0xf.ffffffffffff8p-4 : inexact-ok underflow errno-erange-ok
-= ctan upward dbl-64 -0xc.35p+12 -0xc.35p+12 : -0x0p+0 -0xf.ffffffffffff8p-4 : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-intel -0xc.35p+12L -0xc.35p+12L : -0x8p-16448L -0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero dbl-64 -0xc.35p+12 -0xc.35p+12 : -0x0p+0 -0xf.ffffffffffff8p-4 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward dbl-64 -0xc.35p+12 -0xc.35p+12 : -0x0p+0 -0xf.ffffffffffff8p-4 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-intel -0xc.35p+12L -0xc.35p+12L : -0x8p-16448L -0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-intel -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-intel -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffp-4L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-intel -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffp-4L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-96-m68k -0xc.35p+12L -0xc.35p+12L : -0x4p-16448L -0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-intel -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-intel -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-96-m68k -0xc.35p+12L -0xc.35p+12L : -0x4p-16448L -0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-96-m68k -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-96-m68k -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffp-4L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-96-m68k -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffp-4L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128 -0xc.35p+12L -0xc.35p+12L : -0x4p-16496L -0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-96-m68k -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-96-m68k -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128 -0xc.35p+12L -0xc.35p+12L : -0x4p-16496L -0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128 -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128 -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128 -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok underflow errno-erange-ok
-= ctan downward ldbl-128ibm -0xc.35p+12L -0xc.35p+12L : -0x4p-1076L -0x1p+0L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128 -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffffffffffffff8p-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128 -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffffffffffffff8p-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan downward ldbl-128ibm -0xc.35p+12L -0xc.35p+12L : -0x4p-1076L -0x1p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctan tonearest ldbl-128ibm -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0x1p+0L : inexact-ok underflow errno-erange-ok
-= ctan towardzero ldbl-128ibm -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok underflow errno-erange-ok
-= ctan upward ldbl-128ibm -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok underflow errno-erange-ok
+= ctan towardzero ldbl-128ibm -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffffffffffffcp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctan upward ldbl-128ibm -0xc.35p+12L -0xc.35p+12L : -0x0p+0L -0xf.fffffffffffffffffffffffffcp-4L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 ctan 0x1.921fb6p+0 0x1p-149
 = ctan downward flt-32 0x1.921fb6p+0f 0x8p-152f : -0x1.5d1496p+24f 0xe.e008fp-104f : inexact-ok
 = ctan tonearest flt-32 0x1.921fb6p+0f 0x8p-152f : -0x1.5d1494p+24f 0xe.e008fp-104f : inexact-ok
@@ -59377,56 +59377,56 @@
 = ctanh tonearest ldbl-128ibm 0x1.6dp+8L 0x1p+0L : 0x1p+0L 0xc.f47f4p-1056L : inexact-ok underflow errno-erange-ok
 = ctanh towardzero ldbl-128ibm 0x1.6dp+8L 0x1p+0L : 0x1p+0L 0xc.f47fp-1056L : inexact-ok underflow errno-erange-ok
 = ctanh upward ldbl-128ibm 0x1.6dp+8L 0x1p+0L : 0x1.000000000000000000000000008p+0L 0xc.f47f4p-1056L : inexact-ok underflow errno-erange-ok
-ctanh 5680 1
-= ctanh downward flt-32 0x1.63p+12f 0x1p+0f : 0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
+ctanh 5680 1 xfail-rounding:ldbl-128ibm
+= ctanh downward flt-32 0x1.63p+12f 0x1p+0f : 0x1p+0f 0x0p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest flt-32 0x1.63p+12f 0x1p+0f : 0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh towardzero flt-32 0x1.63p+12f 0x1p+0f : 0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh upward flt-32 0x1.63p+12f 0x1p+0f : 0x1.000002p+0f 0x8p-152f : inexact-ok underflow errno-erange-ok
-= ctanh downward dbl-64 0x1.63p+12 0x1p+0 : 0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
+= ctanh towardzero flt-32 0x1.63p+12f 0x1p+0f : 0x1p+0f 0x0p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward flt-32 0x1.63p+12f 0x1p+0f : 0x1.000002p+0f 0x8p-152f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward dbl-64 0x1.63p+12 0x1p+0 : 0x1p+0 0x0p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest dbl-64 0x1.63p+12 0x1p+0 : 0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh towardzero dbl-64 0x1.63p+12 0x1p+0 : 0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh upward dbl-64 0x1.63p+12 0x1p+0 : 0x1.0000000000001p+0 0x4p-1076 : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-96-intel 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba298p-16392L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero dbl-64 0x1.63p+12 0x1p+0 : 0x1p+0 0x0p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward dbl-64 0x1.63p+12 0x1p+0 : 0x1.0000000000001p+0 0x4p-1076 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-96-intel 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba298p-16392L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-96-intel 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba2ap-16392L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-96-intel 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba298p-16392L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-96-intel 0x1.63p+12L 0x1p+0L : 0x1.0000000000000002p+0L 0xe.6442e59c9ba2ap-16392L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-96-m68k 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba29cp-16392L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-96-intel 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba298p-16392L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-96-intel 0x1.63p+12L 0x1p+0L : 0x1.0000000000000002p+0L 0xe.6442e59c9ba2ap-16392L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-96-m68k 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba29cp-16392L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-96-m68k 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba2ap-16392L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-96-m68k 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba29cp-16392L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-96-m68k 0x1.63p+12L 0x1p+0L : 0x1.0000000000000002p+0L 0xe.6442e59c9ba2ap-16392L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-128 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba29e34d4429f85ccp-16392L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-96-m68k 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba29cp-16392L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-96-m68k 0x1.63p+12L 0x1p+0L : 0x1.0000000000000002p+0L 0xe.6442e59c9ba2ap-16392L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-128 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba29e34d4429f85ccp-16392L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-128 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba29e34d4429f85ccp-16392L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-128 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba29e34d4429f85ccp-16392L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-128 0x1.63p+12L 0x1p+0L : 0x1.0000000000000000000000000001p+0L 0xe.6442e59c9ba29e34d4429f85dp-16392L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-128ibm 0x1.63p+12L 0x1p+0L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-128 0x1.63p+12L 0x1p+0L : 0x1p+0L 0xe.6442e59c9ba29e34d4429f85ccp-16392L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-128 0x1.63p+12L 0x1p+0L : 0x1.0000000000000000000000000001p+0L 0xe.6442e59c9ba29e34d4429f85dp-16392L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-128ibm 0x1.63p+12L 0x1p+0L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-128ibm 0x1.63p+12L 0x1p+0L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-128ibm 0x1.63p+12L 0x1p+0L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-128ibm 0x1.63p+12L 0x1p+0L : 0x1.000000000000000000000000008p+0L 0x4p-1076L : inexact-ok underflow errno-erange-ok
-ctanh 5690 1
-= ctanh downward flt-32 0x1.63ap+12f 0x1p+0f : 0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-128ibm 0x1.63p+12L 0x1p+0L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-128ibm 0x1.63p+12L 0x1p+0L : 0x1.000000000000000000000000008p+0L 0x4p-1076L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+ctanh 5690 1 xfail-rounding:ldbl-128ibm
+= ctanh downward flt-32 0x1.63ap+12f 0x1p+0f : 0x1p+0f 0x0p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest flt-32 0x1.63ap+12f 0x1p+0f : 0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh towardzero flt-32 0x1.63ap+12f 0x1p+0f : 0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh upward flt-32 0x1.63ap+12f 0x1p+0f : 0x1.000002p+0f 0x8p-152f : inexact-ok underflow errno-erange-ok
-= ctanh downward dbl-64 0x1.63ap+12 0x1p+0 : 0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
+= ctanh towardzero flt-32 0x1.63ap+12f 0x1p+0f : 0x1p+0f 0x0p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward flt-32 0x1.63ap+12f 0x1p+0f : 0x1.000002p+0f 0x8p-152f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward dbl-64 0x1.63ap+12 0x1p+0 : 0x1p+0 0x0p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest dbl-64 0x1.63ap+12 0x1p+0 : 0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh towardzero dbl-64 0x1.63ap+12 0x1p+0 : 0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh upward dbl-64 0x1.63ap+12 0x1p+0 : 0x1.0000000000001p+0 0x4p-1076 : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-96-intel 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673ec8p-16420L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero dbl-64 0x1.63ap+12 0x1p+0 : 0x1p+0 0x0p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward dbl-64 0x1.63ap+12 0x1p+0 : 0x1.0000000000001p+0 0x4p-1076 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-96-intel 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673ec8p-16420L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-96-intel 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673edp-16420L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-96-intel 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673ec8p-16420L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-96-intel 0x1.63ap+12L 0x1p+0L : 0x1.0000000000000002p+0L 0x7.f673edp-16420L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-96-m68k 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673eccp-16420L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-96-intel 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673ec8p-16420L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-96-intel 0x1.63ap+12L 0x1p+0L : 0x1.0000000000000002p+0L 0x7.f673edp-16420L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-96-m68k 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673eccp-16420L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-96-m68k 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673eccp-16420L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-96-m68k 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673eccp-16420L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-96-m68k 0x1.63ap+12L 0x1p+0L : 0x1.0000000000000002p+0L 0x7.f673edp-16420L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-128 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673ecc6b39aff738e4p-16420L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-96-m68k 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673eccp-16420L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-96-m68k 0x1.63ap+12L 0x1p+0L : 0x1.0000000000000002p+0L 0x7.f673edp-16420L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-128 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673ecc6b39aff738e4p-16420L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-128 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673ecc6b39aff738e8p-16420L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-128 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673ecc6b39aff738e4p-16420L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-128 0x1.63ap+12L 0x1p+0L : 0x1.0000000000000000000000000001p+0L 0x7.f673ecc6b39aff738e8p-16420L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-128ibm 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-128 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x7.f673ecc6b39aff738e4p-16420L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-128 0x1.63ap+12L 0x1p+0L : 0x1.0000000000000000000000000001p+0L 0x7.f673ecc6b39aff738e8p-16420L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-128ibm 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-128ibm 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-128ibm 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-128ibm 0x1.63ap+12L 0x1p+0L : 0x1.000000000000000000000000008p+0L 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-128ibm 0x1.63ap+12L 0x1p+0L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-128ibm 0x1.63ap+12L 0x1p+0L : 0x1.000000000000000000000000008p+0L 0x4p-1076L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 ctanh 0 0x3.243f6cp-1
 = ctanh downward flt-32 0x0p+0f 0x1.921fb6p+0f : 0x0p+0f -0x1.5d1496p+24f : inexact-ok
 = ctanh tonearest flt-32 0x0p+0f 0x1.921fb6p+0f : 0x0p+0f -0x1.5d1494p+24f : inexact-ok
@@ -59587,106 +59587,106 @@
 = ctanh tonearest ldbl-128ibm 0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.33b2569c333811735902f282a1p+0L 0x3.89f37a0888a0e05652b04c0aa3p-4L : inexact-ok
 = ctanh towardzero ldbl-128ibm 0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.33b2569c333811735902f282a08p+0L 0x3.89f37a0888a0e05652b04c0aa3p-4L : inexact-ok
 = ctanh upward ldbl-128ibm 0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.33b2569c333811735902f282a1p+0L 0x3.89f37a0888a0e05652b04c0aa4p-4L : inexact-ok
-ctanh 50000 50000
-= ctanh downward flt-32 0xc.35p+12f 0xc.35p+12f : 0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
+ctanh 50000 50000 xfail-rounding:ldbl-128ibm
+= ctanh downward flt-32 0xc.35p+12f 0xc.35p+12f : 0x1p+0f 0x0p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest flt-32 0xc.35p+12f 0xc.35p+12f : 0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh towardzero flt-32 0xc.35p+12f 0xc.35p+12f : 0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh upward flt-32 0xc.35p+12f 0xc.35p+12f : 0x1.000002p+0f 0x8p-152f : inexact-ok underflow errno-erange-ok
-= ctanh downward dbl-64 0xc.35p+12 0xc.35p+12 : 0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
+= ctanh towardzero flt-32 0xc.35p+12f 0xc.35p+12f : 0x1p+0f 0x0p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward flt-32 0xc.35p+12f 0xc.35p+12f : 0x1.000002p+0f 0x8p-152f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward dbl-64 0xc.35p+12 0xc.35p+12 : 0x1p+0 0x0p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest dbl-64 0xc.35p+12 0xc.35p+12 : 0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh towardzero dbl-64 0xc.35p+12 0xc.35p+12 : 0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh upward dbl-64 0xc.35p+12 0xc.35p+12 : 0x1.0000000000001p+0 0x4p-1076 : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero dbl-64 0xc.35p+12 0xc.35p+12 : 0x1p+0 0x0p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward dbl-64 0xc.35p+12 0xc.35p+12 : 0x1.0000000000001p+0 0x4p-1076 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x1.0000000000000002p+0L 0x8p-16448L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-96-intel 0xc.35p+12L 0xc.35p+12L : 0x1.0000000000000002p+0L 0x8p-16448L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x1.0000000000000002p+0L 0x4p-16448L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-96-m68k 0xc.35p+12L 0xc.35p+12L : 0x1.0000000000000002p+0L 0x4p-16448L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x1.0000000000000000000000000001p+0L 0x4p-16496L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-128 0xc.35p+12L 0xc.35p+12L : 0x1.0000000000000000000000000001p+0L 0x4p-16496L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x1.000000000000000000000000008p+0L 0x4p-1076L : inexact-ok underflow errno-erange-ok
-ctanh 50000 -50000
-= ctanh downward flt-32 0xc.35p+12f -0xc.35p+12f : 0x1p+0f -0x8p-152f : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-128ibm 0xc.35p+12L 0xc.35p+12L : 0x1.000000000000000000000000008p+0L 0x4p-1076L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+ctanh 50000 -50000 xfail-rounding:ldbl-128ibm
+= ctanh downward flt-32 0xc.35p+12f -0xc.35p+12f : 0x1p+0f -0x8p-152f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest flt-32 0xc.35p+12f -0xc.35p+12f : 0x1p+0f -0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh towardzero flt-32 0xc.35p+12f -0xc.35p+12f : 0x1p+0f -0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh upward flt-32 0xc.35p+12f -0xc.35p+12f : 0x1.000002p+0f -0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh downward dbl-64 0xc.35p+12 -0xc.35p+12 : 0x1p+0 -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= ctanh towardzero flt-32 0xc.35p+12f -0xc.35p+12f : 0x1p+0f -0x0p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward flt-32 0xc.35p+12f -0xc.35p+12f : 0x1.000002p+0f -0x0p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward dbl-64 0xc.35p+12 -0xc.35p+12 : 0x1p+0 -0x4p-1076 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest dbl-64 0xc.35p+12 -0xc.35p+12 : 0x1p+0 -0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh towardzero dbl-64 0xc.35p+12 -0xc.35p+12 : 0x1p+0 -0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh upward dbl-64 0xc.35p+12 -0xc.35p+12 : 0x1.0000000000001p+0 -0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero dbl-64 0xc.35p+12 -0xc.35p+12 : 0x1p+0 -0x0p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward dbl-64 0xc.35p+12 -0xc.35p+12 : 0x1.0000000000001p+0 -0x0p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x8p-16448L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x1.0000000000000002p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-96-intel 0xc.35p+12L -0xc.35p+12L : 0x1.0000000000000002p+0L -0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x4p-16448L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x1.0000000000000002p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-96-m68k 0xc.35p+12L -0xc.35p+12L : 0x1.0000000000000002p+0L -0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x4p-16496L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x1.0000000000000000000000000001p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-128 0xc.35p+12L -0xc.35p+12L : 0x1.0000000000000000000000000001p+0L -0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x4p-1076L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x1.000000000000000000000000008p+0L -0x0p+0L : inexact-ok underflow errno-erange-ok
-ctanh -50000 50000
-= ctanh downward flt-32 -0xc.35p+12f 0xc.35p+12f : -0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x1p+0L -0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-128ibm 0xc.35p+12L -0xc.35p+12L : 0x1.000000000000000000000000008p+0L -0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+ctanh -50000 50000 xfail-rounding:ldbl-128ibm
+= ctanh downward flt-32 -0xc.35p+12f 0xc.35p+12f : -0x1p+0f 0x0p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest flt-32 -0xc.35p+12f 0xc.35p+12f : -0x1p+0f 0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh towardzero flt-32 -0xc.35p+12f 0xc.35p+12f : -0xf.fffffp-4f 0x0p+0f : inexact-ok underflow errno-erange-ok
-= ctanh upward flt-32 -0xc.35p+12f 0xc.35p+12f : -0xf.fffffp-4f 0x8p-152f : inexact-ok underflow errno-erange-ok
-= ctanh downward dbl-64 -0xc.35p+12 0xc.35p+12 : -0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
+= ctanh towardzero flt-32 -0xc.35p+12f 0xc.35p+12f : -0xf.fffffp-4f 0x0p+0f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward flt-32 -0xc.35p+12f 0xc.35p+12f : -0xf.fffffp-4f 0x8p-152f : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward dbl-64 -0xc.35p+12 0xc.35p+12 : -0x1p+0 0x0p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest dbl-64 -0xc.35p+12 0xc.35p+12 : -0x1p+0 0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh towardzero dbl-64 -0xc.35p+12 0xc.35p+12 : -0xf.ffffffffffff8p-4 0x0p+0 : inexact-ok underflow errno-erange-ok
-= ctanh upward dbl-64 -0xc.35p+12 0xc.35p+12 : -0xf.ffffffffffff8p-4 0x4p-1076 : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero dbl-64 -0xc.35p+12 0xc.35p+12 : -0xf.ffffffffffff8p-4 0x0p+0 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward dbl-64 -0xc.35p+12 0xc.35p+12 : -0xf.ffffffffffff8p-4 0x4p-1076 : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
 = ctanh tonearest ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh towardzero ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0xf.fffffffffffffffp-4L 0x0p+0L : inexact-ok underflow errno-erange-ok
-= ctanh upward ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0xf.fffffffffffffffp-4L 0x8p-16448L : inexact-ok underflow errno-erange-ok
-= ctanh downward ldbl-96-m68k -0xc.35p+12L 0xc.35p+12L : -0x1p+0L 0x0p+0L : inexact-ok underflow errno-erange-ok
+= ctanh towardzero ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0xf.fffffffffffffffp-4L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh upward ldbl-96-intel -0xc.35p+12L 0xc.35p+12L : -0xf.fffffffffffffffp-4L 0x8p-16448L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok
+= ctanh downward ldbl-96-m68k -0xc.35p+12L 0xc.35p+12L : -0x1p+0L 0x0p+0L : xfail:ldbl-128ibm inexact-ok underflow errno-erange-ok

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