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

[Commits] r23127 - in /fsf/trunk/libc: ./ benchtests/ intl/ math/ ports/ ports/sysdeps/aarch64/ ports/sysdeps/alpha/fpu/ ports/sysdeps...



Author: eglibc
Date: Thu May 23 00:02:06 2013
New Revision: 23127

Log:
Import glibc-mainline for 2013-05-23

Added:
    fsf/trunk/libc/benchtests/acos-inputs
    fsf/trunk/libc/benchtests/acosh-inputs
    fsf/trunk/libc/benchtests/asin-inputs
    fsf/trunk/libc/benchtests/asinh-inputs
    fsf/trunk/libc/benchtests/atanh-inputs
    fsf/trunk/libc/benchtests/cosh-inputs
    fsf/trunk/libc/benchtests/log-inputs
    fsf/trunk/libc/benchtests/sinh-inputs
    fsf/trunk/libc/benchtests/tanh-inputs
Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/NEWS
    fsf/trunk/libc/benchtests/Makefile
    fsf/trunk/libc/intl/dcigettext.c
    fsf/trunk/libc/intl/loadmsgcat.c
    fsf/trunk/libc/math/gen-libm-test.pl
    fsf/trunk/libc/math/libm-test.inc
    fsf/trunk/libc/ports/ChangeLog.aarch64
    fsf/trunk/libc/ports/ChangeLog.alpha
    fsf/trunk/libc/ports/ChangeLog.arm
    fsf/trunk/libc/ports/ChangeLog.hppa
    fsf/trunk/libc/ports/ChangeLog.ia64
    fsf/trunk/libc/ports/ChangeLog.m68k
    fsf/trunk/libc/ports/ChangeLog.microblaze
    fsf/trunk/libc/ports/ChangeLog.mips
    fsf/trunk/libc/ports/ChangeLog.powerpc
    fsf/trunk/libc/ports/ChangeLog.tile
    fsf/trunk/libc/ports/sysdeps/aarch64/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/alpha/fpu/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/arm/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/hppa/fpu/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/ia64/fpu/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/m68k/coldfire/fpu/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/microblaze/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/mips/mips32/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/mips/mips64/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/powerpc/nofpu/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/tile/libm-test-ulps
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/alpha/bits/siginfo.h
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/bits/siginfo.h
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/siginfo.h
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/tile/bits/siginfo.h
    fsf/trunk/libc/sysdeps/i386/fpu/libm-test-ulps
    fsf/trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps
    fsf/trunk/libc/sysdeps/s390/fpu/libm-test-ulps
    fsf/trunk/libc/sysdeps/sh/sh4/fpu/libm-test-ulps
    fsf/trunk/libc/sysdeps/sparc/fpu/libm-test-ulps
    fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/siginfo.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/siginfo.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/x86/bits/siginfo.h
    fsf/trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Thu May 23 00:02:06 2013
@@ -1,3 +1,135 @@
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* math/gen-libm-test.pl (parse_args): Output only string of
+	arguments as text for test name, not full call or descriptions of
+	tests for extra outputs.
+	(generate_testfile): Do not pass function name to parse_args.
+	Generate this_func variable from START.
+	* math/libm-test.inc (struct test_f_f_data): Rename test_name
+	field to arg_str.
+	(struct test_ff_f_data): Likewise.
+	(test_ff_f_data_nexttoward): Likewise.
+	(struct test_fi_f_data): Likewise.
+	(struct test_fl_f_data): Likewise.
+	(struct test_if_f_data): Likewise.
+	(struct test_fff_f_data): Likewise.
+	(struct test_c_f_data): Likewise.
+	(struct test_f_f1_data): Likewise.  Remove field extra_name.
+	(struct test_fF_f1_data): Likewise.
+	(struct test_ffI_f1_data): Likewise.
+	(struct test_c_c_data): Rename test_name field to arg_str.
+	(struct test_cc_c_data): Likewise.
+	(struct test_f_i_data): Likewise.
+	(struct test_ff_i_data): Likewise.
+	(struct test_f_l_data): Likewise.
+	(struct test_f_L_data): Likewise.
+	(struct test_fFF_11_data): Likewise.  Remove fields extra1_name
+	and extra2_name.
+	(COMMON_TEST_SETUP): New macro.
+	(EXTRA_OUTPUT_TEST_SETUP): Likewise.
+	(COMMON_TEST_CLEANUP): Likewise.
+	(EXTRA_OUTPUT_TEST_CLEANUP): Likewise.
+	(RUN_TEST_f_f): Take argument string.  Call new setup and cleanup
+	macros.
+	(RUN_TEST_LOOP_f_f): Update call to RUN_TEST_f_f.
+	(RUN_TEST_2_f): Take argument string.  Call new setup and cleanup
+	macros.
+	(RUN_TEST_LOOP_2_f): Update call to RUN_TEST_2_f.
+	(RUN_TEST_fff_f): Take argument string.  Call new setup and
+	cleanup macros.
+	(RUN_TEST_LOOP_fff_f): Update call to RUN_TEST_fff_f.
+	(RUN_TEST_c_f): Take argument string.  Call new setup and cleanup
+	macros.
+	(RUN_TEST_LOOP_c_f): Update call to RUN_TEST_c_f.
+	(RUN_TEST_f_f1): Take argument string.  Call new setup and cleanup
+	macros.
+	(RUN_TEST_LOOP_f_f1): Update call to RUN_TEST_f_f1.
+	(RUN_TEST_fF_f1): Take argument string.  Call new setup and
+	cleanup macros.
+	(RUN_TEST_LOOP_fF_f1): Update call to RUN_TEST_fF_f1.
+	(RUN_TEST_fI_f1): Take argument string.  Call new setup and
+	cleanup macros.
+	(RUN_TEST_LOOP_fI_f1): Update call to RUN_TEST_fI_f1.
+	(RUN_TEST_ffI_f1): Take argument string.  Call new setup and
+	cleanup macros.
+	(RUN_TEST_LOOP_ffI_f1): Update call to RUN_TEST_ffI_f1.
+	(RUN_TEST_c_c): Take argument string.  Call new setup and cleanup
+	macros.
+	(RUN_TEST_LOOP_c_c): Update call to RUN_TEST_c_c.
+	(RUN_TEST_cc_c): Take argument string.  Call new setup and cleanup
+	macros.
+	(RUN_TEST_LOOP_cc_c): Update call to RUN_TEST_cc_c.
+	(RUN_TEST_f_i): Take argument string.  Call new setup and cleanup
+	macros.
+	(RUN_TEST_LOOP_f_i): Update call to RUN_TEST_f_i.
+	(RUN_TEST_f_i_tg): Take argument string.  Call new setup and
+	cleanup macros.
+	(RUN_TEST_LOOP_f_i_tg): Update call to RUN_TEST_f_i_tg.
+	(RUN_TEST_ff_i_tg): Take argument string.  Call new setup and
+	cleanup macros.
+	(RUN_TEST_LOOP_ff_i_tg): Update call to RUN_TEST_ff_i_tg.
+	(RUN_TEST_f_b): Take argument string.  Call new setup and cleanup
+	macros.
+	(RUN_TEST_LOOP_f_b): Update call to RUN_TEST_f_b.
+	(RUN_TEST_f_b_tg): Take argument string.  Call new setup and
+	cleanup macros.
+	(RUN_TEST_LOOP_f_b_tg): Update call to RUN_TEST_f_b_tg.
+	(RUN_TEST_f_l): Take argument string.  Call new setup and cleanup
+	macros.
+	(RUN_TEST_LOOP_f_l): Update call to RUN_TEST_f_l.
+	(RUN_TEST_f_L): Take argument string.  Call new setup and cleanup
+	macros.
+	(RUN_TEST_LOOP_f_L): Update call to RUN_TEST_f_L.
+	(RUN_TEST_fFF_11): Take argument string.  Call new setup and
+	cleanup macros.
+	(RUN_TEST_LOOP_fFF_11): Update call to RUN_TEST_fFF_11.
+
+2013-05-22  Edjunior Barbosa Machado  <emachado@xxxxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/bits/siginfo.h (siginfo_t): Add si_addr_lsb
+	to _sifields.sigfault.
+	(si_addr_lsb): Define new macro.
+	(BUS_MCEERR_AR, BUS_MCEERR_AO): Define new values.
+	* sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
+	* sysdeps/unix/sysv/linux/x86/bits/siginfo.h: Likewise.
+
+2013-05-03  Carlos O'Donell  <carlos at redhat.com>
+
+	[BZ #15441]
+	* intl/dcigettext.c (DCIGETTEXT): Skip translating if _nl_find_msg
+	returns -1.
+	(_nl_find_msg): Return -1 if recursive call returned -1. If newmem is
+	null return -1.
+	* intl/loadmsgcat.c (_nl_load_domain): If _nl_find_msg returns -1 abort
+	loading the domain.
+
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* math/gen-libm-test.pl (parse_args): Do not include expected
+	result in test name.
+	* sysdeps/i386/fpu/libm-test-ulps: Update test names.
+	* sysdeps/powerpc/fpu/libm-test-ulps: Likewise.
+	* sysdeps/s390/fpu/libm-test-ulps: Likewise.
+	* sysdeps/sh/sh4/fpu/libm-test-ulps: Likewise.
+	* sysdeps/sparc/fpu/libm-test-ulps: Likewise.
+	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-05-22  Siddhesh Poyarekar  <siddhesh@xxxxxxxxxx>
+
+	* benchtests/Makefile: Sort function entries.
+
+	* benchtests/Makefile (bench): Add asin, acos, sinh, cosh,
+	tanh, asinh, acosh, atanh.
+	* benchtests/acos-inputs: New file.
+	* benchtests/acosh-inputs: New file.
+	* benchtests/asin-inputs: New file.
+	* benchtests/asinh-inputs: New file.
+	* benchtests/atanh-inputs: New file.
+	* benchtests/cosh-inputs: New file.
+	* benchtests/log-inputs: New file.
+	* benchtests/sinh-inputs: New file.
+	* benchtests/tanh-inputs: New file.
+
 2013-05-21  Dmitry V. Levin  <ldv@xxxxxxxxxxxx>
 
 	[BZ #15339]

Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Thu May 23 00:02:06 2013
@@ -17,8 +17,8 @@
   15085, 15086, 15160, 15214, 15221, 15232, 15234, 15283, 15285, 15287,
   15304, 15305, 15307, 15309, 15327, 15330, 15335, 15336, 15337, 15339,
   15342, 15346, 15359, 15361, 15366, 15380, 15394, 15395, 15405, 15406,
-  15409, 15416, 15418, 15419, 15423, 15424, 15426, 15429, 15442, 15448,
-  15480, 15485, 15488, 15490, 15493, 15497, 15506.
+  15409, 15416, 15418, 15419, 15423, 15424, 15426, 15429, 15441, 15442,
+  15448, 15480, 15485, 15488, 15490, 15493, 15497, 15506.
 
 * CVE-2013-0242 Buffer overrun in regexp matcher has been fixed (Bugzilla
   #15078).

Modified: fsf/trunk/libc/benchtests/Makefile
==============================================================================
--- fsf/trunk/libc/benchtests/Makefile (original)
+++ fsf/trunk/libc/benchtests/Makefile Thu May 23 00:02:06 2013
@@ -17,13 +17,51 @@
 
 
 # Makefile for benchmark tests.  The only useful target here is `bench`.
+# Add benchmark functions in alphabetical order.
 
 subdir := benchtests
-bench := exp pow rint sin cos tan atan modf
+bench := acos acosh asin asinh atan atanh cos cosh exp log modf pow rint sin \
+	 sinh tan tanh
+
+acos-ARGLIST = double
+acos-RET = double
+LDFLAGS-bench-acos = -lm
+
+acosh-ARGLIST = double
+acosh-RET = double
+LDFLAGS-bench-acosh = -lm
+
+asin-ARGLIST = double
+asin-RET = double
+LDFLAGS-bench-asin = -lm
+
+asinh-ARGLIST = double
+asinh-RET = double
+LDFLAGS-bench-asinh = -lm
+
+atan-ARGLIST = double
+atan-RET = double
+LDFLAGS-bench-atan = -lm
+
+atanh-ARGLIST = double
+atanh-RET = double
+LDFLAGS-bench-atanh = -lm
+
+cos-ARGLIST = double
+cos-RET = double
+LDFLAGS-bench-cos = -lm
+
+cosh-ARGLIST = double
+cosh-RET = double
+LDFLAGS-bench-cosh = -lm
 
 exp-ARGLIST = double
 exp-RET = double
 LDFLAGS-bench-exp = -lm
+
+log-ARGLIST = double
+log-RET = double
+LDFLAGS-bench-log = -lm
 
 pow-ARGLIST = double:double
 pow-RET = double
@@ -37,17 +75,17 @@
 sin-RET = double
 LDFLAGS-bench-sin = -lm
 
-cos-ARGLIST = double
-cos-RET = double
-LDFLAGS-bench-cos = -lm
+sinh-ARGLIST = double
+sinh-RET = double
+LDFLAGS-bench-sinh = -lm
 
 tan-ARGLIST = double
 tan-RET = double
 LDFLAGS-bench-tan = -lm
 
-atan-ARGLIST = double
-atan-RET = double
-LDFLAGS-bench-atan = -lm
+tanh-ARGLIST = double
+tanh-RET = double
+LDFLAGS-bench-tanh = -lm
 
 
 

Added: fsf/trunk/libc/benchtests/acos-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/acos-inputs (added)
+++ fsf/trunk/libc/benchtests/acos-inputs Thu May 23 00:02:06 2013
@@ -1,0 +1,7 @@
+0.5
+0.1
+0.2
+0.3
+0.4
+0.8
+0.7

Added: fsf/trunk/libc/benchtests/acosh-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/acosh-inputs (added)
+++ fsf/trunk/libc/benchtests/acosh-inputs Thu May 23 00:02:06 2013
@@ -1,0 +1,5 @@
+0.1
+0.2
+0.3
+0.4
+0.5

Added: fsf/trunk/libc/benchtests/asin-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/asin-inputs (added)
+++ fsf/trunk/libc/benchtests/asin-inputs Thu May 23 00:02:06 2013
@@ -1,0 +1,7 @@
+0.5
+0.1
+0.2
+0.3
+0.4
+0.8
+0.7

Added: fsf/trunk/libc/benchtests/asinh-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/asinh-inputs (added)
+++ fsf/trunk/libc/benchtests/asinh-inputs Thu May 23 00:02:06 2013
@@ -1,0 +1,5 @@
+0.1
+0.2
+0.3
+0.4
+0.5

Added: fsf/trunk/libc/benchtests/atanh-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/atanh-inputs (added)
+++ fsf/trunk/libc/benchtests/atanh-inputs Thu May 23 00:02:06 2013
@@ -1,0 +1,5 @@
+0.1
+0.2
+0.3
+0.4
+0.5

Added: fsf/trunk/libc/benchtests/cosh-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/cosh-inputs (added)
+++ fsf/trunk/libc/benchtests/cosh-inputs Thu May 23 00:02:06 2013
@@ -1,0 +1,5 @@
+0.1
+0.2
+0.3
+0.4
+0.5

Added: fsf/trunk/libc/benchtests/log-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/log-inputs (added)
+++ fsf/trunk/libc/benchtests/log-inputs Thu May 23 00:02:06 2013
@@ -1,0 +1,1 @@
+42.0

Added: fsf/trunk/libc/benchtests/sinh-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/sinh-inputs (added)
+++ fsf/trunk/libc/benchtests/sinh-inputs Thu May 23 00:02:06 2013
@@ -1,0 +1,5 @@
+0.1
+0.2
+0.3
+0.4
+0.5

Added: fsf/trunk/libc/benchtests/tanh-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/tanh-inputs (added)
+++ fsf/trunk/libc/benchtests/tanh-inputs Thu May 23 00:02:06 2013
@@ -1,0 +1,5 @@
+0.1
+0.2
+0.3
+0.4
+0.5

Modified: fsf/trunk/libc/intl/dcigettext.c
==============================================================================
--- fsf/trunk/libc/intl/dcigettext.c (original)
+++ fsf/trunk/libc/intl/dcigettext.c Thu May 23 00:02:06 2013
@@ -638,6 +638,11 @@
 		  retval = _nl_find_msg (domain->successor[cnt], binding,
 					 msgid1, 1, &retlen);
 
+		  /* Resource problems are not fatal, instead we return no
+		     translation.  */
+		  if (__builtin_expect (retval == (char *) -1, 0))
+		    goto no_translation;
+
 		  if (retval != NULL)
 		    {
 		      domain = domain->successor[cnt];
@@ -941,6 +946,11 @@
 	    nullentry =
 	      _nl_find_msg (domain_file, domainbinding, "", 0, &nullentrylen);
 
+	    /* Resource problems are fatal.  If we continue onwards we will
+	       only attempt to calloc a new conv_tab and fail later.  */
+	    if (__builtin_expect (nullentry == (char *) -1, 0))
+	      return (char *) -1;
+
 	    if (nullentry != NULL)
 	      {
 		const char *charsetstr;
@@ -1170,10 +1180,14 @@
 		      freemem_size = INITIAL_BLOCK_SIZE;
 		      newmem = (transmem_block_t *) malloc (freemem_size);
 # ifdef _LIBC
-		      /* Add the block to the list of blocks we have to free
-			 at some point.  */
-		      newmem->next = transmem_list;
-		      transmem_list = newmem;
+		      if (newmem != NULL)
+			{
+			  /* Add the block to the list of blocks we have to free
+			     at some point.  */
+			  newmem->next = transmem_list;
+			  transmem_list = newmem;
+			}
+		      /* Fall through and return -1.  */
 # endif
 		    }
 		  if (__builtin_expect (newmem == NULL, 0))

Modified: fsf/trunk/libc/intl/loadmsgcat.c
==============================================================================
--- fsf/trunk/libc/intl/loadmsgcat.c (original)
+++ fsf/trunk/libc/intl/loadmsgcat.c Thu May 23 00:02:06 2013
@@ -1237,7 +1237,7 @@
     default:
       /* This is an invalid revision.  */
     invalid:
-      /* This is an invalid .mo file.  */
+      /* This is an invalid .mo file or we ran out of resources.  */
       free (domain->malloced);
 #ifdef HAVE_MMAP
       if (use_mmap)
@@ -1257,6 +1257,11 @@
 
   /* Get the header entry and look for a plural specification.  */
   nullentry = _nl_find_msg (domain_file, domainbinding, "", 0, &nullentrylen);
+  if (__builtin_expect (nullentry == (char *) -1, 0))
+    {
+      __libc_rwlock_fini (domain->conversions_lock);
+      goto invalid;
+    }
   EXTRACT_PLURAL_EXPRESSION (nullentry, &domain->plural, &domain->nplurals);
 
  out:

Modified: fsf/trunk/libc/math/gen-libm-test.pl
==============================================================================
--- fsf/trunk/libc/math/gen-libm-test.pl (original)
+++ fsf/trunk/libc/math/gen-libm-test.pl Thu May 23 00:02:06 2013
@@ -158,17 +158,17 @@
 
 # Parse the arguments to TEST_x_y
 sub parse_args {
-  my ($file, $descr, $fct, $args) = @_;
-  my (@args, $str, $descr_args, $descr_res, @descr);
+  my ($file, $descr, $args) = @_;
+  my (@args, $descr_args, $descr_res, @descr);
   my ($current_arg, $cline, $i);
   my (@special);
-  my ($call);
+  my ($call_args);
 
   ($descr_args, $descr_res) = split /_/,$descr, 2;
 
   @args = split /,\s*/, $args;
 
-  $call = "$fct (";
+  $call_args = "";
 
   # Generate first the string that's shown to the user
   $current_arg = 1;
@@ -180,7 +180,7 @@
     }
     # FLOAT, int, long int, long long int
     if ($descr[$i] =~ /f|i|l|L/) {
-      $call .= $comma . &beautify ($args[$current_arg]);
+      $call_args .= $comma . &beautify ($args[$current_arg]);
       ++$current_arg;
       next;
     }
@@ -190,28 +190,23 @@
     }
     # complex
     if ($descr[$i] eq 'c') {
-      $call .= $comma . &build_complex_beautify ($args[$current_arg], $args[$current_arg+1]);
+      $call_args .= $comma . &build_complex_beautify ($args[$current_arg], $args[$current_arg+1]);
       $current_arg += 2;
       next;
     }
 
     die ("$descr[$i] is unknown");
   }
-  $call .= ')';
-  $str = "$call == ";
 
   # Result
   @descr = split //,$descr_res;
   foreach (@descr) {
     if ($_ =~ /f|i|l|L/) {
-      $str .= &beautify ($args[$current_arg]);
       ++$current_arg;
     } elsif ($_ eq 'c') {
-      $str .= &build_complex_beautify ($args[$current_arg], $args[$current_arg+1]);
       $current_arg += 2;
     } elsif ($_ eq 'b') {
       # boolean
-      $str .= ($args[$current_arg] == 0) ? "false" : "true";
       ++$current_arg;
     } elsif ($_ eq '1') {
       ++$current_arg;
@@ -233,7 +228,7 @@
   # Put the C program line together
   # Reset some variables to start again
   $current_arg = 1;
-  $cline = "{ \"$str\"";
+  $cline = "{ \"$call_args\"";
   @descr = split //,$descr_args;
   for ($i=0; $i <= $#descr; $i++) {
     # FLOAT, int, long int, long long int
@@ -278,12 +273,10 @@
     ++$i;
     my ($extra_expected) = $_;
     my ($run_extra) = ($extra_expected ne "IGNORE" ? 1 : 0);
-    my ($str) = "$call extra output $i";
     if (!$run_extra) {
-      $str = "";
       $extra_expected = "0";
     }
-    $cline .= ", \"$str\", $run_extra, $extra_expected";
+    $cline .= ", $run_extra, $extra_expected";
   }
   print $file "    $cline },\n";
 }
@@ -292,7 +285,7 @@
 sub generate_testfile {
   my ($input, $output) = @_;
   my ($lasttext);
-  my (@args, $i, $str, $thisfct);
+  my (@args, $i);
 
   open INPUT, $input or die ("Can't open $input: $!");
   open OUTPUT, ">$output" or die ("Can't open $output: $!");
@@ -305,17 +298,18 @@
       my ($descr, $args);
       chop;
       ($descr, $args) = ($_ =~ /TEST_(\w+)\s*\((.*)\)/);
-      &parse_args (\*OUTPUT, $descr, $thisfct, $args);
+      &parse_args (\*OUTPUT, $descr, $args);
       next;
     }
     # START_DATA (function)
     if (/START_DATA/) {
-      ($thisfct) = ($_ =~ /START_DATA\s*\((.*)\)/);
       next;
     }
     # START (function)
     if (/START/) {
+      my ($thisfct);
       ($thisfct) = ($_ =~ /START\s*\((.*)\)/);
+      print OUTPUT "  const char *this_func = \"$thisfct\";\n";
       print OUTPUT "  init_max_error ();\n";
       next;
     }

Modified: fsf/trunk/libc/math/libm-test.inc
==============================================================================
--- fsf/trunk/libc/math/libm-test.inc (original)
+++ fsf/trunk/libc/math/libm-test.inc Thu May 23 00:02:06 2013
@@ -920,21 +920,21 @@
 /* Structures for each kind of test.  */
 struct test_f_f_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg;
   FLOAT expected;
   int exceptions;
 };
 struct test_ff_f_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg1, arg2;
   FLOAT expected;
   int exceptions;
 };
 struct test_ff_f_data_nexttoward
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg1;
   long double arg2;
   FLOAT expected;
@@ -942,7 +942,7 @@
 };
 struct test_fi_f_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg1;
   int arg2;
   FLOAT expected;
@@ -950,7 +950,7 @@
 };
 struct test_fl_f_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg1;
   long int arg2;
   FLOAT expected;
@@ -958,7 +958,7 @@
 };
 struct test_if_f_data
 {
-  const char *test_name;
+  const char *arg_str;
   int arg1;
   FLOAT arg2;
   FLOAT expected;
@@ -966,14 +966,14 @@
 };
 struct test_fff_f_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg1, arg2, arg3;
   FLOAT expected;
   int exceptions;
 };
 struct test_c_f_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT argr, argc;
   FLOAT expected;
   int exceptions;
@@ -981,44 +981,41 @@
 /* Used for both RUN_TEST_LOOP_f_f1 and RUN_TEST_LOOP_fI_f1.  */
 struct test_f_f1_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg;
   FLOAT expected;
   int exceptions;
-  const char *extra_name;
   int extra_test;
   int extra_expected;
 };
 struct test_fF_f1_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg;
   FLOAT expected;
   int exceptions;
-  const char *extra_name;
   int extra_test;
   FLOAT extra_expected;
 };
 struct test_ffI_f1_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg1, arg2;
   FLOAT expected;
   int exceptions;
-  const char *extra_name;
   int extra_test;
   int extra_expected;
 };
 struct test_c_c_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT argr, argc;
   FLOAT expr, expc;
   int exceptions;
 };
 struct test_cc_c_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg1r, arg1c, arg2r, arg2c;
   FLOAT expr, expc;
   int exceptions;
@@ -1027,41 +1024,39 @@
    RUN_TEST_LOOP_f_b and RUN_TEST_LOOP_f_b_tg.  */
 struct test_f_i_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg;
   int expected;
   int exceptions;
 };
 struct test_ff_i_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg1, arg2;
   int expected;
   int exceptions;
 };
 struct test_f_l_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg;
   long int expected;
   int exceptions;
 };
 struct test_f_L_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg;
   long long int expected;
   int exceptions;
 };
 struct test_fFF_11_data
 {
-  const char *test_name;
+  const char *arg_str;
   FLOAT arg;
   int exceptions;
-  const char *extra1_name;
   int extra1_test;
   FLOAT extra1_expected;
-  const char *extra2_name;
   int extra2_test;
   FLOAT extra2_expected;
 };
@@ -1090,26 +1085,59 @@
 #define ROUND_RESTORE_FE_UPWARD			\
   fesetround (save_round_mode)
 
+/* Common setup for an individual test.  */
+#define COMMON_TEST_SETUP(ARG_STR)					\
+  char *test_name;							\
+  if (asprintf (&test_name, "%s (%s)", this_func, (ARG_STR)) == -1)	\
+    abort ()
+
+/* Setup for a test with an extra output.  */
+#define EXTRA_OUTPUT_TEST_SETUP(ARG_STR, N)			\
+  char *extra##N##_name;					\
+  if (asprintf (&extra##N##_name, "%s (%s) extra output " #N,	\
+		this_func, (ARG_STR)) == -1)			\
+    abort ()
+
+/* Common cleanup after an individual test.  */
+#define COMMON_TEST_CLEANUP			\
+  free (test_name)
+
+/* Cleanup for a test with an extra output.  */
+#define EXTRA_OUTPUT_TEST_CLEANUP(N)		\
+  free (extra##N##_name)
+
 /* Run an individual test, including any required setup and checking
    of results, or loop over all tests in an array.  */
-#define RUN_TEST_f_f(TEST_NAME, FUNC_NAME, ARG, EXPECTED,	\
+#define RUN_TEST_f_f(ARG_STR, FUNC_NAME, ARG, EXPECTED,	\
 		     EXCEPTIONS)				\
-  check_float (TEST_NAME, FUNC (FUNC_NAME) (ARG), EXPECTED,	\
-	       EXCEPTIONS)
+  do								\
+    {								\
+      COMMON_TEST_SETUP (ARG_STR);				\
+      check_float (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED,	\
+		   EXCEPTIONS);					\
+      COMMON_TEST_CLEANUP;					\
+    }								\
+  while (0)
 #define RUN_TEST_LOOP_f_f(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_f_f ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
+      RUN_TEST_f_f ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
 		    (ARRAY)[i].expected, (ARRAY)[i].exceptions);	\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_2_f(TEST_NAME, FUNC_NAME, ARG1, ARG2, EXPECTED,	\
+#define RUN_TEST_2_f(ARG_STR, FUNC_NAME, ARG1, ARG2, EXPECTED,		\
 		     EXCEPTIONS)					\
-  check_float (TEST_NAME, FUNC (FUNC_NAME) (ARG1, ARG2), EXPECTED,	\
-	       EXCEPTIONS)
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_float (test_name, FUNC (FUNC_NAME) (ARG1, ARG2), EXPECTED,	\
+		   EXCEPTIONS);						\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_2_f(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_2_f ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg1,	\
+      RUN_TEST_2_f ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg1,	\
 		    (ARRAY)[i].arg2, (ARRAY)[i].expected,		\
 		    (ARRAY)[i].exceptions);				\
   ROUND_RESTORE_ ## ROUNDING_MODE
@@ -1121,230 +1149,314 @@
 #define RUN_TEST_LOOP_fl_f RUN_TEST_LOOP_2_f
 #define RUN_TEST_if_f RUN_TEST_2_f
 #define RUN_TEST_LOOP_if_f RUN_TEST_LOOP_2_f
-#define RUN_TEST_fff_f(TEST_NAME, FUNC_NAME, ARG1, ARG2, ARG3,	\
-		       EXPECTED, EXCEPTIONS)			\
-  check_float (TEST_NAME, FUNC (FUNC_NAME) (ARG1, ARG2, ARG3),	\
-	       EXPECTED, EXCEPTIONS)
+#define RUN_TEST_fff_f(ARG_STR, FUNC_NAME, ARG1, ARG2, ARG3,		\
+		       EXPECTED, EXCEPTIONS)				\
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_float (test_name, FUNC (FUNC_NAME) (ARG1, ARG2, ARG3),	\
+		   EXPECTED, EXCEPTIONS);				\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_fff_f(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_fff_f ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg1,	\
+      RUN_TEST_fff_f ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg1,	\
 		      (ARRAY)[i].arg2, (ARRAY)[i].arg3,			\
 		      (ARRAY)[i].expected, (ARRAY)[i].exceptions);	\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_c_f(TEST_NAME, FUNC_NAME, ARG1, ARG2, EXPECTED,	\
+#define RUN_TEST_c_f(ARG_STR, FUNC_NAME, ARG1, ARG2, EXPECTED,		\
 		     EXCEPTIONS)					\
-  check_float (TEST_NAME,						\
-	       FUNC (FUNC_NAME) (BUILD_COMPLEX (ARG1, ARG2)),		\
-	       EXPECTED, EXCEPTIONS)
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_float (test_name,						\
+		   FUNC (FUNC_NAME) (BUILD_COMPLEX (ARG1, ARG2)),	\
+		   EXPECTED, EXCEPTIONS);				\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_c_f(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_c_f ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].argr,	\
+      RUN_TEST_c_f ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].argr,	\
 		    (ARRAY)[i].argc, (ARRAY)[i].expected,		\
 		    (ARRAY)[i].exceptions);				\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_f_f1(TEST_NAME, FUNC_NAME, ARG, EXPECTED,	\
-		      EXCEPTIONS,				\
-		      EXTRA_NAME, EXTRA_VAR, EXTRA_TEST,	\
-		      EXTRA_EXPECTED)		\
+#define RUN_TEST_f_f1(ARG_STR, FUNC_NAME, ARG, EXPECTED,	\
+		      EXCEPTIONS, EXTRA_VAR, EXTRA_TEST,	\
+		      EXTRA_EXPECTED)				\
   do								\
     {								\
+      COMMON_TEST_SETUP (ARG_STR);				\
       (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0;		\
-      check_float (TEST_NAME, FUNC (FUNC_NAME) (ARG), EXPECTED,	\
+      check_float (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED,	\
 		   EXCEPTIONS);					\
+      EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1);			\
       if (EXTRA_TEST)						\
-	check_int (EXTRA_NAME, EXTRA_VAR, EXTRA_EXPECTED, 0);	\
+	check_int (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0);	\
+      EXTRA_OUTPUT_TEST_CLEANUP (1);				\
+      COMMON_TEST_CLEANUP;					\
     }								\
   while (0)
 #define RUN_TEST_LOOP_f_f1(FUNC_NAME, ARRAY, ROUNDING_MODE, EXTRA_VAR)	\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_f_f1 ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
-		     (ARRAY)[i].expected,				\
-		     (ARRAY)[i].exceptions, (ARRAY)[i].extra_name,	\
+      RUN_TEST_f_f1 ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
+		     (ARRAY)[i].expected, (ARRAY)[i].exceptions,	\
 		     EXTRA_VAR, (ARRAY)[i].extra_test,			\
 		     (ARRAY)[i].extra_expected);			\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_fF_f1(TEST_NAME, FUNC_NAME, ARG, EXPECTED,		\
-		       EXCEPTIONS,					\
-		       EXTRA_NAME, EXTRA_VAR, EXTRA_TEST,		\
+#define RUN_TEST_fF_f1(ARG_STR, FUNC_NAME, ARG, EXPECTED,		\
+		       EXCEPTIONS, EXTRA_VAR, EXTRA_TEST,		\
 		       EXTRA_EXPECTED)					\
   do									\
     {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
       (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0;			\
-      check_float (TEST_NAME, FUNC (FUNC_NAME) (ARG, &(EXTRA_VAR)),	\
+      check_float (test_name, FUNC (FUNC_NAME) (ARG, &(EXTRA_VAR)),	\
 		   EXPECTED, EXCEPTIONS);				\
+      EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1);				\
       if (EXTRA_TEST)							\
-	check_float (EXTRA_NAME, EXTRA_VAR, EXTRA_EXPECTED, 0);		\
+	check_float (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0);	\
+      EXTRA_OUTPUT_TEST_CLEANUP (1);					\
+      COMMON_TEST_CLEANUP;						\
     }									\
   while (0)
 #define RUN_TEST_LOOP_fF_f1(FUNC_NAME, ARRAY, ROUNDING_MODE, EXTRA_VAR)	\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_fF_f1 ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
-		      (ARRAY)[i].expected,				\
-		      (ARRAY)[i].exceptions, (ARRAY)[i].extra_name,	\
+      RUN_TEST_fF_f1 ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
+		      (ARRAY)[i].expected, (ARRAY)[i].exceptions,	\
 		      EXTRA_VAR, (ARRAY)[i].extra_test,			\
 		      (ARRAY)[i].extra_expected);			\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_fI_f1(TEST_NAME, FUNC_NAME, ARG, EXPECTED,		\
-		       EXCEPTIONS,					\
-		       EXTRA_NAME, EXTRA_VAR, EXTRA_TEST,		\
+#define RUN_TEST_fI_f1(ARG_STR, FUNC_NAME, ARG, EXPECTED,		\
+		       EXCEPTIONS, EXTRA_VAR, EXTRA_TEST,		\
 		       EXTRA_EXPECTED)					\
   do									\
     {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
       (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0;			\
-      check_float (TEST_NAME, FUNC (FUNC_NAME) (ARG, &(EXTRA_VAR)),	\
+      check_float (test_name, FUNC (FUNC_NAME) (ARG, &(EXTRA_VAR)),	\
 		   EXPECTED, EXCEPTIONS);				\
+      EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1);				\
       if (EXTRA_TEST)							\
-	check_int (EXTRA_NAME, EXTRA_VAR, EXTRA_EXPECTED, 0);		\
+	check_int (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0);		\
+      EXTRA_OUTPUT_TEST_CLEANUP (1);					\
+      COMMON_TEST_CLEANUP;						\
     }									\
   while (0)
 #define RUN_TEST_LOOP_fI_f1(FUNC_NAME, ARRAY, ROUNDING_MODE, EXTRA_VAR)	\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_fI_f1 ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
-		      (ARRAY)[i].expected,				\
-		      (ARRAY)[i].exceptions, (ARRAY)[i].extra_name,	\
+      RUN_TEST_fI_f1 ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
+		      (ARRAY)[i].expected, (ARRAY)[i].exceptions,	\
 		      EXTRA_VAR, (ARRAY)[i].extra_test,			\
 		      (ARRAY)[i].extra_expected);			\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_ffI_f1(TEST_NAME, FUNC_NAME, ARG1, ARG2, EXPECTED,	\
-			EXCEPTIONS,					\
-			EXTRA_NAME, EXTRA_VAR, EXTRA_TEST,		\
+#define RUN_TEST_ffI_f1(ARG_STR, FUNC_NAME, ARG1, ARG2, EXPECTED,	\
+			EXCEPTIONS, EXTRA_VAR, EXTRA_TEST,		\
 			EXTRA_EXPECTED)					\
   do									\
     {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
       (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0;			\
-      check_float (TEST_NAME,						\
+      check_float (test_name,						\
 		   FUNC (FUNC_NAME) (ARG1, ARG2, &(EXTRA_VAR)),		\
 		   EXPECTED, EXCEPTIONS);				\
+      EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1);				\
       if (EXTRA_TEST)							\
-	check_int (EXTRA_NAME, EXTRA_VAR, EXTRA_EXPECTED, 0);		\
+	check_int (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0);		\
+      EXTRA_OUTPUT_TEST_CLEANUP (1);					\
+      COMMON_TEST_CLEANUP;						\
     }									\
   while (0)
 #define RUN_TEST_LOOP_ffI_f1(FUNC_NAME, ARRAY, ROUNDING_MODE,		\
 			     EXTRA_VAR)					\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_ffI_f1 ((ARRAY)[i].test_name, FUNC_NAME,			\
+      RUN_TEST_ffI_f1 ((ARRAY)[i].arg_str, FUNC_NAME,			\
 		       (ARRAY)[i].arg1, (ARRAY)[i].arg2,		\
-		       (ARRAY)[i].expected,				\
-		       (ARRAY)[i].exceptions, (ARRAY)[i].extra_name,	\
+		       (ARRAY)[i].expected, (ARRAY)[i].exceptions,	\
 		       EXTRA_VAR, (ARRAY)[i].extra_test,		\
 		       (ARRAY)[i].extra_expected);			\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_c_c(TEST_NAME, FUNC_NAME, ARGR, ARGC, EXPR, EXPC,	\
+#define RUN_TEST_c_c(ARG_STR, FUNC_NAME, ARGR, ARGC, EXPR, EXPC,	\
 		     EXCEPTIONS)					\
-  check_complex (TEST_NAME,						\
-		 FUNC (FUNC_NAME) (BUILD_COMPLEX (ARGR, ARGC)),		\
-		 BUILD_COMPLEX (EXPR, EXPC), EXCEPTIONS)
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_complex (test_name,						\
+		     FUNC (FUNC_NAME) (BUILD_COMPLEX (ARGR, ARGC)),	\
+		     BUILD_COMPLEX (EXPR, EXPC), EXCEPTIONS);		\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_c_c(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_c_c ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].argr,	\
+      RUN_TEST_c_c ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].argr,	\
 		    (ARRAY)[i].argc, (ARRAY)[i].expr, (ARRAY)[i].expc,	\
 		    (ARRAY)[i].exceptions);				\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_cc_c(TEST_NAME, FUNC_NAME, ARG1R, ARG1C, ARG2R, ARG2C,	\
+#define RUN_TEST_cc_c(ARG_STR, FUNC_NAME, ARG1R, ARG1C, ARG2R, ARG2C,	\
 		      EXPR, EXPC, EXCEPTIONS)				\
-  check_complex (TEST_NAME,						\
-		 FUNC (FUNC_NAME) (BUILD_COMPLEX (ARG1R, ARG1C),	\
-				   BUILD_COMPLEX (ARG2R, ARG2C)),	\
-		 BUILD_COMPLEX (EXPR, EXPC), EXCEPTIONS)
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_complex (test_name,						\
+		     FUNC (FUNC_NAME) (BUILD_COMPLEX (ARG1R, ARG1C),	\
+				       BUILD_COMPLEX (ARG2R, ARG2C)),	\
+		     BUILD_COMPLEX (EXPR, EXPC), EXCEPTIONS);		\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_cc_c(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_cc_c ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg1r,	\
+      RUN_TEST_cc_c ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg1r,	\
 		     (ARRAY)[i].arg1c, (ARRAY)[i].arg2r,		\
 		     (ARRAY)[i].arg2c, (ARRAY)[i].expr,			\
 		     (ARRAY)[i].expc, (ARRAY)[i].exceptions);		\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_f_i(TEST_NAME, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS)	\
-  check_int (TEST_NAME, FUNC (FUNC_NAME) (ARG), EXPECTED, EXCEPTIONS)
+#define RUN_TEST_f_i(ARG_STR, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS)	\
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_int (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED,		\
+		 EXCEPTIONS);						\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_f_i(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_f_i ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
+      RUN_TEST_f_i ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
 		    (ARRAY)[i].expected, (ARRAY)[i].exceptions);	\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_f_i_tg(TEST_NAME, FUNC_NAME, ARG, EXPECTED,	\
-			EXCEPTIONS)				\
-  check_int (TEST_NAME, FUNC_NAME (ARG), EXPECTED, EXCEPTIONS)
+#define RUN_TEST_f_i_tg(ARG_STR, FUNC_NAME, ARG, EXPECTED,		\
+			EXCEPTIONS)					\
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_int (test_name, FUNC_NAME (ARG), EXPECTED, EXCEPTIONS);	\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_f_i_tg(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_f_i_tg ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
+      RUN_TEST_f_i_tg ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
 		       (ARRAY)[i].expected, (ARRAY)[i].exceptions);	\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_ff_i_tg(TEST_NAME, FUNC_NAME, ARG1, ARG2, EXPECTED,	\
+#define RUN_TEST_ff_i_tg(ARG_STR, FUNC_NAME, ARG1, ARG2, EXPECTED,	\
 			 EXCEPTIONS)					\
-  check_int (TEST_NAME, FUNC_NAME (ARG1, ARG2), EXPECTED, EXCEPTIONS)
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_int (test_name, FUNC_NAME (ARG1, ARG2), EXPECTED,		\
+		 EXCEPTIONS);						\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_ff_i_tg(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_ff_i_tg ((ARRAY)[i].test_name, FUNC_NAME,		\
+      RUN_TEST_ff_i_tg ((ARRAY)[i].arg_str, FUNC_NAME,		\
 			(ARRAY)[i].arg1, (ARRAY)[i].arg2,		\
 			(ARRAY)[i].expected, (ARRAY)[i].exceptions);	\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_f_b(TEST_NAME, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS)	\
-  check_bool (TEST_NAME, FUNC (FUNC_NAME) (ARG), EXPECTED, EXCEPTIONS)
+#define RUN_TEST_f_b(ARG_STR, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS)	\
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_bool (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED,		\
+		  EXCEPTIONS);						\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_f_b(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_f_b ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
+      RUN_TEST_f_b ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
 		    (ARRAY)[i].expected, (ARRAY)[i].exceptions);	\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_f_b_tg(TEST_NAME, FUNC_NAME, ARG, EXPECTED,	\
-			EXCEPTIONS)				\
-  check_bool (TEST_NAME, FUNC_NAME (ARG), EXPECTED, EXCEPTIONS)
+#define RUN_TEST_f_b_tg(ARG_STR, FUNC_NAME, ARG, EXPECTED,		\
+			EXCEPTIONS)					\
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_bool (test_name, FUNC_NAME (ARG), EXPECTED, EXCEPTIONS);	\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_f_b_tg(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_f_b_tg ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
+      RUN_TEST_f_b_tg ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
 		       (ARRAY)[i].expected, (ARRAY)[i].exceptions);	\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_f_l(TEST_NAME, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS)	\
-  check_long (TEST_NAME, FUNC (FUNC_NAME) (ARG), EXPECTED, EXCEPTIONS)
+#define RUN_TEST_f_l(ARG_STR, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS)	\
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_long (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED,		\
+		  EXCEPTIONS);						\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_f_l(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_f_l ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
+      RUN_TEST_f_l ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
 		    (ARRAY)[i].expected, (ARRAY)[i].exceptions);	\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_f_L(TEST_NAME, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS)	\
-  check_longlong (TEST_NAME, FUNC (FUNC_NAME) (ARG), EXPECTED,		\
-		  EXCEPTIONS)
+#define RUN_TEST_f_L(ARG_STR, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS)	\
+  do									\
+    {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
+      check_longlong (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED,	\
+		      EXCEPTIONS);					\
+      COMMON_TEST_CLEANUP;						\
+    }									\
+  while (0)
 #define RUN_TEST_LOOP_f_L(FUNC_NAME, ARRAY, ROUNDING_MODE)		\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_f_L ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
+      RUN_TEST_f_L ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
 		    (ARRAY)[i].expected, (ARRAY)[i].exceptions);	\
   ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_fFF_11(TEST_NAME, FUNC_NAME, ARG, EXCEPTIONS,		\
-			EXTRA1_NAME, EXTRA1_VAR, EXTRA1_TEST,		\
-			EXTRA1_EXPECTED, EXTRA2_NAME, EXTRA2_VAR,	\
+#define RUN_TEST_fFF_11(ARG_STR, FUNC_NAME, ARG, EXCEPTIONS,		\
+			EXTRA1_VAR, EXTRA1_TEST,			\
+			EXTRA1_EXPECTED, EXTRA2_VAR,			\
 			EXTRA2_TEST, EXTRA2_EXPECTED)			\
   do									\
     {									\
+      COMMON_TEST_SETUP (ARG_STR);					\
       FUNC (FUNC_NAME) (ARG, &(EXTRA1_VAR), &(EXTRA2_VAR));		\
+      EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1);				\
       if (EXTRA1_TEST)							\
-	check_float (EXTRA1_NAME, EXTRA1_VAR, EXTRA1_EXPECTED,		\
+	check_float (extra1_name, EXTRA1_VAR, EXTRA1_EXPECTED,		\
 		     EXCEPTIONS);					\
+      EXTRA_OUTPUT_TEST_CLEANUP (1);					\
+      EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 2);				\
       if (EXTRA2_TEST)							\
-	check_float (EXTRA2_NAME, EXTRA2_VAR, EXTRA2_EXPECTED, 0);	\
+	check_float (extra2_name, EXTRA2_VAR, EXTRA2_EXPECTED, 0);	\
+      EXTRA_OUTPUT_TEST_CLEANUP (2);					\
+      COMMON_TEST_CLEANUP;						\
     }									\
   while (0)
 #define RUN_TEST_LOOP_fFF_11(FUNC_NAME, ARRAY, ROUNDING_MODE,		\
 			     EXTRA1_VAR, EXTRA2_VAR)			\
   IF_ROUND_INIT_ ## ROUNDING_MODE					\
     for (size_t i = 0; i < sizeof (ARRAY) / sizeof (ARRAY)[0]; i++)	\
-      RUN_TEST_fFF_11 ((ARRAY)[i].test_name, FUNC_NAME, (ARRAY)[i].arg,	\
-		       (ARRAY)[i].exceptions, (ARRAY)[i].extra1_name,	\
+      RUN_TEST_fFF_11 ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg,	\
+		       (ARRAY)[i].exceptions,				\
 		       EXTRA1_VAR, (ARRAY)[i].extra1_test,		\
 		       (ARRAY)[i].extra1_expected,			\
-		       (ARRAY)[i].extra2_name, EXTRA2_VAR,		\
+		       EXTRA2_VAR,					\
 		       (ARRAY)[i].extra2_test,				\
 		       (ARRAY)[i].extra2_expected);			\
   ROUND_RESTORE_ ## ROUNDING_MODE

Modified: fsf/trunk/libc/ports/ChangeLog.aarch64
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.aarch64 (original)
+++ fsf/trunk/libc/ports/ChangeLog.aarch64 Thu May 23 00:02:06 2013
@@ -1,3 +1,7 @@
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/aarch64/libm-test-ulps: Update test names.
+
 2013-05-21  Andreas Schwab  <schwab@xxxxxxx>
 
 	[BZ #15493]

Modified: fsf/trunk/libc/ports/ChangeLog.alpha
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.alpha (original)
+++ fsf/trunk/libc/ports/ChangeLog.alpha Thu May 23 00:02:06 2013
@@ -1,3 +1,14 @@
+2013-05-22  Edjunior Barbosa Machado  <emachado@xxxxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (siginfo_t): Add
+	si_trapno and si_addr_lsb to _sifields.sigfault.
+	(si_trapno, si_addr_lsb): Define new macros.
+	(BUS_MCEERR_AR, BUS_MCEERR_AO): Define new values.
+
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/alpha/fpu/libm-test-ulps: Update test names.
+
 2013-05-19  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/alpha/fpu/libm-test-ulps: Update names of sincos tests.

Modified: fsf/trunk/libc/ports/ChangeLog.arm
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.arm (original)
+++ fsf/trunk/libc/ports/ChangeLog.arm Thu May 23 00:02:06 2013
@@ -1,3 +1,7 @@
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/arm/libm-test-ulps: Update test names.
+
 2013-05-19  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/arm/libm-test-ulps: Update names of sincos tests.

Modified: fsf/trunk/libc/ports/ChangeLog.hppa
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.hppa (original)
+++ fsf/trunk/libc/ports/ChangeLog.hppa Thu May 23 00:02:06 2013
@@ -1,3 +1,7 @@
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/hppa/fpu/libm-test-ulps: Update test names.
+
 2013-05-19  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/hppa/fpu/libm-test-ulps: Update names of sincos tests.

Modified: fsf/trunk/libc/ports/ChangeLog.ia64
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.ia64 (original)
+++ fsf/trunk/libc/ports/ChangeLog.ia64 Thu May 23 00:02:06 2013
@@ -1,3 +1,14 @@
+2013-05-22  Edjunior Barbosa Machado  <emachado@xxxxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (siginfo_t): Add
+	si_addr_lsb to _sifields.sigfault.
+	(si_addr_lsb): Define new macro.
+	(BUS_MCEERR_AR, BUS_MCEERR_AO): Define new values.
+
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/ia64/fpu/libm-test-ulps: Update test names.
+
 2013-05-19  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/ia64/fpu/libm-test-ulps: Update names of sincos tests.

Modified: fsf/trunk/libc/ports/ChangeLog.m68k
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.m68k (original)
+++ fsf/trunk/libc/ports/ChangeLog.m68k Thu May 23 00:02:06 2013
@@ -1,3 +1,8 @@
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/m68k/coldfire/fpu/libm-test-ulps: Update test names.
+	* sysdeps/m68k/m680x0/fpu/libm-test-ulps: Likewise.
+
 2013-05-19  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/m68k/coldfire/fpu/libm-test-ulps: Update names of sincos

Modified: fsf/trunk/libc/ports/ChangeLog.microblaze
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.microblaze (original)
+++ fsf/trunk/libc/ports/ChangeLog.microblaze Thu May 23 00:02:06 2013
@@ -1,3 +1,7 @@
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/microblaze/libm-test-ulps: Update test names.
+
 2013-05-19  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/microblaze/libm-test-ulps: Update names of sincos tests.

Modified: fsf/trunk/libc/ports/ChangeLog.mips
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.mips (original)
+++ fsf/trunk/libc/ports/ChangeLog.mips Thu May 23 00:02:06 2013
@@ -1,3 +1,15 @@
+2013-05-22  Edjunior Barbosa Machado  <emachado@xxxxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/mips/bits/siginfo.h (siginfo_t): Add
+	si_addr_lsb to _sifields.sifault.
+	(si_addr_lsb): Define new macro.
+	(BUS_MCEERR_AR, BUS_MCEERR_AO): Define new values.
+
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/mips/mips32/libm-test-ulps: Update test names.
+	* sysdeps/mips/mips64/libm-test-ulps: Likewise.
+
 2013-05-21  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	[BZ #15506]

Modified: fsf/trunk/libc/ports/ChangeLog.powerpc
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.powerpc (original)
+++ fsf/trunk/libc/ports/ChangeLog.powerpc Thu May 23 00:02:06 2013
@@ -1,3 +1,7 @@
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/powerpc/nofpu/libm-test-ulps: Update test names.
+
 2013-05-19  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/powerpc/nofpu/libm-test-ulps: Update names of sincos

Modified: fsf/trunk/libc/ports/ChangeLog.tile
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.tile (original)
+++ fsf/trunk/libc/ports/ChangeLog.tile Thu May 23 00:02:06 2013
@@ -1,3 +1,14 @@
+2013-05-22  Edjunior Barbosa Machado  <emachado@xxxxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/tile/bits/siginfo.h (siginfo_t): Fix comment
+	formatting. Add	si_addr_lsb to _sifields.sigfault.
+	(si_addr_lsb): Define new macro.
+	(BUS_MCEERR_AR, BUS_MCEERR_AO): Define new values.
+
+2013-05-22  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/tile/libm-test-ulps: Update test names.
+
 2013-05-19  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/tile/libm-test-ulps: Update names of sincos tests.

Modified: fsf/trunk/libc/ports/sysdeps/aarch64/libm-test-ulps
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/aarch64/libm-test-ulps (original)
+++ fsf/trunk/libc/ports/sysdeps/aarch64/libm-test-ulps Thu May 23 00:02:06 2013
@@ -1,19 +1,19 @@
 # Begin of automatic generation
 
 # acos_downward
-Test "acos_downward (-0) == pi/2":
-float: 1
-ifloat: 1
-Test "acos_downward (-0.5) == M_PI_6l*4.0":
-double: 1
-idouble: 1
-Test "acos_downward (-1) == pi":
-float: 1
-ifloat: 1
-Test "acos_downward (0) == pi/2":
-float: 1
-ifloat: 1
-Test "acos_downward (0.5) == M_PI_6l*2.0":
+Test "acos_downward (-0)":
+float: 1
+ifloat: 1
+Test "acos_downward (-0.5)":
+double: 1
+idouble: 1
+Test "acos_downward (-1)":
+float: 1
+ifloat: 1
+Test "acos_downward (0)":
+float: 1
+ifloat: 1
+Test "acos_downward (0.5)":
 double: 1
 float: 1
 idouble: 1
@@ -22,19 +22,19 @@
 ldouble: 1
 
 # acos_towardzero
-Test "acos_towardzero (-0) == pi/2":
-float: 1
-ifloat: 1
-Test "acos_towardzero (-0.5) == M_PI_6l*4.0":
-double: 1
-idouble: 1
-Test "acos_towardzero (-1) == pi":
-float: 1
-ifloat: 1
-Test "acos_towardzero (0) == pi/2":
-float: 1
-ifloat: 1
-Test "acos_towardzero (0.5) == M_PI_6l*2.0":
+Test "acos_towardzero (-0)":
+float: 1
+ifloat: 1
+Test "acos_towardzero (-0.5)":
+double: 1
+idouble: 1
+Test "acos_towardzero (-1)":
+float: 1
+ifloat: 1
+Test "acos_towardzero (0)":
+float: 1
+ifloat: 1
+Test "acos_towardzero (0.5)":
 double: 1
 float: 1
 idouble: 1
@@ -43,1494 +43,1494 @@
 ldouble: 1
 
 # acos_upward
-Test "acos_upward (-0) == pi/2":
-ildouble: 1
-ldouble: 1
-Test "acos_upward (-1) == pi":
-ildouble: 1
-ldouble: 1
-Test "acos_upward (0) == pi/2":
+Test "acos_upward (-0)":
+ildouble: 1
+ldouble: 1
+Test "acos_upward (-1)":
+ildouble: 1
+ldouble: 1
+Test "acos_upward (0)":
 ildouble: 1
 ldouble: 1
 
 # asin_downward
-Test "asin_downward (-0.5) == -pi/6":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "asin_downward (-1.0) == -pi/2":
-ildouble: 1
-ldouble: 1
-Test "asin_downward (0.5) == pi/6":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "asin_downward (1.0) == pi/2":
+Test "asin_downward (-0.5)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-1.0)":
+ildouble: 1
+ldouble: 1
+Test "asin_downward (0.5)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_downward (1.0)":
 float: 1
 ifloat: 1
 
 # asin_towardzero
-Test "asin_towardzero (-0.5) == -pi/6":
-double: 1
-idouble: 1
-Test "asin_towardzero (-1.0) == -pi/2":
-float: 1
-ifloat: 1
-Test "asin_towardzero (0.5) == pi/6":
-double: 1
-idouble: 1
-Test "asin_towardzero (1.0) == pi/2":
+Test "asin_towardzero (-0.5)":
+double: 1
+idouble: 1
+Test "asin_towardzero (-1.0)":
+float: 1
+ifloat: 1
+Test "asin_towardzero (0.5)":
+double: 1
+idouble: 1
+Test "asin_towardzero (1.0)":
 float: 1
 ifloat: 1
 
 # asin_upward
-Test "asin_upward (-1.0) == -pi/2":
-float: 1
-ifloat: 1
-Test "asin_upward (1.0) == pi/2":
+Test "asin_upward (-1.0)":
+float: 1
+ifloat: 1
+Test "asin_upward (1.0)":
 ildouble: 1
 ldouble: 1
 
 # atan2
-Test "atan2 (-0.00756827042671106339, -.001792735857538728036) == -1.80338464113663849327153994379639112":
-ildouble: 1
-ldouble: 1
-Test "atan2 (-0.75, -1.0) == -2.49809154479650885165983415456218025":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "atan2 (-max_value, -min_value) == -pi/2":
-float: 1
-ifloat: 1
-Test "atan2 (0.75, -1.0) == 2.49809154479650885165983415456218025":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "atan2 (1.390625, 0.9296875) == 0.981498387184244311516296577615519772":
+Test "atan2 (-0.00756827042671106339, -.001792735857538728036)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0.75, -1.0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "atan2 (-max_value, -min_value)":
+float: 1
+ifloat: 1
+Test "atan2 (0.75, -1.0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "atan2 (1.390625, 0.9296875)":
 float: 1
 ifloat: 1
 ildouble: 1
 ldouble: 1
 
 # atanh
-Test "atanh (0.75) == 0.972955074527656652552676371721589865":
+Test "atanh (0.75)":
 float: 1
 ifloat: 1
 
 # cacos
-Test "Imaginary part of: cacos (+0 + 0.5 i) == pi/2 - 0.4812118250596034474977589134243684231352 i":
+Test "Imaginary part of: cacos (+0 + 0.5 i)":
 double: 2
 float: 1
 idouble: 2
 ifloat: 1
 ildouble: 1
 ldouble: 1
-Test "Imaginary part of: cacos (+0 + 1.0 i) == pi/2 - 0.8813735870195430252326093249797923090282 i":
+Test "Imaginary part of: cacos (+0 + 1.0 i)":
 double: 2
 float: 1
 idouble: 2
 ifloat: 1
 ildouble: 3
 ldouble: 3
-Test "Imaginary part of: cacos (+0 + 1.5 i) == pi/2 - 1.194763217287109304111930828519090523536 i":
+Test "Imaginary part of: cacos (+0 + 1.5 i)":
 double: 2
 float: 1
 idouble: 2
 ifloat: 1
 ildouble: 2
 ldouble: 2
-Test "Imaginary part of: cacos (+0 - 0.5 i) == pi/2 + 0.4812118250596034474977589134243684231352 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (+0 - 1.0 i) == pi/2 + 0.8813735870195430252326093249797923090282 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (+0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0 + 0.5 i) == pi/2 - 0.4812118250596034474977589134243684231352 i":
+Test "Imaginary part of: cacos (+0 - 0.5 i)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (+0 - 1.0 i)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (+0 - 1.5 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0 + 0.5 i)":
 double: 2
 float: 1
 idouble: 2
 ifloat: 1
 ildouble: 1
 ldouble: 1
-Test "Imaginary part of: cacos (-0 + 1.0 i) == pi/2 - 0.8813735870195430252326093249797923090282 i":
+Test "Imaginary part of: cacos (-0 + 1.0 i)":
 double: 2
 float: 1
 idouble: 2
 ifloat: 1
 ildouble: 3
 ldouble: 3
-Test "Imaginary part of: cacos (-0 + 1.5 i) == pi/2 - 1.194763217287109304111930828519090523536 i":
+Test "Imaginary part of: cacos (-0 + 1.5 i)":
 double: 2
 float: 1
 idouble: 2
 ifloat: 1
 ildouble: 2
 ldouble: 2
-Test "Imaginary part of: cacos (-0 - 0.5 i) == pi/2 + 0.4812118250596034474977589134243684231352 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0 - 1.0 i) == pi/2 + 0.8813735870195430252326093249797923090282 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0 - 1.5 i) == pi/2 + 1.194763217287109304111930828519090523536 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.0 + 0x0.ffffffffffffffffffffffffffcp0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430252326093249797835932642e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.0 + 0x0.ffffffffffffffffp0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430251942769895627079569917e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.0 + 0x1.0000000000000000000000000001p0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430252326093249797924452120e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.0 + 0x1.0000000000000002p0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430253092739958139610130980e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.0 + 0x1.0000000000001p0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195431822418551933572895326024e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.0 - 0x0.ffffffffffffffffffffffffffcp0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430252326093249797835932642e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.0 - 0x0.ffffffffffffffffp0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430251942769895627079569917e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.0 - 0x1.0000000000000000000000000001p0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430252326093249797924452120e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.0 - 0x1.0000000000000002p0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430253092739958139610130980e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.0 - 0x1.0000000000001p0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195431822418551933572895326024e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.25 + 1.0 i) == 1.747098759571863549650000258275841544745 - 8.924633639033482359562124741744951972772e-1 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0.25 + 1.0 i) == 1.747098759571863549650000258275841544745 - 8.924633639033482359562124741744951972772e-1 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.25 - 1.0 i) == 1.747098759571863549650000258275841544745 + 8.924633639033482359562124741744951972772e-1 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0.25 - 1.0 i) == 1.747098759571863549650000258275841544745 + 8.924633639033482359562124741744951972772e-1 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 + +0 i) == 2.094395102393195492308428922186335256131 - 0 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 + 0x1.fp-1025 i) == 2.094395102393195492308428922186335256131 - 6.222508863508420569166420770843207333493e-309 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 + 0x1.fp-129 i) == 2.094395102393195492308428922186335256131 - 3.287317402534702257036015056278368274737e-39 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.5 + 0x1.fp-129 i) == 2.094395102393195492308428922186335256131 - 3.287317402534702257036015056278368274737e-39 i":
-double: 1
-idouble: 1
-Test "Real part of: cacos (-0.5 + 0x1.fp-16385 i) == 2.094395102393195492308428922186335256131 - 9.402257155670418112159334875199821342890e-4933 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 + 0x1p-105 i) == 2.094395102393195492308428922186335256131 - 2.846556599890768890940941645338546615370e-32 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.5 + 0x1p-105 i) == 2.094395102393195492308428922186335256131 - 2.846556599890768890940941645338546615370e-32 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 + 0x1p-112 i) == 2.094395102393195492308428922186335256131 - 2.223872343664663196047610660420739543258e-34 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.5 + 0x1p-112 i) == 2.094395102393195492308428922186335256131 - 2.223872343664663196047610660420739543258e-34 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.5 + 0x1p-23 i) == 2.094395102393190022547898764614298351924 - 1.376510308240943236356088341381173571841e-7 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 + 0x1p-52 i) == 2.094395102393195492308428922186316279087 - 2.563950248511418570403591756798643804971e-16 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 + 0x1p-63 i) == 2.094395102393195492308428922186335256127 - 1.251928832280966098829878787499365228659e-19 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.5 + 0x1p-63 i) == 2.094395102393195492308428922186335256127 - 1.251928832280966098829878787499365228659e-19 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 + 1.0 i) == 1.920235389652109912858733517715121394831 - 9.261330313501824245501244453057873152694e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0.5 + 1.0 i) == 1.920235389652109912858733517715121394831 - 9.261330313501824245501244453057873152694e-1 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 - 0 i) == 2.094395102393195492308428922186335256131 + +0 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 - 0x1.fp-1025 i) == 2.094395102393195492308428922186335256131 + 6.222508863508420569166420770843207333493e-309 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 - 0x1.fp-129 i) == 2.094395102393195492308428922186335256131 + 3.287317402534702257036015056278368274737e-39 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.5 - 0x1.fp-129 i) == 2.094395102393195492308428922186335256131 + 3.287317402534702257036015056278368274737e-39 i":
-double: 1
-idouble: 1
-Test "Real part of: cacos (-0.5 - 0x1.fp-16385 i) == 2.094395102393195492308428922186335256131 + 9.402257155670418112159334875199821342890e-4933 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 - 0x1p-105 i) == 2.094395102393195492308428922186335256131 + 2.846556599890768890940941645338546615370e-32 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.5 - 0x1p-105 i) == 2.094395102393195492308428922186335256131 + 2.846556599890768890940941645338546615370e-32 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 - 0x1p-112 i) == 2.094395102393195492308428922186335256131 + 2.223872343664663196047610660420739543258e-34 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.5 - 0x1p-112 i) == 2.094395102393195492308428922186335256131 + 2.223872343664663196047610660420739543258e-34 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.5 - 0x1p-23 i) == 2.094395102393190022547898764614298351924 + 1.376510308240943236356088341381173571841e-7 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 - 0x1p-52 i) == 2.094395102393195492308428922186316279087 + 2.563950248511418570403591756798643804971e-16 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 - 0x1p-63 i) == 2.094395102393195492308428922186335256127 + 1.251928832280966098829878787499365228659e-19 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0.5 - 0x1p-63 i) == 2.094395102393195492308428922186335256127 + 1.251928832280966098829878787499365228659e-19 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0.5 - 1.0 i) == 1.920235389652109912858733517715121394831 + 9.261330313501824245501244453057873152694e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0.5 - 1.0 i) == 1.920235389652109912858733517715121394831 + 9.261330313501824245501244453057873152694e-1 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x0.fffffffffffff8p0 + 0x1p-52 i) == 3.141592634635223399311902261000251614142 - 1.171456840272878582596796205397918831268e-8 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: cacos (-0x0.fffffffffffff8p0 - 0x1p-52 i) == 3.141592634635223399311902261000251614142 + 1.171456840272878582596796205397918831268e-8 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: cacos (-0x0.ffffffffffffffffffffffffffcp0 + 0x1p-105 i) == 3.141592653589793038743797483317667178134 - 1.234330349600789959989661887846005659983e-16 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x0.ffffffffffffffffffffffffffcp0 - 0x1p-105 i) == 3.141592653589793038743797483317667178134 + 1.234330349600789959989661887846005659983e-16 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x0.ffffffffffffffffp0 + 0x1p-63 i) == 3.141592653170952461345846619605307690007 - 2.588578361325995866221775673638805081337e-10 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x0.ffffffffffffffffp0 - 0x1p-63 i) == 3.141592653170952461345846619605307690007 + 2.588578361325995866221775673638805081337e-10 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x0.ffffffp0 + 0x1p-23 i) == 3.141153467203602189751698864505105063797 - 2.714321200917194650737217746780928423385e-4 i":
+Test "Imaginary part of: cacos (-0 - 0.5 i)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0 - 1.0 i)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0 - 1.5 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.0 + 0x0.ffffffffffffffffffffffffffcp0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.0 + 0x0.ffffffffffffffffp0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.0 + 0x1.0000000000000000000000000001p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.0 + 0x1.0000000000000002p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.0 + 0x1.0000000000001p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.0 - 0x0.ffffffffffffffffffffffffffcp0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.0 - 0x0.ffffffffffffffffp0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.0 - 0x1.0000000000000000000000000001p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.0 - 0x1.0000000000000002p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.0 - 0x1.0000000000001p0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.25 + 1.0 i)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Imaginary part of: cacos (-0.25 + 1.0 i)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.25 - 1.0 i)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Imaginary part of: cacos (-0.25 - 1.0 i)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 + +0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 + 0x1.fp-1025 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 + 0x1.fp-129 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.5 + 0x1.fp-129 i)":
+double: 1
+idouble: 1
+Test "Real part of: cacos (-0.5 + 0x1.fp-16385 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 + 0x1p-105 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.5 + 0x1p-105 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 + 0x1p-112 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.5 + 0x1p-112 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.5 + 0x1p-23 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 + 0x1p-52 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 + 0x1p-63 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.5 + 0x1p-63 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 + 1.0 i)":
+float: 1
+ifloat: 1
+Test "Imaginary part of: cacos (-0.5 + 1.0 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 - 0 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 - 0x1.fp-1025 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 - 0x1.fp-129 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.5 - 0x1.fp-129 i)":
+double: 1
+idouble: 1
+Test "Real part of: cacos (-0.5 - 0x1.fp-16385 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 - 0x1p-105 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.5 - 0x1p-105 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 - 0x1p-112 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.5 - 0x1p-112 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.5 - 0x1p-23 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 - 0x1p-52 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 - 0x1p-63 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0.5 - 0x1p-63 i)":
+ildouble: 1
+ldouble: 1
+Test "Real part of: cacos (-0.5 - 1.0 i)":
+float: 1
+ifloat: 1
+Test "Imaginary part of: cacos (-0.5 - 1.0 i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0x0.fffffffffffff8p0 + 0x1p-52 i)":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (-0x0.fffffffffffff8p0 - 0x1p-52 i)":
+double: 1
+idouble: 1
+Test "Imaginary part of: cacos (-0x0.ffffffffffffffffffffffffffcp0 + 0x1p-105 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0x0.ffffffffffffffffffffffffffcp0 - 0x1p-105 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0x0.ffffffffffffffffp0 + 0x1p-63 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0x0.ffffffffffffffffp0 - 0x1p-63 i)":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: cacos (-0x0.ffffffp0 + 0x1p-23 i)":
 float: 2
 ifloat: 2
-Test "Imaginary part of: cacos (-0x0.ffffffp0 - 0x1p-23 i) == 3.141153467203602189751698864505105063797 + 2.714321200917194650737217746780928423385e-4 i":
+Test "Imaginary part of: cacos (-0x0.ffffffp0 - 0x1p-23 i)":
 float: 2
 ifloat: 2
-Test "Imaginary part of: cacos (-0x1.0000000000000000000000000001p0 + 0.0 i) == 3.141592653589793238462643383279502884197 - 1.962615573354718824241727964954454332780e-17 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.0000000000000000000000000001p0 + 0x1.fp-16385 i) == 3.141592653589793238462643383279502884197 - 1.962615573354718824241727964954454332780e-17 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.0000000000000000000000000001p0 + 0x1p-113 i) == 3.141592653589793233694780199536825402504 - 2.019699255375255198156433710951064632386e-17 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.0000000000000000000000000001p0 - 0.0 i) == 3.141592653589793238462643383279502884197 + 1.962615573354718824241727964954454332780e-17 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.0000000000000000000000000001p0 - 0x1.fp-16385 i) == 3.141592653589793238462643383279502884197 + 1.962615573354718824241727964954454332780e-17 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.0000000000000000000000000001p0 - 0x1p-113 i) == 3.141592653589793233694780199536825402504 + 2.019699255375255198156433710951064632386e-17 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.000002p0 + 0x1p-23 i) == 3.141370441751352383825802745874586120521 - 5.364668491573609633134147164031476452679e-4 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.000002p0 - 0x1p-23 i) == 3.141370441751352383825802745874586120521 + 5.364668491573609633134147164031476452679e-4 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-10 + 1.0 i) == 1.572134236154454360143880041170803681211 - 8.813742198809567991336704287826445879025e-1 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-10 - 1.0 i) == 1.572134236154454360143880041170803681211 + 8.813742198809567991336704287826445879025e-1 i":
-double: 1
-idouble: 1
-Test "Real part of: cacos (-0x1.fp-100 + 1.0 i) == 1.570796326794896619231321691640832196834 - 8.813735870195430252326093249797923090282e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1.fp-100 + 1.0 i) == 1.570796326794896619231321691640832196834 - 8.813735870195430252326093249797923090282e-1 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1.fp-100 - 1.0 i) == 1.570796326794896619231321691640832196834 + 8.813735870195430252326093249797923090282e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1.fp-100 - 1.0 i) == 1.570796326794896619231321691640832196834 + 8.813735870195430252326093249797923090282e-1 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1000 + 1.0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430252326093249797923090282e-1 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1000 - 1.0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430252326093249797923090282e-1 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-10000 + 1.0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430252326093249797923090282e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-10000 - 1.0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430252326093249797923090282e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1025 + 0.5 i) == 1.570796326794896619231321691639751442099 - 4.812118250596034474977589134243684231352e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1025 + 0x0.ffffffffffffffffffffffffffcp0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430252326093249797835932642e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1025 + 0x1.0000000000001p0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195431822418551933572895326024e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1025 + 1.0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430252326093249797923090282e-1 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1025 + 1.5 i) == 1.570796326794896619231321691639751442099 - 1.194763217287109304111930828519090523536 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1025 - 0.5 i) == 1.570796326794896619231321691639751442099 + 4.812118250596034474977589134243684231352e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1025 - 0x0.ffffffffffffffffffffffffffcp0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430252326093249797835932642e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1025 - 0x1.0000000000001p0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195431822418551933572895326024e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1025 - 1.0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430252326093249797923090282e-1 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-1025 - 1.5 i) == 1.570796326794896619231321691639751442099 + 1.194763217287109304111930828519090523536 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1.fp-129 + 0.5 i) == 1.570796326794896619231321691639751442101 - 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1.fp-129 + 0.5 i) == 1.570796326794896619231321691639751442101 - 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1.fp-129 + 0x0.ffffffp0 i) == 1.570796326794896619231321691639751442101 - 8.813735448726938863015878255140556727969e-1 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1.fp-129 + 0x1.000002p0 i) == 1.570796326794896619231321691639751442101 - 8.813736713132375348727889167749389235161e-1 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1.fp-129 + 0x1.fp-129 i) == 1.570796326794896619231321691639751442101 - 2.846900380897727558361783801085126250967e-39 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1.fp-129 + 0x1p-23 i) == 1.570796326794896619231321691639751442101 - 1.192092895507809676556842485683592032154e-7 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1.fp-129 + 1.0 i) == 1.570796326794896619231321691639751442101 - 8.813735870195430252326093249797923090282e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1.fp-129 + 1.0 i) == 1.570796326794896619231321691639751442101 - 8.813735870195430252326093249797923090282e-1 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 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
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1.fp-129 - 0.5 i) == 1.570796326794896619231321691639751442101 + 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1.fp-129 - 0.5 i) == 1.570796326794896619231321691639751442101 + 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1.fp-129 - 0x0.ffffffp0 i) == 1.570796326794896619231321691639751442101 + 8.813735448726938863015878255140556727969e-1 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1.fp-129 - 0x1.000002p0 i) == 1.570796326794896619231321691639751442101 + 8.813736713132375348727889167749389235161e-1 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1.fp-129 - 0x1.fp-129 i) == 1.570796326794896619231321691639751442101 + 2.846900380897727558361783801085126250967e-39 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1.fp-129 - 0x1p-23 i) == 1.570796326794896619231321691639751442101 + 1.192092895507809676556842485683592032154e-7 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1.fp-129 - 1.0 i) == 1.570796326794896619231321691639751442101 + 8.813735870195430252326093249797923090282e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1.fp-129 - 1.0 i) == 1.570796326794896619231321691639751442101 + 8.813735870195430252326093249797923090282e-1 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 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
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 + 0.5 i) == 1.570796326794896619231321691639751442099 - 4.812118250596034474977589134243684231352e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 + 0x0.ffffffffffffffffp0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430251942769895627079569917e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 + 0x1.0000000000000000000000000001p0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430252326093249797924452120e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 + 0x1.0000000000000002p0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430253092739958139610130980e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 + 1.0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430252326093249797923090282e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 + 1.5 i) == 1.570796326794896619231321691639751442099 - 1.194763217287109304111930828519090523536 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 - 0.5 i) == 1.570796326794896619231321691639751442099 + 4.812118250596034474977589134243684231352e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 - 0x0.ffffffffffffffffp0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430251942769895627079569917e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 - 0x1.0000000000000000000000000001p0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430252326093249797924452120e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 - 0x1.0000000000000002p0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430253092739958139610130980e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 - 1.0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430252326093249797923090282e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1.fp-16385 - 1.5 i) == 1.570796326794896619231321691639751442099 + 1.194763217287109304111930828519090523536 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1.fp-30 + 1.0 i) == 1.570796328070826603447840231892468927106 - 8.813735870195430258081932989769495326854e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1.fp-30 + 1.0 i) == 1.570796328070826603447840231892468927106 - 8.813735870195430258081932989769495326854e-1 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1.fp-30 - 1.0 i) == 1.570796328070826603447840231892468927106 + 8.813735870195430258081932989769495326854e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1.fp-30 - 1.0 i) == 1.570796328070826603447840231892468927106 + 8.813735870195430258081932989769495326854e-1 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-105 + 0.0 i) == 1.570796326794896619231321691639776094002 - 0.0 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-105 + 0.5 i) == 1.570796326794896619231321691639773491431 - 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1p-105 + 0.5 i) == 1.570796326794896619231321691639773491431 - 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-105 + 0x0.ffffffffffffffffffffffffffcp0 i) == 1.570796326794896619231321691639768873627 - 8.813735870195430252326093249797835932642e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-105 + 0x1p-105 i) == 1.570796326794896619231321691639776094002 - 2.465190328815661891911651766508706967729e-32 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-105 - 0.0 i) == 1.570796326794896619231321691639776094002 + 0.0 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-105 - 0.5 i) == 1.570796326794896619231321691639773491431 + 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1p-105 - 0.5 i) == 1.570796326794896619231321691639773491431 + 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-105 - 0x0.ffffffffffffffffffffffffffcp0 i) == 1.570796326794896619231321691639768873627 + 8.813735870195430252326093249797835932642e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-105 - 0x1p-105 i) == 1.570796326794896619231321691639776094002 + 2.465190328815661891911651766508706967729e-32 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-112 + 0.0 i) == 1.570796326794896619231321691639751634692 - 0.0 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-112 + 0.5 i) == 1.570796326794896619231321691639751614359 - 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-112 + 0.5 i) == 1.570796326794896619231321691639751614359 - 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-112 + 0x1p-112 i) == 1.570796326794896619231321691639751634692 - 1.925929944387235853055977942584927318538e-34 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-112 - 0.0 i) == 1.570796326794896619231321691639751634692 + 0.0 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-112 - 0.5 i) == 1.570796326794896619231321691639751614359 + 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-112 - 0.5 i) == 1.570796326794896619231321691639751614359 + 4.812118250596034474977589134243684231352e-1 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-112 - 0x1p-112 i) == 1.570796326794896619231321691639751634692 + 1.925929944387235853055977942584927318538e-34 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-113 + 0x1.0000000000000000000000000001p0 i) == 1.570796326794896619231321691639751510190 - 8.813735870195430252326093249797924452120e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1p-113 + 0x1.0000000000000000000000000001p0 i) == 1.570796326794896619231321691639751510190 - 8.813735870195430252326093249797924452120e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-113 - 0x1.0000000000000000000000000001p0 i) == 1.570796326794896619231321691639751510190 + 8.813735870195430252326093249797924452120e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1p-113 - 0x1.0000000000000000000000000001p0 i) == 1.570796326794896619231321691639751510190 + 8.813735870195430252326093249797924452120e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-23 + 0.0 i) == 1.570796446004186170012854035955502877351 - 0.0 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-23 + 0.5 i) == 1.570796433418926613232299739606181733819 - 4.812118250596059896127318386463676808798e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-23 + 0.5 i) == 1.570796433418926613232299739606181733819 - 4.812118250596059896127318386463676808798e-1 i":
-float: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-Test "Imaginary part of: cacos (-0x1p-23 + 0x0.ffffffp0 i) == 1.570796411088596153167306681647360823228 - 8.813735448726963984495965873956465777250e-1 i":
-double: 1
-idouble: 1
-Test "Real part of: cacos (-0x1p-23 + 0x1.fp-129 i) == 1.570796446004186170012854035955502877351 - 2.846900380897747786805634596726756660388e-39 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-23 + 0x1p-23 i) == 1.570796446004186170012007003008248567984 - 1.192092895507818146886315028596704749235e-7 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-23 - 0.0 i) == 1.570796446004186170012854035955502877351 + 0.0 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-23 - 0.5 i) == 1.570796433418926613232299739606181733819 + 4.812118250596059896127318386463676808798e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-23 - 0.5 i) == 1.570796433418926613232299739606181733819 + 4.812118250596059896127318386463676808798e-1 i":
-float: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-Test "Imaginary part of: cacos (-0x1p-23 - 0x0.ffffffp0 i) == 1.570796411088596153167306681647360823228 + 8.813735448726963984495965873956465777250e-1 i":
-double: 1
-idouble: 1
-Test "Real part of: cacos (-0x1p-23 - 0x1.fp-129 i) == 1.570796446004186170012854035955502877351 + 2.846900380897747786805634596726756660388e-39 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-23 - 0x1p-23 i) == 1.570796446004186170012007003008248567984 + 1.192092895507818146886315028596704749235e-7 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-52 + 0.0 i) == 1.570796326794896841275926616671059526825 - 0.0 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-52 + 0.5 i) == 1.570796326794896817834053951421591208280 - 4.812118250596034474977589134243772428682e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-52 + 0.5 i) == 1.570796326794896817834053951421591208280 - 4.812118250596034474977589134243772428682e-1 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-52 + 0x1p-52 i) == 1.570796326794896841275926616671059526825 - 2.220446049250313080847263336181677117148e-16 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-52 - 0.0 i) == 1.570796326794896841275926616671059526825 + 0.0 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-52 - 0.5 i) == 1.570796326794896817834053951421591208280 + 4.812118250596034474977589134243772428682e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-52 - 0.5 i) == 1.570796326794896817834053951421591208280 + 4.812118250596034474977589134243772428682e-1 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-52 - 0x1p-52 i) == 1.570796326794896841275926616671059526825 + 2.220446049250313080847263336181677117148e-16 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-63 + 0.0 i) == 1.570796326794896619339741908888301885499 - 0.0 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-63 + 0.5 i) == 1.570796326794896619328295682000973043547 - 4.812118250596034474977589134243684231373e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-63 + 0.5 i) == 1.570796326794896619328295682000973043547 - 4.812118250596034474977589134243684231373e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-63 + 0x0.ffffffffffffffffp0 i) == 1.570796326794896619307986362473920146173 - 8.813735870195430251942769895627079569937e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1p-63 + 0x1.0000000000000002p0 i) == 1.570796326794896619307986362473920146166 - 8.813735870195430253092739958139610131001e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-63 + 0x1p-63 i) == 1.570796326794896619339741908888301885499 - 1.084202172485504434007452800869941711430e-19 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-63 - 0.0 i) == 1.570796326794896619339741908888301885499 + 0.0 i":
-float: 1
-ifloat: 1
-Test "Real part of: cacos (-0x1p-63 - 0.5 i) == 1.570796326794896619328295682000973043547 + 4.812118250596034474977589134243684231373e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-63 - 0.5 i) == 1.570796326794896619328295682000973043547 + 4.812118250596034474977589134243684231373e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p-63 - 0x0.ffffffffffffffffp0 i) == 1.570796326794896619307986362473920146173 + 8.813735870195430251942769895627079569937e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1p-63 - 0x1.0000000000000002p0 i) == 1.570796326794896619307986362473920146166 + 8.813735870195430253092739958139610131001e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-0x1p-63 - 0x1p-63 i) == 1.570796326794896619339741908888301885499 + 1.084202172485504434007452800869941711430e-19 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-0x1p500 + 1.0 i) == 3.141592653589793238462643383279502884197 - 3.472667374605326000180332928505464606058e2 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1p500 - 1.0 i) == 3.141592653589793238462643383279502884197 + 3.472667374605326000180332928505464606058e2 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1p5000 + 1.0 i) == 3.141592653589793238462643383279502884197 - 3.466429049980286492395577839412341016946e3 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-0x1p5000 - 1.0 i) == 3.141592653589793238462643383279502884197 + 3.466429049980286492395577839412341016946e3 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-1.0 + 0.5 i) == 2.466703808003786858297978415967328452322 - 7.328576759736452608886724437653071523305e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-1.0 + 0x1.fp-10 i) == 3.098101355958774410750062883737683164607 - 4.350501469856803800217957402220976497152e-2 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-1.0 + 0x1.fp-30 i) == 3.141550174918818561961484385371624132331 - 4.247867098745151888768727039216644758847e-5 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-1.0 + 0x1p50 i) == 1.570796326794897507409741391764983781004 - 3.535050620855721078027883819436759661753e1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-1.0 + 0x1p500 i) == 1.570796326794896619231321691639751442099 - 3.472667374605326000180332928505464606058e2 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-1.0 + 0x1p5000 i) == 1.570796326794896619231321691639751442099 - 3.466429049980286492395577839412341016946e3 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-1.0 - 0.5 i) == 2.466703808003786858297978415967328452322 + 7.328576759736452608886724437653071523305e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-1.0 - 0x1.fp-10 i) == 3.098101355958774410750062883737683164607 + 4.350501469856803800217957402220976497152e-2 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-1.0 - 0x1.fp-30 i) == 3.141550174918818561961484385371624132331 + 4.247867098745151888768727039216644758847e-5 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-1.0 - 0x1p50 i) == 1.570796326794897507409741391764983781004 + 3.535050620855721078027883819436759661753e1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (-1.0 - 0x1p500 i) == 1.570796326794896619231321691639751442099 + 3.472667374605326000180332928505464606058e2 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-1.0 - 0x1p5000 i) == 1.570796326794896619231321691639751442099 + 3.466429049980286492395577839412341016946e3 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (-1.5 + +0 i) == pi - 0.9624236501192068949955178268487368462704 i":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (-2 - 3 i) == 2.1414491111159960199416055713254211 + 1.9833870299165354323470769028940395 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.0 + 0x0.ffffffffffffffffffffffffffcp0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430252326093249797835932642e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.0 + 0x0.ffffffffffffffffp0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430251942769895627079569917e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.0 + 0x1.0000000000000000000000000001p0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430252326093249797924452120e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.0 + 0x1.0000000000000002p0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195430253092739958139610130980e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.0 + 0x1.0000000000001p0 i) == 1.570796326794896619231321691639751442099 - 8.813735870195431822418551933572895326024e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.0 - 0x0.ffffffffffffffffffffffffffcp0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430252326093249797835932642e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.0 - 0x0.ffffffffffffffffp0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430251942769895627079569917e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.0 - 0x1.0000000000000000000000000001p0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430252326093249797924452120e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.0 - 0x1.0000000000000002p0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195430253092739958139610130980e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.0 - 0x1.0000000000001p0 i) == 1.570796326794896619231321691639751442099 + 8.813735870195431822418551933572895326024e-1 i":
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.25 + 1.0 i) == 1.394493894017929688812643125003661339452 - 8.924633639033482359562124741744951972772e-1 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.25 - 1.0 i) == 1.394493894017929688812643125003661339452 + 8.924633639033482359562124741744951972772e-1 i":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (0.5 + +0 i) == 1.047197551196597746154214461093167628066 - 0 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (0.5 + 0x1.fp-1025 i) == 1.047197551196597746154214461093167628066 - 6.222508863508420569166420770843207333493e-309 i":
-double: 1
-idouble: 1
-Test "Real part of: cacos (0.5 + 0x1.fp-129 i) == 1.047197551196597746154214461093167628066 - 3.287317402534702257036015056278368274737e-39 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: cacos (0.5 + 0x1.fp-129 i) == 1.047197551196597746154214461093167628066 - 3.287317402534702257036015056278368274737e-39 i":
-double: 1
-idouble: 1
-Test "Real part of: cacos (0.5 + 0x1p-105 i) == 1.047197551196597746154214461093167628066 - 2.846556599890768890940941645338546615370e-32 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: cacos (0.5 + 0x1p-105 i) == 1.047197551196597746154214461093167628066 - 2.846556599890768890940941645338546615370e-32 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (0.5 + 0x1p-112 i) == 1.047197551196597746154214461093167628066 - 2.223872343664663196047610660420739543258e-34 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: cacos (0.5 + 0x1p-112 i) == 1.047197551196597746154214461093167628066 - 2.223872343664663196047610660420739543258e-34 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Imaginary part of: cacos (0.5 + 0x1p-23 i) == 1.047197551196603215914744618665204532273 - 1.376510308240943236356088341381173571841e-7 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (0.5 + 0x1p-52 i) == 1.047197551196597746154214461093186605110 - 2.563950248511418570403591756798643804971e-16 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (0.5 + 0x1p-63 i) == 1.047197551196597746154214461093167628070 - 1.251928832280966098829878787499365228659e-19 i":
-double: 1
-idouble: 1
-Test "Imaginary part of: cacos (0.5 + 0x1p-63 i) == 1.047197551196597746154214461093167628070 - 1.251928832280966098829878787499365228659e-19 i":
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (0.5 + 1.0 i) == 1.221357263937683325603909865564381489366 - 9.261330313501824245501244453057873152694e-1 i":
-float: 1
-ifloat: 1
-Test "Imaginary part of: cacos (0.5 + 1.0 i) == 1.221357263937683325603909865564381489366 - 9.261330313501824245501244453057873152694e-1 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: cacos (0.5 - 0 i) == 1.047197551196597746154214461093167628066 + +0 i":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1

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