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

[Commits] r22336 - in /fsf/trunk/libc: ./ math/ po/ ports/ ports/sysdeps/unix/sysv/linux/alpha/ ports/sysdeps/unix/sysv/linux/ia64/ po...



Author: eglibc
Date: Fri Feb  1 00:01:55 2013
New Revision: 22336

Log:
Import glibc-mainline for 2013-02-01

Removed:
    fsf/trunk/libc/sysdeps/generic/bp-semctl.h
    fsf/trunk/libc/sysdeps/generic/bp-thunks.h
    fsf/trunk/libc/sysdeps/unix/s-proto-bp.S
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bp-thunks.h
Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/Makerules
    fsf/trunk/libc/NEWS
    fsf/trunk/libc/math/k_casinh.c
    fsf/trunk/libc/math/k_casinhf.c
    fsf/trunk/libc/math/k_casinhl.c
    fsf/trunk/libc/math/libm-test.inc
    fsf/trunk/libc/po/de.po
    fsf/trunk/libc/ports/ChangeLog.alpha
    fsf/trunk/libc/ports/ChangeLog.ia64
    fsf/trunk/libc/ports/ChangeLog.mips
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/alpha/semctl.c
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sigpending.c
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sigprocmask.c
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/semctl.c
    fsf/trunk/libc/sysdeps/generic/bp-checks.h
    fsf/trunk/libc/sysdeps/i386/fpu/libm-test-ulps
    fsf/trunk/libc/sysdeps/unix/Makefile
    fsf/trunk/libc/sysdeps/unix/make-syscalls.sh
    fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/semctl.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/semctl.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sigpending.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sigprocmask.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sigsuspend.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sigtimedwait.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sigwait.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sigwaitinfo.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sigpending.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c
    fsf/trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Fri Feb  1 00:01:55 2013
@@ -1,3 +1,96 @@
+2013-01-31  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #13550]
+	* sysdeps/generic/bp-checks.h (CHECK_IOCTL): Remove both
+	definitions.
+	(CHECK_FCNTL): Likewise.
+	(CHECK_N_PAGES): Likewise.
+
+	[BZ #13550]
+	* sysdeps/generic/bp-checks.h (CHECK_SIGSET): Remove both
+	definitions.
+	(CHECK_SIGSET_NULL_OK): Likewise.
+	* sysdeps/unix/sysv/linux/sigpending.c: Don't include
+	<bp-checks.h>.
+	(sigpending): Don't use CHECK_SIGSET.
+	* sysdeps/unix/sysv/linux/sigprocmask.c: Don't include
+	<bp-checks.h>.
+	(__sigprocmask): Don't use CHECK_SIGSET and CHECK_SIGSET_NULL_OK.
+	* sysdeps/unix/sysv/linux/sigsuspend.c: Don't include
+	<bp-checks.h>.
+	(do_sigsuspend): Don't use CHECK_SIGSET.
+	* sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Don't
+	use CHECK_SIGSET.
+	* sysdeps/unix/sysv/linux/sigwait.c: Don't include <bp-checks.h>.
+	(do_sigwait): Don't use CHECK_SIGSET.
+	* sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Don't
+	use CHECK_SIGSET.
+	* sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Don't
+	include <bp-checks.h>.
+	(sigpending): Don't use CHECK_SIGSET.
+	* sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Don't
+	include <bp-checks.h>.
+	(__sigprocmask): Don't use CHECK_SIGSET and CHECK_SIGSET_NULL_OK.
+	* sysdeps/unix/sysv/linux/x86_64/sigpending.c: Don't include
+	<bp-checks.h>.
+	(sigpending): Don't use CHECK_SIGSET.
+	* sysdeps/unix/sysv/linux/x86_64/sigprocmask.c: Don't include
+	<bp-checks.h>.
+	(__sigprocmask): Don't use CHECK_SIGSET and CHECK_SIGSET_NULL_OK.
+
+	[BZ #13550]
+	* sysdeps/generic/bp-semctl.h: Remove file.
+	* sysdeps/unix/sysv/linux/i386/semctl.c: Don't include
+	<bp-checks.h> and <bp-semctl.h>.
+	(__old_semctl): Don't use CHECK_SEMCTL.
+	(__new_semctl): Likewise.
+	* sysdeps/unix/sysv/linux/semctl.c: Don't include <bp-checks.h>
+	and <bp-semctl.h>.
+	(__old_semctl): Don't use CHECK_SEMCTL.
+	(__new_semctl): Likewise.
+	* sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c: Don't include
+	<bp-checks.h> and <bp-semctl.h>.
+	(__old_semctl): Don't use CHECK_SEMCTL.
+	(__new_semctl): Likewise.
+	* sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c: Don't include
+	<bp-checks.h> and <bp-semctl.h>.
+	(semctl): Don't use CHECK_SEMCTL.
+
+	[BZ #13550]
+	* Makerules (elide-bp-thunks): Remove variable.
+	(elide-routines.oS): Don't use $(elide-bp-thunks).
+	(elide-routines.os): Likewise.
+	(elide-routines.o): Likewise.
+	(elide-routines.op): Likewise.
+	(elide-routines.og): Likewise.
+	(objects): Don't use $(bp-thunks).
+	* sysdeps/unix/Makefile ($(common-objpfx)s-proto-bp.d): Do not
+	include.
+	(common-generated): Do not add s-proto-bp.d.
+	* sysdeps/unix/make-syscalls.sh (ptr): Remove variable.
+	(int): Likewise.
+	(typ): Likewise.
+	Do not generate makefile rules for bounded-pointer thunks.
+	* sysdeps/generic/bp-thunks.h: Remove file.
+	* sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
+	* sysdeps/unix/s-proto-bp.S: Likewise.
+
+	[BZ #15062]
+	* math/k_casinh.c (__kernel_casinh): Compute real and imaginary
+	parts of result separately when argument is not close to line from
+	-i to i and one part of argument is small.
+	* math/k_casinhf.c (__kernel_casinhf): Likewise.
+	* math/k_casinhl.c (__kernel_casinhl): Likewise.
+	* math/libm-test.inc (cacos_test): Add more tests.
+	(casin_test): Likewise.
+	(casinh_test): Likewise.
+	* sysdeps/i386/fpu/libm-test-ulps: Update.
+	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-01-31  David S. Miller  <davem@xxxxxxxxxxxxx>
+
+	* po/de.po: Update from translation team.
+
 2013-01-25  Maxim Kuvyrkov  <maxim.kuvyrkov@xxxxxxxxx>
 
 	* time/tzfile.c: Include stdint.h for SIZE_MAX.

Modified: fsf/trunk/libc/Makerules
==============================================================================
--- fsf/trunk/libc/Makerules (original)
+++ fsf/trunk/libc/Makerules Fri Feb  1 00:01:55 2013
@@ -409,19 +409,15 @@
 endif
 endif
 
-# Bounded pointer thunks are only built for *.ob
-elide-bp-thunks = $(addprefix $(bppfx),$(bp-thunks))
-
 elide-routines.oS += $(filter-out $(static-only-routines),\
-				  $(routines) $(aux) $(sysdep_routines)) \
-		     $(elide-bp-thunks)
-elide-routines.os += $(static-only-routines) $(elide-bp-thunks)
+				  $(routines) $(aux) $(sysdep_routines))
+elide-routines.os += $(static-only-routines)
 
 # If we have versioned code we don't need the old versions in any of the
 # static libraries.
-elide-routines.o  += $(shared-only-routines) $(elide-bp-thunks)
-elide-routines.op += $(shared-only-routines) $(elide-bp-thunks)
-elide-routines.og += $(shared-only-routines) $(elide-bp-thunks)
+elide-routines.o  += $(shared-only-routines)
+elide-routines.op += $(shared-only-routines)
+elide-routines.og += $(shared-only-routines)
 elide-routines.ob += $(shared-only-routines)
 
 # Shared library building.
@@ -601,11 +597,7 @@
 
 # This is the list of all object files, gotten by
 # replacing every ".c" in `sources' with a ".o".
-# We also add bounded-pointer thunks, which are later
-# elided for all suffixes except for `.ob'.
-override objects := $(addprefix $(objpfx),$(sources:.c=.o) \
-		      $(patsubst %,$(bppfx)%.o,\
-			$(filter $(routines) $(sysdep_routines),$(bp-thunks))))
+override objects := $(addprefix $(objpfx),$(sources:.c=.o))
 
 
 # The makefile may define $(extra-libs) with `libfoo libbar'

Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Fri Feb  1 00:01:55 2013
@@ -10,7 +10,7 @@
 * The following bugs are resolved with this release:
 
   13951, 14200, 14317, 14327, 14496, 14964, 14981, 14982, 14985, 14994,
-  14996, 15003, 15020, 15023, 15036.
+  14996, 15003, 15020, 15023, 15036, 15062.
 
 
 Version 2.17

Modified: fsf/trunk/libc/math/k_casinh.c
==============================================================================
--- fsf/trunk/libc/math/k_casinh.c (original)
+++ fsf/trunk/libc/math/k_casinh.c Fri Feb  1 00:01:55 2013
@@ -57,6 +57,26 @@
       res = __clog (y);
       __real__ res += M_LN2;
     }
+  else if (rx >= 0.5 && ix < DBL_EPSILON / 8.0)
+    {
+      double s = __ieee754_hypot (1.0, rx);
+
+      __real__ res = __ieee754_log (rx + s);
+      if (adj)
+	__imag__ res = __ieee754_atan2 (s, __imag__ x);
+      else
+	__imag__ res = __ieee754_atan2 (ix, s);
+    }
+  else if (rx < DBL_EPSILON / 8.0 && ix >= 1.5)
+    {
+      double s = __ieee754_sqrt ((ix + 1.0) * (ix - 1.0));
+
+      __real__ res = __ieee754_log (ix + s);
+      if (adj)
+	__imag__ res = __ieee754_atan2 (rx, __copysign (s, __imag__ x));
+      else
+	__imag__ res = __ieee754_atan2 (s, rx);
+    }
   else
     {
       __real__ y = (rx - ix) * (rx + ix) + 1.0;

Modified: fsf/trunk/libc/math/k_casinhf.c
==============================================================================
--- fsf/trunk/libc/math/k_casinhf.c (original)
+++ fsf/trunk/libc/math/k_casinhf.c Fri Feb  1 00:01:55 2013
@@ -57,6 +57,26 @@
       res = __clogf (y);
       __real__ res += (float) M_LN2;
     }
+  else if (rx >= 0.5f && ix < FLT_EPSILON / 8.0f)
+    {
+      float s = __ieee754_hypotf (1.0f, rx);
+
+      __real__ res = __ieee754_logf (rx + s);
+      if (adj)
+	__imag__ res = __ieee754_atan2f (s, __imag__ x);
+      else
+	__imag__ res = __ieee754_atan2f (ix, s);
+    }
+  else if (rx < FLT_EPSILON / 8.0f && ix >= 1.5f)
+    {
+      float s = __ieee754_sqrtf ((ix + 1.0f) * (ix - 1.0f));
+
+      __real__ res = __ieee754_logf (ix + s);
+      if (adj)
+	__imag__ res = __ieee754_atan2f (rx, __copysignf (s, __imag__ x));
+      else
+	__imag__ res = __ieee754_atan2f (s, rx);
+    }
   else
     {
       __real__ y = (rx - ix) * (rx + ix) + 1.0;

Modified: fsf/trunk/libc/math/k_casinhl.c
==============================================================================
--- fsf/trunk/libc/math/k_casinhl.c (original)
+++ fsf/trunk/libc/math/k_casinhl.c Fri Feb  1 00:01:55 2013
@@ -64,6 +64,26 @@
       res = __clogl (y);
       __real__ res += M_LN2l;
     }
+  else if (rx >= 0.5L && ix < LDBL_EPSILON / 8.0L)
+    {
+      long double s = __ieee754_hypotl (1.0L, rx);
+
+      __real__ res = __ieee754_logl (rx + s);
+      if (adj)
+	__imag__ res = __ieee754_atan2l (s, __imag__ x);
+      else
+	__imag__ res = __ieee754_atan2l (ix, s);
+    }
+  else if (rx < LDBL_EPSILON / 8.0L && ix >= 1.5L)
+    {
+      long double s = __ieee754_sqrtl ((ix + 1.0L) * (ix - 1.0L));
+
+      __real__ res = __ieee754_logl (ix + s);
+      if (adj)
+	__imag__ res = __ieee754_atan2l (rx, __copysignl (s, __imag__ x));
+      else
+	__imag__ res = __ieee754_atan2l (s, rx);
+    }
   else
     {
       __real__ y = (rx - ix) * (rx + ix) + 1.0;

Modified: fsf/trunk/libc/math/libm-test.inc
==============================================================================
--- fsf/trunk/libc/math/libm-test.inc (original)
+++ fsf/trunk/libc/math/libm-test.inc Fri Feb  1 00:01:55 2013
@@ -1490,6 +1490,35 @@
   TEST_c_c (cacos, 0x1.fp16383L, 0x1.fp16383L, 7.853981633974483096156608458198757210493e-1L, -1.135753137836666928715489992987020363057e4L);
 #endif
 
+  TEST_c_c (cacos, 0x1.fp-129L, 1.5L, 1.570796326794896619231321691639751442097L, -1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, 0x1.fp-129L, -1.5L, 1.570796326794896619231321691639751442097L, 1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, -0x1.fp-129L, 1.5L, 1.570796326794896619231321691639751442100L, -1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, -0x1.fp-129L, -1.5L, 1.570796326794896619231321691639751442100L, 1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, 1.5L, 0x1.fp-129L, 2.546345110742945032959687790021055102355e-39L, -9.624236501192068949955178268487368462704e-1L, UNDERFLOW_EXCEPTION_FLOAT);
+  TEST_c_c (cacos, -1.5L, 0x1.fp-129L, 3.141592653589793238462643383279502884195L, -9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (cacos, 1.5L, -0x1.fp-129L, 2.546345110742945032959687790021055102355e-39L, 9.624236501192068949955178268487368462704e-1L, UNDERFLOW_EXCEPTION_FLOAT);
+  TEST_c_c (cacos, -1.5L, -0x1.fp-129L, 3.141592653589793238462643383279502884195L, 9.624236501192068949955178268487368462704e-1L);
+#ifndef TEST_FLOAT
+  TEST_c_c (cacos, 0x1.fp-1025L, 1.5L, 1.570796326794896619231321691639751442099L, -1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, 0x1.fp-1025L, -1.5L, 1.570796326794896619231321691639751442099L, 1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, -0x1.fp-1025L, 1.5L, 1.570796326794896619231321691639751442099L, -1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, -0x1.fp-1025L, -1.5L, 1.570796326794896619231321691639751442099L, 1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, 1.5L, 0x1.fp-1025L, 4.819934639999230680322935210539402497827e-309L, -9.624236501192068949955178268487368462704e-1L, UNDERFLOW_EXCEPTION_DOUBLE);
+  TEST_c_c (cacos, -1.5L, 0x1.fp-1025L, 3.141592653589793238462643383279502884197L, -9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (cacos, 1.5L, -0x1.fp-1025L, 4.819934639999230680322935210539402497827e-309L, 9.624236501192068949955178268487368462704e-1L, UNDERFLOW_EXCEPTION_DOUBLE);
+  TEST_c_c (cacos, -1.5L, -0x1.fp-1025L, 3.141592653589793238462643383279502884197L, 9.624236501192068949955178268487368462704e-1L);
+#endif
+#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381
+  TEST_c_c (cacos, 0x1.fp-16385L, 1.5L, 1.570796326794896619231321691639751442099L, -1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, 0x1.fp-16385L, -1.5L, 1.570796326794896619231321691639751442099L, 1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, -0x1.fp-16385L, 1.5L, 1.570796326794896619231321691639751442099L, -1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, -0x1.fp-16385L, -1.5L, 1.570796326794896619231321691639751442099L, 1.194763217287109304111930828519090523536L);
+  TEST_c_c (cacos, 1.5L, 0x1.fp-16385L, 7.282957076134209141226696333885150260319e-4933L, -9.624236501192068949955178268487368462704e-1L, UNDERFLOW_EXCEPTION);
+  TEST_c_c (cacos, -1.5L, 0x1.fp-16385L, 3.141592653589793238462643383279502884197L, -9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (cacos, 1.5L, -0x1.fp-16385L, 7.282957076134209141226696333885150260319e-4933L, 9.624236501192068949955178268487368462704e-1L, UNDERFLOW_EXCEPTION);
+  TEST_c_c (cacos, -1.5L, -0x1.fp-16385L, 3.141592653589793238462643383279502884197L, 9.624236501192068949955178268487368462704e-1L);
+#endif
+
   TEST_c_c (cacos, 0.75L, 1.25L, 1.11752014915610270578240049553777969L, -1.13239363160530819522266333696834467L);
   TEST_c_c (cacos, -2, -3, 2.1414491111159960199416055713254211L, 1.9833870299165354323470769028940395L);
 
@@ -1772,6 +1801,35 @@
   TEST_c_c (casin, 0x1.fp16383L, 0x1.fp16383L, 7.853981633974483096156608458198757210493e-1L, 1.135753137836666928715489992987020363057e4L);
 #endif
 
+  TEST_c_c (casin, 0x1.fp-129L, 1.5L, 1.579176199917649005841160751101628985741e-39L, 1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION_FLOAT);
+  TEST_c_c (casin, 0x1.fp-129L, -1.5L, 1.579176199917649005841160751101628985741e-39L, -1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION_FLOAT);
+  TEST_c_c (casin, -0x1.fp-129L, 1.5L, -1.579176199917649005841160751101628985741e-39L, 1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION_FLOAT);
+  TEST_c_c (casin, -0x1.fp-129L, -1.5L, -1.579176199917649005841160751101628985741e-39L, -1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION_FLOAT);
+  TEST_c_c (casin, 1.5L, 0x1.fp-129L, 1.570796326794896619231321691639751442096L, 9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (casin, -1.5L, 0x1.fp-129L, -1.570796326794896619231321691639751442096L, 9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (casin, 1.5L, -0x1.fp-129L, 1.570796326794896619231321691639751442096L, -9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (casin, -1.5L, -0x1.fp-129L, -1.570796326794896619231321691639751442096L, -9.624236501192068949955178268487368462704e-1L);
+#ifndef TEST_FLOAT
+  TEST_c_c (casin, 0x1.fp-1025L, 1.5L, 2.989196569048182929051881765490354365918e-309L, 1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION_DOUBLE);
+  TEST_c_c (casin, 0x1.fp-1025L, -1.5L, 2.989196569048182929051881765490354365918e-309L, -1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION_DOUBLE);
+  TEST_c_c (casin, -0x1.fp-1025L, 1.5L, -2.989196569048182929051881765490354365918e-309L, 1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION_DOUBLE);
+  TEST_c_c (casin, -0x1.fp-1025L, -1.5L, -2.989196569048182929051881765490354365918e-309L, -1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION_DOUBLE);
+  TEST_c_c (casin, 1.5L, 0x1.fp-1025L, 1.570796326794896619231321691639751442099L, 9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (casin, -1.5L, 0x1.fp-1025L, -1.570796326794896619231321691639751442099L, 9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (casin, 1.5L, -0x1.fp-1025L, 1.570796326794896619231321691639751442099L, -9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (casin, -1.5L, -0x1.fp-1025L, -1.570796326794896619231321691639751442099L, -9.624236501192068949955178268487368462704e-1L);
+#endif
+#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381
+  TEST_c_c (casin, 0x1.fp-16385L, 1.5L, 4.516698239814521372306784062043266700598e-4933L, 1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION);
+  TEST_c_c (casin, 0x1.fp-16385L, -1.5L, 4.516698239814521372306784062043266700598e-4933L, -1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION);
+  TEST_c_c (casin, -0x1.fp-16385L, 1.5L, -4.516698239814521372306784062043266700598e-4933L, 1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION);
+  TEST_c_c (casin, -0x1.fp-16385L, -1.5L, -4.516698239814521372306784062043266700598e-4933L, -1.194763217287109304111930828519090523536L, UNDERFLOW_EXCEPTION);
+  TEST_c_c (casin, 1.5L, 0x1.fp-16385L, 1.570796326794896619231321691639751442099L, 9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (casin, -1.5L, 0x1.fp-16385L, -1.570796326794896619231321691639751442099L, 9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (casin, 1.5L, -0x1.fp-16385L, 1.570796326794896619231321691639751442099L, -9.624236501192068949955178268487368462704e-1L);
+  TEST_c_c (casin, -1.5L, -0x1.fp-16385L, -1.570796326794896619231321691639751442099L, -9.624236501192068949955178268487368462704e-1L);
+#endif
+
   TEST_c_c (casin, 0.75L, 1.25L, 0.453276177638793913448921196101971749L, 1.13239363160530819522266333696834467L);
   TEST_c_c (casin, -2, -3, -0.57065278432109940071028387968566963L, -1.9833870299165354323470769028940395L);
 
@@ -1897,6 +1955,35 @@
 #endif
 #if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
   TEST_c_c (casinh, 0x1.fp16383L, 0x1.fp16383L, 1.135753137836666928715489992987020363057e4L, 7.853981633974483096156608458198757210493e-1L);
+#endif
+
+  TEST_c_c (casinh, 0x1.fp-129L, 1.5L, 9.624236501192068949955178268487368462704e-1L, 1.570796326794896619231321691639751442096L);
+  TEST_c_c (casinh, 0x1.fp-129L, -1.5L, 9.624236501192068949955178268487368462704e-1L, -1.570796326794896619231321691639751442096L);
+  TEST_c_c (casinh, -0x1.fp-129L, 1.5L, -9.624236501192068949955178268487368462704e-1L, 1.570796326794896619231321691639751442096L);
+  TEST_c_c (casinh, -0x1.fp-129L, -1.5L, -9.624236501192068949955178268487368462704e-1L, -1.570796326794896619231321691639751442096L);
+  TEST_c_c (casinh, 1.5L, 0x1.fp-129L, 1.194763217287109304111930828519090523536L, 1.579176199917649005841160751101628985741e-39L, UNDERFLOW_EXCEPTION_FLOAT);
+  TEST_c_c (casinh, -1.5L, 0x1.fp-129L, -1.194763217287109304111930828519090523536L, 1.579176199917649005841160751101628985741e-39L, UNDERFLOW_EXCEPTION_FLOAT);
+  TEST_c_c (casinh, 1.5L, -0x1.fp-129L, 1.194763217287109304111930828519090523536L, -1.579176199917649005841160751101628985741e-39L, UNDERFLOW_EXCEPTION_FLOAT);
+  TEST_c_c (casinh, -1.5L, -0x1.fp-129L, -1.194763217287109304111930828519090523536L, -1.579176199917649005841160751101628985741e-39L, UNDERFLOW_EXCEPTION_FLOAT);
+#ifndef TEST_FLOAT
+  TEST_c_c (casinh, 0x1.fp-1025L, 1.5L, 9.624236501192068949955178268487368462704e-1L, 1.570796326794896619231321691639751442099L);
+  TEST_c_c (casinh, 0x1.fp-1025L, -1.5L, 9.624236501192068949955178268487368462704e-1L, -1.570796326794896619231321691639751442099L);
+  TEST_c_c (casinh, -0x1.fp-1025L, 1.5L, -9.624236501192068949955178268487368462704e-1L, 1.570796326794896619231321691639751442099L);
+  TEST_c_c (casinh, -0x1.fp-1025L, -1.5L, -9.624236501192068949955178268487368462704e-1L, -1.570796326794896619231321691639751442099L);
+  TEST_c_c (casinh, 1.5L, 0x1.fp-1025L, 1.194763217287109304111930828519090523536L, 2.989196569048182929051881765490354365918e-309L, UNDERFLOW_EXCEPTION_DOUBLE);
+  TEST_c_c (casinh, -1.5L, 0x1.fp-1025L, -1.194763217287109304111930828519090523536L, 2.989196569048182929051881765490354365918e-309L, UNDERFLOW_EXCEPTION_DOUBLE);
+  TEST_c_c (casinh, 1.5L, -0x1.fp-1025L, 1.194763217287109304111930828519090523536L, -2.989196569048182929051881765490354365918e-309L, UNDERFLOW_EXCEPTION_DOUBLE);
+  TEST_c_c (casinh, -1.5L, -0x1.fp-1025L, -1.194763217287109304111930828519090523536L, -2.989196569048182929051881765490354365918e-309L, UNDERFLOW_EXCEPTION_DOUBLE);
+#endif
+#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381
+  TEST_c_c (casinh, 0x1.fp-16385L, 1.5L, 9.624236501192068949955178268487368462704e-1L, 1.570796326794896619231321691639751442099L);
+  TEST_c_c (casinh, 0x1.fp-16385L, -1.5L, 9.624236501192068949955178268487368462704e-1L, -1.570796326794896619231321691639751442099L);
+  TEST_c_c (casinh, -0x1.fp-16385L, 1.5L, -9.624236501192068949955178268487368462704e-1L, 1.570796326794896619231321691639751442099L);
+  TEST_c_c (casinh, -0x1.fp-16385L, -1.5L, -9.624236501192068949955178268487368462704e-1L, -1.570796326794896619231321691639751442099L);
+  TEST_c_c (casinh, 1.5L, 0x1.fp-16385L, 1.194763217287109304111930828519090523536L, 4.516698239814521372306784062043266700598e-4933L, UNDERFLOW_EXCEPTION);
+  TEST_c_c (casinh, -1.5L, 0x1.fp-16385L, -1.194763217287109304111930828519090523536L, 4.516698239814521372306784062043266700598e-4933L, UNDERFLOW_EXCEPTION);
+  TEST_c_c (casinh, 1.5L, -0x1.fp-16385L, 1.194763217287109304111930828519090523536L, -4.516698239814521372306784062043266700598e-4933L, UNDERFLOW_EXCEPTION);
+  TEST_c_c (casinh, -1.5L, -0x1.fp-16385L, -1.194763217287109304111930828519090523536L, -4.516698239814521372306784062043266700598e-4933L, UNDERFLOW_EXCEPTION);
 #endif
 
   TEST_c_c (casinh, 0.75L, 1.25L, 1.03171853444778027336364058631006594L, 0.911738290968487636358489564316731207L);

Modified: fsf/trunk/libc/po/de.po
==============================================================================
--- fsf/trunk/libc/po/de.po (original)
+++ fsf/trunk/libc/po/de.po Fri Feb  1 00:01:55 2013
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: GNU libc 2.17-pre1\n"
 "POT-Creation-Date: 2012-12-07 15:10-0500\n"
-"PO-Revision-Date: 2012-12-08 15:07+0100\n"
+"PO-Revision-Date: 2013-01-31 07:16+0100\n"
 "Last-Translator: Jochen Hein <jochen@xxxxxxxxxx>\n"
 "Language-Team: German <translation-team-de@xxxxxxxxxxxxxxxxxxxxx>\n"
 "Language: de\n"
@@ -791,7 +791,7 @@
 #: elf/ldconfig.c:409
 #, c-format
 msgid "Can't stat %s"
-msgstr "Kann ÃÂstat()ÃÂ fÃÂr ÃÂ%sÃÂ nicht aufrufenen"
+msgstr "Kann ÃÂstat()ÃÂ fÃÂr ÃÂ%sÃÂ nicht aufrufen"
 
 #: elf/ldconfig.c:483
 #, c-format

Modified: fsf/trunk/libc/ports/ChangeLog.alpha
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.alpha (original)
+++ fsf/trunk/libc/ports/ChangeLog.alpha Fri Feb  1 00:01:55 2013
@@ -1,3 +1,10 @@
+2013-01-31  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #13550]
+	* sysdeps/unix/sysv/linux/alpha/semctl.c: Don't include
+	<bp-checks.h> and <bp-semctl.h>.
+	(__new_semctl): Don't use CHECK_SEMCTL.
+
 2013-01-08  Andreas Jaeger  <aj@xxxxxxx>
 
 	[BZ# 14985]

Modified: fsf/trunk/libc/ports/ChangeLog.ia64
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.ia64 (original)
+++ fsf/trunk/libc/ports/ChangeLog.ia64 Fri Feb  1 00:01:55 2013
@@ -1,3 +1,13 @@
+2013-01-31  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #13550]
+	* sysdeps/unix/sysv/linux/ia64/sigpending.c: Don't include
+	<bp-checks.h>.
+	(sigpending): Don't use CHECK_SIGSET.
+	* sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Don't include
+	<bp-checks.h>.
+	(__sigprocmask): Don't use CHECK_SIGSET and CHECK_SIGSET_NULL_OK.
+
 2013-01-02  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* All files with FSF copyright notices: Update copyright dates

Modified: fsf/trunk/libc/ports/ChangeLog.mips
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.mips (original)
+++ fsf/trunk/libc/ports/ChangeLog.mips Fri Feb  1 00:01:55 2013
@@ -1,3 +1,10 @@
+2013-01-31  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	[BZ #13550]
+	* sysdeps/unix/sysv/linux/mips/mips64/semctl.c: Don't include
+	<bp-checks.h> and <bp-semctl.h>.
+	(__semctl): Don't use CHECK_SEMCTL.
+
 2013-01-29  Maciej W. Rozycki  <macro@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Correct

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/alpha/semctl.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/alpha/semctl.c (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/alpha/semctl.c Fri Feb  1 00:01:55 2013
@@ -33,10 +33,6 @@
   struct seminfo *__buf;	/* buffer for IPC_INFO */
 };
 
-#include <bp-checks.h>
-#include <bp-semctl.h>
-
-
 int
 __new_semctl (int semid, int semnum, int cmd, ...)
 {
@@ -51,7 +47,7 @@
   va_end (ap);
 
   return INLINE_SYSCALL (semctl, 4, semid, semnum, cmd | __IPC_64,
-			 CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)->array);
+			 arg.array);
 }
 
 #include <shlib-compat.h>

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sigpending.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sigpending.c (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sigpending.c Fri Feb  1 00:01:55 2013
@@ -24,7 +24,6 @@
 
 #include <sysdep.h>
 #include <sys/syscall.h>
-#include <bp-checks.h>
 
 /* Change the set of blocked signals to SET,
    wait until a signal arrives, and restore the set of blocked signals.  */
@@ -34,5 +33,5 @@
 {
   /* XXX The size argument hopefully will have to be changed to the
      real size of the user-level sigset_t.  */
-  return INLINE_SYSCALL (rt_sigpending, 2, CHECK_SIGSET (set), _NSIG / 8);
+  return INLINE_SYSCALL (rt_sigpending, 2, set, _NSIG / 8);
 }

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sigprocmask.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sigprocmask.c (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/sigprocmask.c Fri Feb  1 00:01:55 2013
@@ -26,7 +26,6 @@
 
 #include <sysdep.h>
 #include <sys/syscall.h>
-#include <bp-checks.h>
 
 /* Get and/or change the set of blocked signals.  */
 int
@@ -38,7 +37,6 @@
 
   /* XXX The size argument hopefully will have to be changed to the
      real size of the user-level sigset_t.  */
-  return INLINE_SYSCALL (rt_sigprocmask, 4, how, CHECK_SIGSET (set),
-			 CHECK_SIGSET_NULL_OK (oset), _NSIG / 8);
+  return INLINE_SYSCALL (rt_sigprocmask, 4, how, set, oset, _NSIG / 8);
 }
 weak_alias (__sigprocmask, sigprocmask)

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/semctl.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/semctl.c (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/semctl.c Fri Feb  1 00:01:55 2013
@@ -30,9 +30,6 @@
   struct seminfo *__buf;	/* buffer for IPC_INFO */
 };
 
-#include <bp-checks.h>
-#include <bp-semctl.h>		/* definition of CHECK_SEMCTL needs union semum */
-
 int __semctl (int semid, int semnum, int cmd, ...);
 
 int
@@ -49,7 +46,7 @@
   va_end (ap);
 
   return INLINE_SYSCALL (semctl, 4, semid, semnum, cmd | __IPC_64,
-			 CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)->array);
+			 arg.array);
 }
 
 #include <shlib-compat.h>

Modified: fsf/trunk/libc/sysdeps/generic/bp-checks.h
==============================================================================
--- fsf/trunk/libc/sysdeps/generic/bp-checks.h (original)
+++ fsf/trunk/libc/sysdeps/generic/bp-checks.h Fri Feb  1 00:01:55 2013
@@ -66,35 +66,6 @@
 /* Same as CHECK_STRING, but tolerate ARG == NULL.  */
 # define CHECK_STRING_NULL_OK(ARG) _CHECK_STRING ((ARG), __ptrvalue (ARG))
 
-/* Check bounds of signal syscall args with type sigset_t.  */
-# define CHECK_SIGSET(SET) CHECK_N ((SET), _NSIG / (8 * sizeof *(SET)))
-/* Same as CHECK_SIGSET, but tolerate SET == NULL.  */
-# define CHECK_SIGSET_NULL_OK(SET) CHECK_N_NULL_OK ((SET), _NSIG / (8 * sizeof *(SET)))
-
-# if defined (_IOC_SIZESHIFT) && defined (_IOC_SIZEBITS)
-/* Extract the size of the ioctl data and check its bounds.  */
-#  define CHECK_IOCTL(ARG, CMD)						\
-  CHECK_N ((const char *) (ARG),					\
-	   (((CMD) >> _IOC_SIZESHIFT) & ((1 << _IOC_SIZEBITS) - 1)))
-# else
-/* We don't know the size of the ioctl data, so the best we can do
-   is check that the first byte is within bounds.  */
-#  define CHECK_IOCTL(ARG, CMD) CHECK_1 ((const char *) ARG)
-# endif
-
-/* Check bounds of `struct flock *' for the locking fcntl commands.  */
-# define CHECK_FCNTL(ARG, CMD)					\
-  (((CMD) == F_GETLK || (CMD) == F_SETLK || (CMD) == F_SETLKW)	\
-   ? CHECK_1 ((struct flock *) ARG) : (unsigned long) (ARG))
-
-/* Check bounds of an array of mincore residency-status flags that
-   cover a region of NBYTES.  Such a vector occupies one byte per page
-   of memory.  */
-# define CHECK_N_PAGES(ARG, NBYTES)				\
-  ({ int _page_size_ = sysconf (_SC_PAGE_SIZE);			\
-     CHECK_N ((const char *) (ARG),				\
-	      ((NBYTES) + _page_size_ - 1) / _page_size_); })
-
 /* Return a bounded pointer with value PTR that satisfies CHECK_N (PTR, N).  */
 # define BOUNDED_N(PTR, N) 				\
   ({ __typeof (PTR) __bounded _p_;			\
@@ -114,11 +85,6 @@
 # define CHECK_N(ARG, N) (ARG)
 # define CHECK_N_NULL_OK(ARG, N) (ARG)
 # define CHECK_STRING(ARG) (ARG)
-# define CHECK_SIGSET(SET) (SET)
-# define CHECK_SIGSET_NULL_OK(SET) (SET)
-# define CHECK_IOCTL(ARG, CMD) (ARG)
-# define CHECK_FCNTL(ARG, CMD) (ARG)
-# define CHECK_N_PAGES(ARG, NBYTES) (ARG)
 # define BOUNDED_N(PTR, N) (PTR)
 
 #endif /* !__BOUNDED_POINTERS__ */

Removed: fsf/trunk/libc/sysdeps/generic/bp-semctl.h
==============================================================================
--- fsf/trunk/libc/sysdeps/generic/bp-semctl.h (original)
+++ fsf/trunk/libc/sysdeps/generic/bp-semctl.h (removed)
@@ -1,66 +1,0 @@
-/* Bounded-pointer checking macros for C.
-   Copyright (C) 2000-2013 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Greg McGary <greg@xxxxxxxxxx>
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#ifndef _bp_semctl_h_
-#define _bp_semctl_h_ 1
-
-#if __BOUNDED_POINTERS__
-
-# define CHECK_SEMCTL(ARGP, SEMID, CMD) check_semctl (ARGP, SEMID, CMD)
-
-union semun *__unbounded
-check_semctl (union semun *arg, int semid, int cmd)
-{
-  int ipc64 = (cmd & __IPC_64);
-
-  switch (cmd & ~__IPC_64)
-    {
-    case IPC_STAT:
-    case IPC_SET:
-      (void) CHECK_1 (arg->buf);
-      break;
-
-    case GETALL:
-    case SETALL:
-      {
-	struct semid_ds ds;
-	union semun un = { .buf = &ds };
-	unsigned int length = ~0;
-
-	/* It's unfortunate that we need to make a recursive
-	   system call to get the size of the semaphore set...  */
-	if (semctl (semid, 0, IPC_STAT | ipc64, un) == 0)
-	  length = ds.sem_nsems;
-	(void) CHECK_N (arg->array, length);
-	break;
-      }
-
-    case IPC_INFO:
-      (void) CHECK_1 (arg->__buf);
-      break;
-    }
-
-  return __ptrvalue (arg);
-}
-
-#else
-# define CHECK_SEMCTL(ARGP, SEMID, CMD) (ARGP)
-#endif
-
-#endif /* _bp_semctl_h_ */

Removed: fsf/trunk/libc/sysdeps/generic/bp-thunks.h
==============================================================================
--- fsf/trunk/libc/sysdeps/generic/bp-thunks.h (original)
+++ fsf/trunk/libc/sysdeps/generic/bp-thunks.h (removed)
@@ -1,69 +1,0 @@
-/* Bounded-pointer syscall thunk support.
-   Copyright (C) 2000-2013 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Greg McGary <greg@xxxxxxxxxx>
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#ifndef _bpthunks_h_
-#define _bpthunks_h_
-
-#ifndef __ASSEMBLER__
-
-/* This header is included by the syscall BP thunks defined in
-   sysd-syscalls, as created by sysdeps/unix/make-syscalls.sh.  It
-   includes all headers that contain prototype declarations for system
-   call functions.  */
-
-#include <libc-symbols.h>
-#include <bp-sym.h>
-#include <bp-checks.h>
-
-/* Get `struct timeval' definition for select.  */
-#define __need_timeval
-#include <bits/time.h>
-
-#include <stddef.h>
-#include <unistd.h>
-#include <sched.h>
-#include <signal.h>
-#include <fcntl.h>
-#include <time.h>
-#include <utime.h>
-#include <stdio.h>
-
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#include <sys/klog.h>
-#include <sys/mman.h>
-#include <sys/mount.h>
-#include <sys/quota.h>
-#include <sys/resource.h>
-#include <sys/select.h>
-#include <io/sys/sendfile.h>
-#include <sys/socket.h>
-#include <sys/stat.h>
-#include <sys/statfs.h>
-#include <sys/swap.h>
-#include <sys/sysinfo.h>
-#include <sys/time.h>
-#include <sys/times.h>
-#include <sys/timex.h>
-#include <sys/utsname.h>
-#include <sys/wait.h>
-
-#endif /* Not __ASSEMBLER__.  */
-
-#endif /* _bpthunks_h_ */

Modified: fsf/trunk/libc/sysdeps/i386/fpu/libm-test-ulps
==============================================================================
--- fsf/trunk/libc/sysdeps/i386/fpu/libm-test-ulps (original)
+++ fsf/trunk/libc/sysdeps/i386/fpu/libm-test-ulps Fri Feb  1 00:01:55 2013
@@ -275,6 +275,18 @@
 Test "Imaginary part of: cacos (-0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i":
 double: 1
 idouble: 1
+Test "Imaginary part of: cacos (-0x1.fp-1025 + 1.5 i) == 1.570796326794896619231321691639751442099 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (-0x1.fp-1025 - 1.5 i) == 1.570796326794896619231321691639751442099 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (-0x1.fp-129 + 1.5 i) == 1.570796326794896619231321691639751442100 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (-0x1.fp-129 - 1.5 i) == 1.570796326794896619231321691639751442100 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: cacos (-1.5 + +0 i) == pi - 0.9624236501192068949955178268487368462704 i":
 double: 1
 float: 1
@@ -282,9 +294,27 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: cacos (-1.5 + 0x1.fp-1025 i) == 3.141592653589793238462643383279502884197 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-1.5 + 0x1.fp-129 i) == 3.141592653589793238462643383279502884195 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-1.5 + 0x1.fp-16385 i) == 3.141592653589793238462643383279502884197 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: cacos (-1.5 - 0 i) == pi + 0.9624236501192068949955178268487368462704 i":
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: cacos (-1.5 - 0x1.fp-1025 i) == 3.141592653589793238462643383279502884197 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-1.5 - 0x1.fp-129 i) == 3.141592653589793238462643383279502884195 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-1.5 - 0x1.fp-16385 i) == 3.141592653589793238462643383279502884197 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Real part of: cacos (0.5 + +0 i) == 1.047197551196597746154214461093167628066 - 0 i":
 double: 1
 idouble: 1
@@ -303,6 +333,18 @@
 ifloat: 1
 ildouble: 2
 ldouble: 2
+Test "Imaginary part of: cacos (0x1.fp-1025 + 1.5 i) == 1.570796326794896619231321691639751442099 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (0x1.fp-1025 - 1.5 i) == 1.570796326794896619231321691639751442099 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (0x1.fp-129 + 1.5 i) == 1.570796326794896619231321691639751442097 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (0x1.fp-129 - 1.5 i) == 1.570796326794896619231321691639751442097 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: cacos (0x1.fp1023 + 0x1.fp1023 i) == 7.853981633974483096156608458198757210493e-1 - 7.107906849659093345062145442726115449315e2 i":
 double: 1
 idouble: 1
@@ -316,7 +358,25 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: cacos (1.5 + 0x1.fp-1025 i) == 4.819934639999230680322935210539402497827e-309 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (1.5 + 0x1.fp-129 i) == 2.546345110742945032959687790021055102355e-39 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (1.5 + 0x1.fp-16385 i) == 7.282957076134209141226696333885150260319e-4933 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: cacos (1.5 - 0 i) == +0 + 0.9624236501192068949955178268487368462704 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (1.5 - 0x1.fp-1025 i) == 4.819934639999230680322935210539402497827e-309 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (1.5 - 0x1.fp-129 i) == 2.546345110742945032959687790021055102355e-39 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (1.5 - 0x1.fp-16385 i) == 7.282957076134209141226696333885150260319e-4933 + 9.624236501192068949955178268487368462704e-1 i":
 ildouble: 1
 ldouble: 1
 
@@ -502,6 +562,18 @@
 Test "Imaginary part of: casin (-0 - 1.5 i) == -0 - 1.194763217287109304111930828519090523536 i":
 double: 1
 idouble: 1
+Test "Imaginary part of: casin (-0x1.fp-1025 + 1.5 i) == -2.989196569048182929051881765490354365918e-309 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (-0x1.fp-1025 - 1.5 i) == -2.989196569048182929051881765490354365918e-309 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (-0x1.fp-129 + 1.5 i) == -1.579176199917649005841160751101628985741e-39 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (-0x1.fp-129 - 1.5 i) == -1.579176199917649005841160751101628985741e-39 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: casin (-1.5 + +0 i) == -pi/2 + 0.9624236501192068949955178268487368462704 i":
 double: 1
 float: 1
@@ -509,9 +581,27 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: casin (-1.5 + 0x1.fp-1025 i) == -1.570796326794896619231321691639751442099 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.5 + 0x1.fp-129 i) == -1.570796326794896619231321691639751442096 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.5 + 0x1.fp-16385 i) == -1.570796326794896619231321691639751442099 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: casin (-1.5 - 0 i) == -pi/2 - 0.9624236501192068949955178268487368462704 i":
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: casin (-1.5 - 0x1.fp-1025 i) == -1.570796326794896619231321691639751442099 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.5 - 0x1.fp-129 i) == -1.570796326794896619231321691639751442096 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.5 - 0x1.fp-16385 i) == -1.570796326794896619231321691639751442099 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Real part of: casin (0.75 + 1.25 i) == 0.453276177638793913448921196101971749 + 1.13239363160530819522266333696834467 i":
 double: 1
 float: 1
@@ -524,6 +614,18 @@
 ifloat: 1
 ildouble: 2
 ldouble: 2
+Test "Imaginary part of: casin (0x1.fp-1025 + 1.5 i) == 2.989196569048182929051881765490354365918e-309 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (0x1.fp-1025 - 1.5 i) == 2.989196569048182929051881765490354365918e-309 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (0x1.fp-129 + 1.5 i) == 1.579176199917649005841160751101628985741e-39 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (0x1.fp-129 - 1.5 i) == 1.579176199917649005841160751101628985741e-39 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: casin (0x1.fp1023 + 0x1.fp1023 i) == 7.853981633974483096156608458198757210493e-1 + 7.107906849659093345062145442726115449315e2 i":
 double: 1
 idouble: 1
@@ -537,7 +639,25 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: casin (1.5 + 0x1.fp-1025 i) == 1.570796326794896619231321691639751442099 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.5 + 0x1.fp-129 i) == 1.570796326794896619231321691639751442096 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.5 + 0x1.fp-16385 i) == 1.570796326794896619231321691639751442099 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: casin (1.5 - 0 i) == pi/2 - 0.9624236501192068949955178268487368462704 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.5 - 0x1.fp-1025 i) == 1.570796326794896619231321691639751442099 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.5 - 0x1.fp-129 i) == 1.570796326794896619231321691639751442096 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.5 - 0x1.fp-16385 i) == 1.570796326794896619231321691639751442099 - 9.624236501192068949955178268487368462704e-1 i":
 ildouble: 1
 ldouble: 1
 
@@ -576,6 +696,24 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Real part of: casinh (-0x1.fp-1025 + 1.5 i) == -9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-1025 - 1.5 i) == -9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-129 + 1.5 i) == -9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442096 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-129 - 1.5 i) == -9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442096 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-16385 + 1.5 i) == -9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-16385 - 1.5 i) == -9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
 Test "Real part of: casinh (-1.0 + +0 i) == -0.8813735870195430252326093249797923090282 + +0 i":
 double: 2
 float: 1
@@ -595,11 +733,23 @@
 float: 1
 idouble: 2
 ifloat: 1
+Test "Real part of: casinh (-1.5 + 0x1.fp-1025 i) == -1.194763217287109304111930828519090523536 + 2.989196569048182929051881765490354365918e-309 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (-1.5 + 0x1.fp-129 i) == -1.194763217287109304111930828519090523536 + 1.579176199917649005841160751101628985741e-39 i":
+double: 1
+idouble: 1
 Test "Real part of: casinh (-1.5 - 0 i) == -1.194763217287109304111930828519090523536 - 0 i":
 double: 2
 float: 1
 idouble: 2
 ifloat: 1
+Test "Real part of: casinh (-1.5 - 0x1.fp-1025 i) == -1.194763217287109304111930828519090523536 - 2.989196569048182929051881765490354365918e-309 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (-1.5 - 0x1.fp-129 i) == -1.194763217287109304111930828519090523536 - 1.579176199917649005841160751101628985741e-39 i":
+double: 1
+idouble: 1
 Test "Real part of: casinh (-2 - 3 i) == -1.9686379257930962917886650952454982 - 0.96465850440760279204541105949953237 i":
 double: 5
 float: 1
@@ -638,6 +788,24 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Real part of: casinh (0x1.fp-1025 + 1.5 i) == 9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-1025 - 1.5 i) == 9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-129 + 1.5 i) == 9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442096 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-129 - 1.5 i) == 9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442096 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-16385 + 1.5 i) == 9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-16385 - 1.5 i) == 9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
 Test "Real part of: casinh (0x1.fp1023 + 0x1.fp1023 i) == 7.107906849659093345062145442726115449315e2 + 7.853981633974483096156608458198757210493e-1 i":
 double: 1
 idouble: 1
@@ -657,7 +825,19 @@
 Test "Real part of: casinh (1.5 + +0 i) == 1.194763217287109304111930828519090523536 + +0 i":
 double: 1
 idouble: 1
+Test "Real part of: casinh (1.5 + 0x1.fp-1025 i) == 1.194763217287109304111930828519090523536 + 2.989196569048182929051881765490354365918e-309 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (1.5 + 0x1.fp-129 i) == 1.194763217287109304111930828519090523536 + 1.579176199917649005841160751101628985741e-39 i":
+double: 1
+idouble: 1
 Test "Real part of: casinh (1.5 - 0 i) == 1.194763217287109304111930828519090523536 - 0 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (1.5 - 0x1.fp-1025 i) == 1.194763217287109304111930828519090523536 - 2.989196569048182929051881765490354365918e-309 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (1.5 - 0x1.fp-129 i) == 1.194763217287109304111930828519090523536 - 1.579176199917649005841160751101628985741e-39 i":
 double: 1
 idouble: 1
 

Modified: fsf/trunk/libc/sysdeps/unix/Makefile
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/Makefile (original)
+++ fsf/trunk/libc/sysdeps/unix/Makefile Fri Feb  1 00:01:55 2013
@@ -88,21 +88,10 @@
 	mv -f $@T $@
 endif
 
-# The $(bppfx)syscall.ob objects depend on s-proto-bp.d, which are
-# generated to specify dependencies generated BP stubs have on headers.
-# These deps use file names relative to a subdir, so don't
-# include them in the parent directory.
-ifneq (,$(filter $(unix-syscalls),$(routines) $(sysdep_routines) $(aux)))
-ifndef no_deps
--include $(common-objpfx)s-proto-bp.d
-endif
-endif
-
 $(common-objpfx)s-%.d: $(..)sysdeps/unix/s-%.S \
 		       $(wildcard $(+sysdep_dirs:%=%/syscalls.list))
 	$(+make-deps)
 
-common-generated += s-proto-bp.d
 postclean-generated += sysd-syscalls
 
 endif

Modified: fsf/trunk/libc/sysdeps/unix/make-syscalls.sh
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/make-syscalls.sh (original)
+++ fsf/trunk/libc/sysdeps/unix/make-syscalls.sh Fri Feb  1 00:01:55 2013
@@ -35,10 +35,6 @@
 # V: byte-per-page vector (3rd arg to mincore)
 # W: wait status, optionally-NULL pointer to int (e.g., 2nd arg of wait4)
 #
-
-ptr='[abBfFINpPsSWV]'	# all pointer keyletters
-int='[inv]'		# all scalar keyletters
-typ='[ifnNpP]'		# typed-arg keyletters: we capture type for use in thunk
 
 ##############################################################################
 
@@ -313,114 +309,4 @@
  ;;
  esac
 
-  case x"$callnum",$srcfile,$args in
-  x[_-],-,* | x*,*.[sS],*V*) ;;
-  x*,-,*$ptr* | x*,*.[sS],*$ptr*)
-
-    nv_weak=`for name in $weak; do
-		case $name in
-		*@*) ;;
-		*) echo $name;;
-	        esac; done`
-
-    # choose the name with the fewest leading underscores, preferably none
-    set `echo $strong $nv_weak |tr '@ \t' ' \n\n' |sort -r`
-    callname=$1
-
-    # convert signature string to individual numbered arg names
-    # e.g., i:ipbN -> i0 i1 p2 b3 N4
-    set `echo $args |
-	sed -e 's/^\(.\):\(.*\)/\2 <\10>/' \
-	    -e 's/^\([^ ]\)\(.*\)/\2 <\11>/' \
-	    -e 's/^\([^ ]\)\(.*\)/\2 <\12>/' \
-	    -e 's/^\([^ ]\)\(.*\)/\2 <\13>/' \
-	    -e 's/^\([^ ]\)\(.*\)/\2 <\14>/' \
-	    -e 's/^\([^ ]\)\(.*\)/\2 <\15>/' \
-	    -e 's/^\([^ ]\)\(.*\)/\2 <\16>/' \
-	    -e 's/^\([^ ]\)\(.*\)/\2 <\17>/' \
-	    -e 's/^\([^ ]\)\(.*\)/\2 <\18>/' \
-	    -e 's/^\([^ ]\)\(.*\)/\2 <\19>/'`
-    rtn=$1; shift
-    args=$*
-    arglist=`echo $* |sed 's/ /, /g'`
-
-    # The best way to understand what's going on here is to examine
-    # the output in BUILDDIR/sysd-syscalls.
-
-    # generate makefile envelope & rule head
-    echo "ifeq (,\$(filter $file,\$(bp-thunks)))"
-    echo "bp-thunks += $file"
-    echo "\$(objpfx)\$(bppfx)$file.ob: \$(common-objpfx)s-proto-bp.d"
-
-    # generate macro head
-    echo "	(echo '#define $callname(`echo $arglist | \
-	    sed -e 's/[<>]//g'`) `echo $rtn | \
-	    sed -e 's/<\('$typ'0\)>/\1v;/g' \
-		-e 's/<\(b0\)>/x0; extern char \1v;/g'` \\'; \\"
-
-    # generate extern decls of dummy variables for each arg
-    echo "	 echo '`echo $args | \
-	    sed -e 's/<\('$typ'[1-9]\)>/extern \1, \1v;/g' \
-		-e 's/<\([abBFIsSV][1-9]\)>/extern char \1v;/g' \
-		-e 's/<\([Wv][1-9]\)>/extern int \1v;/g'` \\'; \\"
-
-    # generate bounded-pointer thunk declarator
-    echo "	 echo '`echo $rtn | \
-	    sed -e 's/<\('$ptr'0\)>/__typeof (\1v) *__bounded/g' \
-		-e 's/<\('$int'0\)>/__typeof (\1v)/g'` BP_SYM ($strong) (`echo $arglist | \
-	    sed -e 's/<\('$ptr'[1-9]\)>/__typeof (\1v) *__bounded \1a/g' \
-		-e 's/<\('$int'[1-9]\)>/__typeof (\1v) \1a/g'`) { \\'; \\"
-
-    # generate extern primitive syscall declaration
-    echo "	 echo '  extern `echo $rtn | \
-	    sed -e 's/<\('$ptr'0\)>/__typeof (\1v) *__unbounded/g' \
-		-e 's/<\('$int'0\)>/__typeof (\1v)/g'` ($callname) (`echo $arglist | \
-	    sed -e 's/<\('$ptr'[1-9]\)>/__typeof (\1v) *__unbounded/g' \
-		-e 's/<\('$int'[1-9]\)>/__typeof (\1v)/g'`); \\'; \\"
-
-    # generate call the primtive system call, optionally wrapping bounds
-    # around the result if the signature's return keyletter is `b'.
-    echo "	 echo '  return `echo $rtn |
-	    sed -e 's/<b0>/BOUNDED_N (/' \
-		-e 's/<.0>//'`($callname) (`echo $arglist | \
-	    sed -e 's/<\(a[1-9]\)>/__ptrvalue (\1a)/g' \
-		-e 's/<\(n[1-9]\)>, <\(V[1-9]\)>/\1a, CHECK_N_PAGES (\2a, \1a)/g' \
-		-e 's/<\(b[1-9]\)>, <\(n[1-9]\)>/CHECK_N (\1a, \2a), \2a/g' \
-		-e 's/<\(b[1-9]\)>, <\(N[1-9]\)>/CHECK_N (\1a, *CHECK_1 (\2a)), __ptrvalue (\2a)/g' \
-		-e 's/<\(B[1-9]\)>, <\(n[1-9]\)>/CHECK_N_NULL_OK (\1a, \2a), \2a/g' \
-		-e 's/<\(B[1-9]\)>, <\(N[1-9]\)>/CHECK_N_NULL_OK (\1a, *CHECK_1 (\2a)), __ptrvalue (\2a)/g' \
-		-e 's/<\(f[1-9]\)>/CHECK_N (\1a, 2)/g' \
-		-e 's/<\(i[1-9]\)>, <\(F[1-9]\)>/\1a, CHECK_FCNTL (\2a, \1a)/g' \
-		-e 's/<\(i[1-9]\)>, <\(I[1-9]\)>/\1a, CHECK_IOCTL (\2a, \1a)/g' \
-		-e 's/<\(p[1-9]\)>/CHECK_1 (\1a)/g' \
-		-e 's/<\([PW][1-9]\)>/CHECK_1_NULL_OK (\1a)/g' \
-		-e 's/<\(s[1-9]\)>/CHECK_STRING (\1a)/g' \
-		-e 's/<\(S[1-9]\)>/CHECK_STRING_NULL_OK (\1a)/g' \
-		-e 's/<\([ivn][1-9]\)>/\1a/g'`)`echo $rtn $args |
-	    sed -e 's/<b0>.*<\(n[1-9]\)>.*/, \1a)/' \
-		-e 's/<.0>.*//'`; \\'; \\"
-
-    echo "	 echo '} \\'; \\"
-
-    echo "	 echo 'libc_hidden_def (BP_SYM ($strong)) \\'; \\"
-
-    # generate thunk aliases
-    for name in $nv_weak; do
-      echo "	 echo 'weak_alias (BP_SYM ($strong), BP_SYM ($name)) \\'; \\"
-      echo "	 echo 'libc_hidden_weak (BP_SYM ($name)) \\'; \\"
-    done
-
-    # wrap up
-    echo "\
-	 echo ''; \\
-	 echo '#include <bp-thunks.h>'; \\
-	) | \$(COMPILE.c) -x c -o \$@ -"
-### Use this for debugging intermediate output:
-### 	) >\$(@:.ob=.c)
-### 	\$(subst -c,-E,\$(COMPILE.c)) -o \$(@:.ob=.ib) \$(@:.ob=.c)
-### 	\$(COMPILE.c) -x cpp-output -o \$@ \$(@:.ob=.ib)"
-    echo endif
-    ;;
-  esac
-
 done

Removed: fsf/trunk/libc/sysdeps/unix/s-proto-bp.S
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/s-proto-bp.S (original)
+++ fsf/trunk/libc/sysdeps/unix/s-proto-bp.S (removed)
@@ -1,4 +1,0 @@
-/* This file exists just to have its dependencies determined.
-   Those dependencies are then used for the bp thunk objects.  */
-
-#include <bp-thunks.h>

Removed: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bp-thunks.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bp-thunks.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/bp-thunks.h (removed)
@@ -1,4 +1,0 @@
-#ifndef __ASSEMBLER__
-# include <sysdeps/generic/bp-thunks.h>
-# include <sys/vm86.h>
-#endif

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/semctl.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/semctl.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/i386/semctl.c Fri Feb  1 00:01:55 2013
@@ -49,9 +49,6 @@
   struct __old_semid_ds *__old_buf;
 };
 
-#include <bp-checks.h>
-#include <bp-semctl.h>		/* definition of CHECK_SEMCTL needs union semum */
-
 /* Return identifier for array of NSEMS semaphores associated with
    KEY.  */
 #if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
@@ -75,7 +72,7 @@
   va_end (ap);
 
   return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd,
-			 CHECK_SEMCTL (&arg, semid, cmd));
+			 &arg);
 }
 compat_symbol (libc, __old_semctl, semctl, GLIBC_2_0);
 #endif
@@ -94,7 +91,7 @@
   va_end (ap);
 
   return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64,
-			 CHECK_SEMCTL (&arg, semid, cmd | __IPC_64));
+			 &arg);
 }
 
 versioned_symbol (libc, __new_semctl, semctl, GLIBC_2_2);

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/semctl.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/semctl.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/semctl.c Fri Feb  1 00:01:55 2013
@@ -50,9 +50,6 @@
   struct __old_semid_ds *__old_buf;
 };
 
-#include <bp-checks.h>
-#include <bp-semctl.h>		/* definition of CHECK_SEMCTL needs union semum */
-
 /* Return identifier for array of NSEMS semaphores associated with
    KEY.  */
 #if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
@@ -91,7 +88,7 @@
   va_end (ap);
 
   return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd,
-			 CHECK_SEMCTL (&arg, semid, cmd));
+			 &arg);
 }
 compat_symbol (libc, __old_semctl, semctl, GLIBC_2_0);
 #endif
@@ -126,7 +123,7 @@
 
 #if __ASSUME_IPC64 > 0
   return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64,
-			 CHECK_SEMCTL (&arg, semid, cmd | __IPC_64));
+			 &arg);
 #else
   switch (cmd)
     {
@@ -136,7 +133,7 @@
       break;
     default:
       return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd,
-			     CHECK_SEMCTL (&arg, semid, cmd));
+			     &arg);
     }
 
   {
@@ -147,7 +144,7 @@
     /* Unfortunately there is no way how to find out for sure whether
        we should use old or new semctl.  */
     result = INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64,
-			     CHECK_SEMCTL (&arg, semid, cmd | __IPC_64));
+			     &arg);
     if (result != -1 || errno != EINVAL)
       return result;
 
@@ -167,7 +164,7 @@
 	  }
       }
     result = INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd,
-			     CHECK_SEMCTL (&arg, semid, cmd));
+			     &arg);
     if (result != -1 && cmd != IPC_SET)
       {
 	memset(buf, 0, sizeof(*buf));

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sigpending.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sigpending.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sigpending.c Fri Feb  1 00:01:55 2013
@@ -21,7 +21,6 @@
 
 #include <sysdep.h>
 #include <sys/syscall.h>
-#include <bp-checks.h>
 
 #include <kernel-features.h>
 
@@ -32,5 +31,5 @@
 sigpending (set)
      sigset_t *set;
 {
-  return INLINE_SYSCALL (rt_sigpending, 2, CHECK_SIGSET (set), _NSIG / 8);
+  return INLINE_SYSCALL (rt_sigpending, 2, set, _NSIG / 8);
 }

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sigprocmask.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sigprocmask.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sigprocmask.c Fri Feb  1 00:01:55 2013
@@ -22,7 +22,6 @@
 
 #include <sysdep.h>
 #include <sys/syscall.h>
-#include <bp-checks.h>
 
 #include <kernel-features.h>
 
@@ -55,7 +54,6 @@
     }
 #endif
 
-  return INLINE_SYSCALL (rt_sigprocmask, 4, how, CHECK_SIGSET_NULL_OK (set),
-			 CHECK_SIGSET_NULL_OK (oset), _NSIG / 8);
+  return INLINE_SYSCALL (rt_sigprocmask, 4, how, set, oset, _NSIG / 8);
 }
 weak_alias (__sigprocmask, sigprocmask)

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sigsuspend.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sigsuspend.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sigsuspend.c Fri Feb  1 00:01:55 2013
@@ -21,7 +21,6 @@
 
 #include <sysdep-cancel.h>
 #include <sys/syscall.h>
-#include <bp-checks.h>
 
 #include <kernel-features.h>
 
@@ -29,7 +28,7 @@
 static inline int __attribute__ ((always_inline))
 do_sigsuspend (const sigset_t *set)
 {
-  return INLINE_SYSCALL (rt_sigsuspend, 2, CHECK_SIGSET (set), _NSIG / 8);
+  return INLINE_SYSCALL (rt_sigsuspend, 2, set, _NSIG / 8);
 }
 
 /* Change the set of blocked signals to SET,

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sigtimedwait.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sigtimedwait.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sigtimedwait.c Fri Feb  1 00:01:55 2013
@@ -51,7 +51,7 @@
 
     /* XXX The size argument hopefully will have to be changed to the
        real size of the user-level sigset_t.  */
-  int result = INLINE_SYSCALL (rt_sigtimedwait, 4, CHECK_SIGSET (set),
+  int result = INLINE_SYSCALL (rt_sigtimedwait, 4, set,
 			       CHECK_1 (info), timeout, _NSIG / 8);
 
   /* The kernel generates a SI_TKILL code in si_code in case tkill is

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sigwait.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sigwait.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sigwait.c Fri Feb  1 00:01:55 2013
@@ -23,7 +23,6 @@
 
 #include <sysdep-cancel.h>
 #include <sys/syscall.h>
-#include <bp-checks.h>
 
 #ifdef __NR_rt_sigtimedwait
 
@@ -58,7 +57,7 @@
 #ifdef INTERNAL_SYSCALL
   INTERNAL_SYSCALL_DECL (err);
   do
-    ret = INTERNAL_SYSCALL (rt_sigtimedwait, err, 4, CHECK_SIGSET (set),
+    ret = INTERNAL_SYSCALL (rt_sigtimedwait, err, 4, set,
 			    NULL, NULL, _NSIG / 8);
   while (INTERNAL_SYSCALL_ERROR_P (ret, err)
 	 && INTERNAL_SYSCALL_ERRNO (ret, err) == EINTR);
@@ -71,8 +70,7 @@
     ret = INTERNAL_SYSCALL_ERRNO (ret, err);
 #else
   do
-    ret = INLINE_SYSCALL (rt_sigtimedwait, 4, CHECK_SIGSET (set),
-			  NULL, NULL, _NSIG / 8);
+    ret = INLINE_SYSCALL (rt_sigtimedwait, 4, set, NULL, NULL, _NSIG / 8);
   while (ret == -1 && errno == EINTR);
   if (ret != -1)
     {

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sigwaitinfo.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sigwaitinfo.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sigwaitinfo.c Fri Feb  1 00:01:55 2013
@@ -52,7 +52,7 @@
 
   /* XXX The size argument hopefully will have to be changed to the
      real size of the user-level sigset_t.  */
-  int result = INLINE_SYSCALL (rt_sigtimedwait, 4, CHECK_SIGSET (set),
+  int result = INLINE_SYSCALL (rt_sigtimedwait, 4, set,
 			       CHECK_1 (info), NULL, _NSIG / 8);
 
   /* The kernel generates a SI_TKILL code in si_code in case tkill is

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c Fri Feb  1 00:01:55 2013
@@ -50,9 +50,6 @@
   struct __old_semid_ds *__old_buf;
 };
 
-#include <bp-checks.h>
-#include <bp-semctl.h>		/* definition of CHECK_SEMCTL needs union semum */
-
 /* Return identifier for array of NSEMS semaphores associated with
    KEY.  */
 #if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)
@@ -87,7 +84,7 @@
     }
 
   return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd,
-			 CHECK_SEMCTL (&arg, semid, cmd));
+			 &arg);
 }
 compat_symbol (libc, __old_semctl, semctl, GLIBC_2_0);
 #endif
@@ -117,7 +114,7 @@
     }
 
   return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd | __IPC_64,
-			 CHECK_SEMCTL (&arg, semid, cmd | __IPC_64));
+			 &arg);
 }
 
 versioned_symbol (libc, __new_semctl, semctl, GLIBC_2_2);

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c Fri Feb  1 00:01:55 2013
@@ -33,9 +33,6 @@
   struct seminfo *__buf;	/* buffer for IPC_INFO */
 };
 
-#include <bp-checks.h>
-#include <bp-semctl.h>		/* definition of CHECK_SEMCTL needs union semum */
-
 /* Return identifier for array of NSEMS semaphores associated with
    KEY.  */
 
@@ -53,5 +50,5 @@
   va_end (ap);
 
   return INLINE_SYSCALL (ipc, 5, IPCOP_semctl, semid, semnum, cmd,
-			 CHECK_SEMCTL (&arg, semid, cmd)->array);
+			 arg.array);
 }

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c Fri Feb  1 00:01:55 2013
@@ -21,7 +21,6 @@
 
 #include <sysdep.h>
 #include <sys/syscall.h>
-#include <bp-checks.h>
 
 /* Change the set of blocked signals to SET,
    wait until a signal arrives, and restore the set of blocked signals.  */
@@ -31,5 +30,5 @@
 {
   /* XXX The size argument hopefully will have to be changed to the
      real size of the user-level sigset_t.  */
-  return INLINE_SYSCALL (rt_sigpending, 2, CHECK_SIGSET (set), _NSIG / 8);
+  return INLINE_SYSCALL (rt_sigpending, 2, set, _NSIG / 8);
 }

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c Fri Feb  1 00:01:55 2013
@@ -21,7 +21,6 @@
 
 #include <sysdep.h>
 #include <sys/syscall.h>
-#include <bp-checks.h>
 
 /* Get and/or change the set of blocked signals.  */
 int
@@ -32,7 +31,6 @@
 {
   /* XXX The size argument hopefully will have to be changed to the
      real size of the user-level sigset_t.  */
-  return INLINE_SYSCALL (rt_sigprocmask, 4, how, CHECK_SIGSET (set),
-			 CHECK_SIGSET_NULL_OK (oset), _NSIG / 8);
+  return INLINE_SYSCALL (rt_sigprocmask, 4, how, set, oset, _NSIG / 8);
 }
 weak_alias (__sigprocmask, sigprocmask)

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sigpending.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sigpending.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sigpending.c Fri Feb  1 00:01:55 2013
@@ -24,7 +24,6 @@
 
 #include <sysdep.h>
 #include <sys/syscall.h>
-#include <bp-checks.h>
 
 /* Change the set of blocked signals to SET,
    wait until a signal arrives, and restore the set of blocked signals.  */
@@ -34,5 +33,5 @@
 {
   /* XXX The size argument hopefully will have to be changed to the
      real size of the user-level sigset_t.  */
-  return INLINE_SYSCALL (rt_sigpending, 2, CHECK_SIGSET (set), _NSIG / 8);
+  return INLINE_SYSCALL (rt_sigpending, 2, set, _NSIG / 8);
 }

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/x86_64/sigprocmask.c Fri Feb  1 00:01:55 2013
@@ -25,7 +25,6 @@
 
 #include <sysdep.h>
 #include <sys/syscall.h>
-#include <bp-checks.h>
 
 /* Get and/or change the set of blocked signals.  */
 int
@@ -37,7 +36,6 @@
 
   /* XXX The size argument hopefully will have to be changed to the
      real size of the user-level sigset_t.  */
-  return INLINE_SYSCALL (rt_sigprocmask, 4, how, CHECK_SIGSET (set),
-			CHECK_SIGSET_NULL_OK (oset), _NSIG / 8);
+  return INLINE_SYSCALL (rt_sigprocmask, 4, how, set, oset, _NSIG / 8);
 }
 weak_alias (__sigprocmask, sigprocmask)

Modified: fsf/trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps
==============================================================================
--- fsf/trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps (original)
+++ fsf/trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps Fri Feb  1 00:01:55 2013
@@ -244,6 +244,24 @@
 Test "Imaginary part of: cacos (-0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i":
 double: 1
 idouble: 1
+Test "Imaginary part of: cacos (-0x1.fp-1025 + 1.5 i) == 1.570796326794896619231321691639751442099 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (-0x1.fp-1025 - 1.5 i) == 1.570796326794896619231321691639751442099 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Real part of: cacos (-0x1.fp-129 + 1.5 i) == 1.570796326794896619231321691639751442100 - 1.194763217287109304111930828519090523536 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: cacos (-0x1.fp-129 + 1.5 i) == 1.570796326794896619231321691639751442100 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Real part of: cacos (-0x1.fp-129 - 1.5 i) == 1.570796326794896619231321691639751442100 + 1.194763217287109304111930828519090523536 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: cacos (-0x1.fp-129 - 1.5 i) == 1.570796326794896619231321691639751442100 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
 Test "Real part of: cacos (-1.0 + 0x1p50 i) == 1.570796326794897507409741391764983781004 - 3.535050620855721078027883819436759661753e1 i":
 float: 1
 ifloat: 1
@@ -257,9 +275,27 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: cacos (-1.5 + 0x1.fp-1025 i) == 3.141592653589793238462643383279502884197 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-1.5 + 0x1.fp-129 i) == 3.141592653589793238462643383279502884195 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-1.5 + 0x1.fp-16385 i) == 3.141592653589793238462643383279502884197 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: cacos (-1.5 - 0 i) == pi + 0.9624236501192068949955178268487368462704 i":
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: cacos (-1.5 - 0x1.fp-1025 i) == 3.141592653589793238462643383279502884197 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-1.5 - 0x1.fp-129 i) == 3.141592653589793238462643383279502884195 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-1.5 - 0x1.fp-16385 i) == 3.141592653589793238462643383279502884197 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Real part of: cacos (-2 - 3 i) == 2.1414491111159960199416055713254211 + 1.9833870299165354323470769028940395 i":
 float: 1
 ifloat: 1
@@ -281,6 +317,18 @@
 ifloat: 1
 ildouble: 2
 ldouble: 2
+Test "Imaginary part of: cacos (0x1.fp-1025 + 1.5 i) == 1.570796326794896619231321691639751442099 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (0x1.fp-1025 - 1.5 i) == 1.570796326794896619231321691639751442099 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (0x1.fp-129 + 1.5 i) == 1.570796326794896619231321691639751442097 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (0x1.fp-129 - 1.5 i) == 1.570796326794896619231321691639751442097 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: cacos (0x1.fp1023 + 0x1.fp1023 i) == 7.853981633974483096156608458198757210493e-1 - 7.107906849659093345062145442726115449315e2 i":
 double: 1
 idouble: 1
@@ -294,7 +342,25 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: cacos (1.5 + 0x1.fp-1025 i) == 4.819934639999230680322935210539402497827e-309 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (1.5 + 0x1.fp-129 i) == 2.546345110742945032959687790021055102355e-39 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (1.5 + 0x1.fp-16385 i) == 7.282957076134209141226696333885150260319e-4933 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: cacos (1.5 - 0 i) == +0 + 0.9624236501192068949955178268487368462704 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (1.5 - 0x1.fp-1025 i) == 4.819934639999230680322935210539402497827e-309 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (1.5 - 0x1.fp-129 i) == 2.546345110742945032959687790021055102355e-39 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (1.5 - 0x1.fp-16385 i) == 7.282957076134209141226696333885150260319e-4933 + 9.624236501192068949955178268487368462704e-1 i":
 ildouble: 1
 ldouble: 1
 
@@ -460,6 +526,18 @@
 Test "Imaginary part of: casin (-0 - 1.5 i) == -0 - 1.194763217287109304111930828519090523536 i":
 double: 1
 idouble: 1
+Test "Imaginary part of: casin (-0x1.fp-1025 + 1.5 i) == -2.989196569048182929051881765490354365918e-309 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (-0x1.fp-1025 - 1.5 i) == -2.989196569048182929051881765490354365918e-309 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (-0x1.fp-129 + 1.5 i) == -1.579176199917649005841160751101628985741e-39 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (-0x1.fp-129 - 1.5 i) == -1.579176199917649005841160751101628985741e-39 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: casin (-1.5 + +0 i) == -pi/2 + 0.9624236501192068949955178268487368462704 i":
 double: 1
 float: 1
@@ -467,9 +545,27 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: casin (-1.5 + 0x1.fp-1025 i) == -1.570796326794896619231321691639751442099 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.5 + 0x1.fp-129 i) == -1.570796326794896619231321691639751442096 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.5 + 0x1.fp-16385 i) == -1.570796326794896619231321691639751442099 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: casin (-1.5 - 0 i) == -pi/2 - 0.9624236501192068949955178268487368462704 i":
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: casin (-1.5 - 0x1.fp-1025 i) == -1.570796326794896619231321691639751442099 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.5 - 0x1.fp-129 i) == -1.570796326794896619231321691639751442096 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (-1.5 - 0x1.fp-16385 i) == -1.570796326794896619231321691639751442099 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Real part of: casin (0.75 + 1.25 i) == 0.453276177638793913448921196101971749 + 1.13239363160530819522266333696834467 i":
 double: 1
 float: 1
@@ -482,6 +578,18 @@
 ifloat: 1
 ildouble: 2
 ldouble: 2
+Test "Imaginary part of: casin (0x1.fp-1025 + 1.5 i) == 2.989196569048182929051881765490354365918e-309 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (0x1.fp-1025 - 1.5 i) == 2.989196569048182929051881765490354365918e-309 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (0x1.fp-129 + 1.5 i) == 1.579176199917649005841160751101628985741e-39 + 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: casin (0x1.fp-129 - 1.5 i) == 1.579176199917649005841160751101628985741e-39 - 1.194763217287109304111930828519090523536 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: casin (0x1.fp1023 + 0x1.fp1023 i) == 7.853981633974483096156608458198757210493e-1 + 7.107906849659093345062145442726115449315e2 i":
 double: 1
 idouble: 1
@@ -495,7 +603,25 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Imaginary part of: casin (1.5 + 0x1.fp-1025 i) == 1.570796326794896619231321691639751442099 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.5 + 0x1.fp-129 i) == 1.570796326794896619231321691639751442096 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.5 + 0x1.fp-16385 i) == 1.570796326794896619231321691639751442099 + 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
 Test "Imaginary part of: casin (1.5 - 0 i) == pi/2 - 0.9624236501192068949955178268487368462704 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.5 - 0x1.fp-1025 i) == 1.570796326794896619231321691639751442099 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.5 - 0x1.fp-129 i) == 1.570796326794896619231321691639751442096 - 9.624236501192068949955178268487368462704e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: casin (1.5 - 0x1.fp-16385 i) == 1.570796326794896619231321691639751442099 - 9.624236501192068949955178268487368462704e-1 i":
 ildouble: 1
 ldouble: 1
 
@@ -534,6 +660,24 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Real part of: casinh (-0x1.fp-1025 + 1.5 i) == -9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-1025 - 1.5 i) == -9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-129 + 1.5 i) == -9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442096 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-129 - 1.5 i) == -9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442096 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-16385 + 1.5 i) == -9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (-0x1.fp-16385 - 1.5 i) == -9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
 Test "Real part of: casinh (-1.0 + +0 i) == -0.8813735870195430252326093249797923090282 + +0 i":
 double: 2
 float: 1
@@ -553,11 +697,23 @@
 float: 1
 idouble: 2
 ifloat: 1
+Test "Real part of: casinh (-1.5 + 0x1.fp-1025 i) == -1.194763217287109304111930828519090523536 + 2.989196569048182929051881765490354365918e-309 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (-1.5 + 0x1.fp-129 i) == -1.194763217287109304111930828519090523536 + 1.579176199917649005841160751101628985741e-39 i":
+double: 1
+idouble: 1
 Test "Real part of: casinh (-1.5 - 0 i) == -1.194763217287109304111930828519090523536 - 0 i":
 double: 2
 float: 1
 idouble: 2
 ifloat: 1
+Test "Real part of: casinh (-1.5 - 0x1.fp-1025 i) == -1.194763217287109304111930828519090523536 - 2.989196569048182929051881765490354365918e-309 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (-1.5 - 0x1.fp-129 i) == -1.194763217287109304111930828519090523536 - 1.579176199917649005841160751101628985741e-39 i":
+double: 1
+idouble: 1
 Test "Real part of: casinh (-2 - 3 i) == -1.9686379257930962917886650952454982 - 0.96465850440760279204541105949953237 i":
 double: 5
 float: 1
@@ -592,6 +748,24 @@
 ifloat: 1
 ildouble: 1
 ldouble: 1
+Test "Real part of: casinh (0x1.fp-1025 + 1.5 i) == 9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-1025 - 1.5 i) == 9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-129 + 1.5 i) == 9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442096 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-129 - 1.5 i) == 9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442096 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-16385 + 1.5 i) == 9.624236501192068949955178268487368462704e-1 + 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: casinh (0x1.fp-16385 - 1.5 i) == 9.624236501192068949955178268487368462704e-1 - 1.570796326794896619231321691639751442099 i":
+ildouble: 1
+ldouble: 1
 Test "Real part of: casinh (0x1.fp1023 + 0x1.fp1023 i) == 7.107906849659093345062145442726115449315e2 + 7.853981633974483096156608458198757210493e-1 i":
 double: 1
 idouble: 1
@@ -611,7 +785,19 @@
 Test "Real part of: casinh (1.5 + +0 i) == 1.194763217287109304111930828519090523536 + +0 i":
 double: 1
 idouble: 1
+Test "Real part of: casinh (1.5 + 0x1.fp-1025 i) == 1.194763217287109304111930828519090523536 + 2.989196569048182929051881765490354365918e-309 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (1.5 + 0x1.fp-129 i) == 1.194763217287109304111930828519090523536 + 1.579176199917649005841160751101628985741e-39 i":
+double: 1
+idouble: 1
 Test "Real part of: casinh (1.5 - 0 i) == 1.194763217287109304111930828519090523536 - 0 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (1.5 - 0x1.fp-1025 i) == 1.194763217287109304111930828519090523536 - 2.989196569048182929051881765490354365918e-309 i":
+double: 1
+idouble: 1
+Test "Real part of: casinh (1.5 - 0x1.fp-129 i) == 1.194763217287109304111930828519090523536 - 1.579176199917649005841160751101628985741e-39 i":
 double: 1
 idouble: 1
 

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