[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commits] r22640 - in /fsf/trunk/libc: ./ benchtests/ elf/ manual/ math/ math/bits/ misc/ ports/ ports/sysdeps/arm/ ports/sysdeps/arm/...
- To: commits@xxxxxxxxxx
- Subject: [Commits] r22640 - in /fsf/trunk/libc: ./ benchtests/ elf/ manual/ math/ math/bits/ misc/ ports/ ports/sysdeps/arm/ ports/sysdeps/arm/...
- From: eglibc@xxxxxxxxxx
- Date: Sat, 16 Mar 2013 00:02:49 -0000
Author: eglibc
Date: Sat Mar 16 00:02:47 2013
New Revision: 22640
Log:
Import glibc-mainline for 2013-03-16
Added:
fsf/trunk/libc/benchtests/
fsf/trunk/libc/benchtests/Makefile
fsf/trunk/libc/benchtests/bench-skeleton.c
fsf/trunk/libc/benchtests/exp-inputs
fsf/trunk/libc/benchtests/pow-inputs
fsf/trunk/libc/math/test-snan.c
fsf/trunk/libc/scripts/bench.pl (with props)
Removed:
fsf/trunk/libc/sysdeps/powerpc/fpu/test-powerpc-snan.c
Modified:
fsf/trunk/libc/ChangeLog
fsf/trunk/libc/Makefile.in
fsf/trunk/libc/NEWS
fsf/trunk/libc/Rules
fsf/trunk/libc/elf/dl-support.c
fsf/trunk/libc/manual/nptl.texi
fsf/trunk/libc/math/Makefile
fsf/trunk/libc/math/basic-test.c
fsf/trunk/libc/math/bits/mathcalls.h
fsf/trunk/libc/math/gen-libm-test.pl
fsf/trunk/libc/math/libm-test.inc
fsf/trunk/libc/math/test-misc.c
fsf/trunk/libc/misc/tst-efgcvt.c
fsf/trunk/libc/ports/ChangeLog.arm
fsf/trunk/libc/ports/ChangeLog.mips
fsf/trunk/libc/ports/sysdeps/arm/__longjmp.S
fsf/trunk/libc/ports/sysdeps/arm/add_n.S
fsf/trunk/libc/ports/sysdeps/arm/addmul_1.S
fsf/trunk/libc/ports/sysdeps/arm/arm-mcount.S
fsf/trunk/libc/ports/sysdeps/arm/armv6/rawmemchr.S
fsf/trunk/libc/ports/sysdeps/arm/armv6/strchr.S
fsf/trunk/libc/ports/sysdeps/arm/armv6/strcpy.S
fsf/trunk/libc/ports/sysdeps/arm/armv6/strlen.S
fsf/trunk/libc/ports/sysdeps/arm/armv6/strrchr.S
fsf/trunk/libc/ports/sysdeps/arm/armv6t2/memchr.S
fsf/trunk/libc/ports/sysdeps/arm/memcpy.S
fsf/trunk/libc/ports/sysdeps/arm/memmove.S
fsf/trunk/libc/ports/sysdeps/arm/memset.S
fsf/trunk/libc/ports/sysdeps/arm/setjmp.S
fsf/trunk/libc/ports/sysdeps/arm/strlen.S
fsf/trunk/libc/ports/sysdeps/arm/submul_1.S
fsf/trunk/libc/ports/sysdeps/arm/sysdep.h
fsf/trunk/libc/ports/sysdeps/mips/bits/nan.h
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/mman.h
fsf/trunk/libc/stdio-common/printf_fp.c
fsf/trunk/libc/stdio-common/tstdiomisc.c
fsf/trunk/libc/sysdeps/generic/ldsodefs.h
fsf/trunk/libc/sysdeps/ieee754/bits/nan.h
fsf/trunk/libc/sysdeps/powerpc/bits/fenv.h
fsf/trunk/libc/sysdeps/powerpc/fpu/Makefile
fsf/trunk/libc/sysdeps/powerpc/fpu/fenv_libc.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/ldsodefs.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/powerpc/gettimeofday.c
fsf/trunk/libc/sysdeps/x86_64/preconfigure
Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Sat Mar 16 00:02:47 2013
@@ -1,3 +1,130 @@
+2013-03-15 Roland McGrath <roland@xxxxxxxxxxxxx>
+
+ * elf/dl-support.c (_dl_aux_init): Ignore zero value for AT_PAGESZ.
+ (_dl_non_dynamic_init): Don't set _dl_pagesize; it will never be
+ zero since it's initialized to EXEC_PAGESIZE.
+
+ * sysdeps/unix/sysv/linux/ldsodefs.h
+ (_dl_non_dynamic_init, _dl_aux_init): Move declarations to ...
+ * sysdeps/generic/ldsodefs.h: ... here.
+
+2013-03-15 Thomas Schwinge <thomas@xxxxxxxxxxxxxxxx>
+
+ * math/libm-test.inc (ldexp_test): Add missing START/END markers.
+
+ * sysdeps/powerpc/fpu/test-powerpc-snan.c: Rename to
+ math/test-snan.c.
+ * math/test-snan.c: Renamed from
+ sysdeps/powerpc/fpu/test-powerpc-snan.c.
+ * math/Makefile (tests): Add test-snan.
+ * sysdeps/powerpc/fpu/Makefile (libm-tests): Don't add
+ test-powerpc-snan.
+
+ * math/basic-test.c (TEST_FUNC): Replace NANFUNC argument with
+ SUFFIX. Initialize qNaN_var with __builtin_nan family of
+ functions.
+ (TEST_TRUNC): Add SUFFIX argument. Initialize qNaN_var with
+ __builtin_nan family of functions.
+ * math/libm-test.inc (initialize): Initialize qnan_value with
+ __builtin_nan family of functions.
+ * sysdeps/powerpc/fpu/test-powerpc-snan.c (SNANf, SNAN, SNANl):
+ Remove variables.
+ (init_signaling_nan, snan_float, snan_double, snan_ldouble):
+ Remove functions.
+ (TEST_FUNC): Add SUFFIX argument. Move sNaN_var into static
+ storage class. Initialize qNaN_var and sNaN_var with
+ __builtin_nan and __builtin_nans families of functions,
+ respectively.
+
+ * math/libm-test.inc (acosh_test): Also test with qNaN input.
+ (sqrt_test): Remove duplicate test with qNaN input.
+ (lrint_test, llrint_test, lround_test, llround_test, rint_test)
+ (round_test, signbit_test, significand_test): Note missing +/-Inf
+ as well as qNaN tests.
+
+ * math/basic-test.c (TEST_FUNC, TEST_TRUNC): Rename NaN_var to
+ qNaN_var. Fix a few strings, too.
+ * math/libm-test.inc (nan_value): Rename to qnan_value.
+ * math/gen-libm-test.pl (%beautify): Adjust to that.
+ * math/bits/mathcalls.h (nan): Refer to qNaN instead of NaN.
+ * math/test-misc.c (main): Likewise.
+ * sysdeps/ieee754/bits/nan.h (__nan_bytes, __nan_union): Rename
+ to __qnan_bytes, and __qnan_union, respectively.
+ * ports/sysdeps/mips/bits/nan.h (__nan_bytes, __nan_union):
+ Likewise.
+ * stdio-common/tstdiomisc.c (nanval, lnanval): Rename to qnanval,
+ and lqnanval, respectively.
+ * sysdeps/powerpc/bits/fenv.h: Fix usage of NaN/qNaN/sNaN.
+ * sysdeps/powerpc/fpu/fenv_libc.h: Likewise.
+ * sysdeps/powerpc/fpu/test-powerpc-snan.c (TEST_FUNC): Likewise,
+ and rename NaN_var to qNaN_var, and SNaN_var to sNaN_var.
+
+ * math/libm-test.inc (fpstack_test) [__x86_64__]: Enable test.
+ * math/test-misc.c (main) [__x86_64__]: Enable test for long
+ doubles.
+
+ * math/test-misc.c (main): Fix copy'n'pastos.
+ * misc/tst-efgcvt.c (special): Likewise.
+
+ * stdio-common/printf_fp.c (__isinfl_internal, __isnanl_internal):
+ Remove declarations.
+
+2013-03-15 Siddhesh Poyarekar <siddhesh@xxxxxxxxxx>
+
+ * sysdeps/ieee754/dbl-64/mpa-arch.h: Remove.
+ * sysdeps/ieee754/dbl-64/mpa.c: Revert last change.
+ * sysdeps/ieee754/dbl-64/mpa.h: Revert last change.
+ * sysdeps/powerpc/power4/fpu/mpa-arch.h: Remove.
+
+2013-03-15 Adhemerval Zanella <azanella@xxxxxxxxxxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h (VDSO_IFUNC_RET): Add
+ macro to return vdso values correctly in IFUNC implementations.
+ * sysdeps/unix/sysv/linux/powerpc/gettimeofday.c (__gettimeofday):
+ Optimization by using IFUNC.
+
+2013-03-15 Siddhesh Poyarekar <siddhesh@xxxxxxxxxx>
+ Richard Henderson <rth@xxxxxxxxxx>
+ Tulio Magno Quites Machado Filho <tuliom@xxxxxxxxxxxxxxxxxx>
+
+ * Makefile.in (bench): New target.
+ * NEWS: Mention the benchmark framework.
+ * Rules (bench): Likewise.
+ (binaries-bench): Generate binaries for functions to
+ benchmark.
+ * benchtests/Makefile: New makefile for benchmark tests.
+ * benchtests/bench-skeleton.c: New skeleton file for benchmark
+ programs.
+ * benchtests/exp-inputs: New input file for EXP function.
+ * benchtests/pow-inputs: New input file for POW function.
+ * scripts/bench.pl: New script to generate source files for
+ benchmark programs.
+
+2013-03-15 Siddhesh Poyarekar <siddhesh@xxxxxxxxxx>
+
+ * sysdeps/ieee754/dbl-64/mpa-arch.h: New file.
+ * sysdeps/ieee754/dbl-64/mpa.c (norm): Use MANTISSA_T to store
+ computations on mantissa. Use macros for rounding and
+ division.
+ (denorm): Likewise.
+ (__dbl_mp): Likewise.
+ (add_magnitudes): Likewise.
+ (sub_magnitudes): Likewise.
+ (__mul): Likewise.
+ (__sqr): Likewise.
+ * sysdeps/ieee754/dbl-64/mpa.h: Include mpa-arch.h. Define
+ powers of two in terms of TWOPOW macro.
+ (mp_no): Make type of mantissa as MANTISSA_T.
+ [!RADIXI]: Define RADIXI.
+ [!TWO52]: Define TWO52.
+ * sysdeps/powerpc/power4/fpu/mpa-arch.h: New file.
+
+ * manual/nptl.texi (cindex): Modify threads to pthreads.
+
+2013-03-15 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/x86_64/preconfigure: Regenerated.
+
2013-03-14 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
[BZ #14155]
Modified: fsf/trunk/libc/Makefile.in
==============================================================================
--- fsf/trunk/libc/Makefile.in (original)
+++ fsf/trunk/libc/Makefile.in Sat Mar 16 00:02:47 2013
@@ -3,7 +3,7 @@
# Uncomment the line below if you want to do parallel build.
# PARALLELMFLAGS = -j 4
-.PHONY: all install
+.PHONY: all install bench
all .DEFAULT:
$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
@@ -11,3 +11,6 @@
install:
LANGUAGE=C LC_ALL=C; export LANGUAGE LC_ALL; \
$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
+
+bench:
+ $(MAKE) -C $(srcdir)/benchtests $(PARALLELMFLAGS) objdir=`pwd` $@
Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Sat Mar 16 00:02:47 2013
@@ -22,6 +22,8 @@
* Support for priority inherited mutexes in pthread condition variables on
non-x86 architectures.
+
+* Added a benchmark framework to track performance of functions in glibc.
Version 2.17
Modified: fsf/trunk/libc/Rules
==============================================================================
--- fsf/trunk/libc/Rules (original)
+++ fsf/trunk/libc/Rules Sat Mar 16 00:02:47 2013
@@ -83,7 +83,7 @@
# This makes all the auxiliary and test programs.
-.PHONY: others tests
+.PHONY: others tests bench
ifeq ($(multi-arch),no)
tests := $(filter-out $(tests-ifunc), $(tests))
xtests := $(filter-out $(xtests-ifunc), $(xtests))
@@ -188,6 +188,31 @@
$(make-test-out) > $@
endif # tests
+
+# Build and run benchmark programs.
+binaries-bench := $(addprefix $(objpfx)bench-,$(bench))
+
+run-bench = $(test-wrapper-env) \
+ GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \
+ $($*-ENV) $(run-via-rtld-prefix) $${run}
+
+bench: $(binaries-bench)
+ if [ -f $(objpfx)bench.out ]; then \
+ mv -f $(objpfx)bench.out $(objpfx)bench.out.old; \
+ fi
+ for run in $^; do \
+ eval $(run-bench) >> $(objpfx)bench.out; \
+ done
+
+$(binaries-bench): %: %.o \
+ $(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
+ $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
+ $(+link)
+
+$(objpfx)bench-%.c: %-inputs bench-skeleton.c
+ $(..)scripts/bench.pl $(patsubst %-inputs,%,$<) \
+ $($*-ITER) $($*-ARGLIST) $($*-RET) > $@
+
.PHONY: distclean realclean subdir_distclean subdir_realclean \
subdir_clean subdir_mostlyclean subdir_testclean
Added: fsf/trunk/libc/benchtests/Makefile
==============================================================================
--- fsf/trunk/libc/benchtests/Makefile (added)
+++ fsf/trunk/libc/benchtests/Makefile Sat Mar 16 00:02:47 2013
@@ -1,0 +1,59 @@
+# Copyright (C) 2013 Free Software Foundation, Inc.
+# This file is part of the GNU C Library.
+
+# The GNU C Library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+
+# The GNU C Library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+
+# You should have received a copy of the GNU Lesser General Public
+# License along with the GNU C Library; if not, see
+# <http://www.gnu.org/licenses/>.
+
+
+# Makefile for benchmark tests. The only useful target here is `bench`.
+
+# Adding a new function `foo`:
+# ---------------------------
+
+# - Append the function name to the bench variable
+
+# - Define foo-ITER with the number of iterations you want to run. Keep it
+# high enough that the overhead of clock_gettime is only a small fraction of
+# the total run time of the test.
+
+# - Define foo-ARGLIST as a colon separated list of types of the input
+# arguments. Use `void` if function does not take any inputs. Put in quotes
+# if the input argument is a pointer, e.g.:
+
+# malloc-ARGLIST: "void *"
+
+# - Define foo-RET as the type the function returns. Skip if the function
+# returns void. One could even skip foo-ARGLIST if the function does not
+# take any inputs AND the function returns void.
+
+
+# - Make a file called `foo-inputs` with one input value per line, an input
+# being a comma separated list of arguments to be passed into the function.
+# See pow-inputs for an example.
+
+subdir := benchtests
+bench := exp pow
+
+exp-ITER = 100000
+exp-ARGLIST = double
+exp-RET = double
+LDFLAGS-bench-exp = -lm
+
+pow-ITER = 100000
+pow-ARGLIST = double:double
+pow-RET = double
+LDFLAGS-bench-pow = -lm
+
+include ../Makeconfig
+include ../Rules
Added: fsf/trunk/libc/benchtests/bench-skeleton.c
==============================================================================
--- fsf/trunk/libc/benchtests/bench-skeleton.c (added)
+++ fsf/trunk/libc/benchtests/bench-skeleton.c Sat Mar 16 00:02:47 2013
@@ -1,0 +1,75 @@
+/* Skeleton for benchmark programs.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <string.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <time.h>
+#include <inttypes.h>
+
+int
+main (int argc, char **argv)
+{
+ unsigned long i, j, k;
+ uint64_t total = 0, max = 0, min = 0x7fffffffffffffff;
+ struct timespec start, end;
+
+ memset (&start, 0, sizeof (start));
+ memset (&end, 0, sizeof (end));
+
+ clock_getres (CLOCK_PROCESS_CPUTIME_ID, &start);
+
+ /* Measure 1000 times the resolution of the clock. So for a 1ns resolution
+ clock, we measure 1000 iterations of the function call at a time.
+ Measurements close to the minimum clock resolution won't make much sense,
+ but it's better than having nothing at all. */
+ unsigned long iters = 1000 * start.tv_nsec;
+ unsigned long total_iters = ITER / iters;
+
+ for (i = 0; i < NUM_SAMPLES; i++)
+ {
+ for (j = 0; j < total_iters; j ++)
+ {
+ clock_gettime (CLOCK_PROCESS_CPUTIME_ID, &start);
+ for (k = 0; k < iters; k++)
+ BENCH_FUNC(i);
+ clock_gettime (CLOCK_PROCESS_CPUTIME_ID, &end);
+
+ uint64_t cur = (end.tv_nsec - start.tv_nsec
+ + ((end.tv_sec - start.tv_sec)
+ * (uint64_t) 1000000000));
+
+ if (cur > max)
+ max = cur;
+
+ if (cur < min)
+ min = cur;
+
+ total += cur;
+ }
+ }
+
+ double d_total_s = total * 1e-9;
+ double d_iters = iters;
+ double d_total_i = (double)ITER * NUM_SAMPLES;
+ printf (FUNCNAME ": ITERS:%g: TOTAL:%gs, MAX:%gns, MIN:%gns, %g iter/s\n",
+ d_total_i, d_total_s, max / d_iters, min / d_iters,
+ d_total_i / d_total_s);
+
+ return 0;
+}
Added: fsf/trunk/libc/benchtests/exp-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/exp-inputs (added)
+++ fsf/trunk/libc/benchtests/exp-inputs Sat Mar 16 00:02:47 2013
@@ -1,0 +1,1 @@
+708.00096423260981737257679924368858
Added: fsf/trunk/libc/benchtests/pow-inputs
==============================================================================
--- fsf/trunk/libc/benchtests/pow-inputs (added)
+++ fsf/trunk/libc/benchtests/pow-inputs Sat Mar 16 00:02:47 2013
@@ -1,0 +1,1 @@
+1.0000000000000020, 1.5
Modified: fsf/trunk/libc/elf/dl-support.c
==============================================================================
--- fsf/trunk/libc/elf/dl-support.c (original)
+++ fsf/trunk/libc/elf/dl-support.c Sat Mar 16 00:02:47 2013
@@ -198,7 +198,8 @@
switch (av->a_type)
{
case AT_PAGESZ:
- GLRO(dl_pagesize) = av->a_un.a_val;
+ if (av->a_un.a_val != 0)
+ GLRO(dl_pagesize) = av->a_un.a_val;
break;
case AT_CLKTCK:
GLRO(dl_clktck) = av->a_un.a_val;
@@ -266,9 +267,6 @@
if (HP_TIMING_AVAIL)
HP_TIMING_NOW (_dl_cpuclock_offset);
- if (!_dl_pagesize)
- _dl_pagesize = __getpagesize ();
-
_dl_verbose = *(getenv ("LD_WARN") ?: "") == '\0' ? 0 : 1;
/* Set up the data structures for the system-supplied DSO early,
Modified: fsf/trunk/libc/manual/nptl.texi
==============================================================================
--- fsf/trunk/libc/manual/nptl.texi (original)
+++ fsf/trunk/libc/manual/nptl.texi Sat Mar 16 00:02:47 2013
@@ -2,7 +2,7 @@
@c @node POSIX Threads, , Cryptographic Functions, Top
@chapter POSIX Threads
@c %MENU% POSIX Threads
-@cindex threads
+@cindex pthreads
This chapter describes the @glibcadj{} POSIX Thread implementation.
Modified: fsf/trunk/libc/math/Makefile
==============================================================================
--- fsf/trunk/libc/math/Makefile (original)
+++ fsf/trunk/libc/math/Makefile Sat Mar 16 00:02:47 2013
@@ -88,7 +88,7 @@
tests = test-matherr test-fenv atest-exp atest-sincos atest-exp2 basic-test \
test-misc test-fpucw tst-definitions test-tgmath test-tgmath-ret \
bug-nextafter bug-nexttoward bug-tgmath1 test-tgmath-int \
- test-tgmath2 test-powl tst-CMPLX tst-CMPLX2
+ test-tgmath2 test-powl tst-CMPLX tst-CMPLX2 test-snan
# We do the `long double' tests only if this data type is available and
# distinct from `double'.
test-longdouble-yes = test-ldouble test-ildoubl
Modified: fsf/trunk/libc/math/basic-test.c
==============================================================================
--- fsf/trunk/libc/math/basic-test.c (original)
+++ fsf/trunk/libc/math/basic-test.c Sat Mar 16 00:02:47 2013
@@ -32,40 +32,40 @@
}
}
-#define TEST_FUNC(NAME, FLOAT, NANFUNC, EPSILON, HUGEVAL) \
+#define TEST_FUNC(NAME, FLOAT, SUFFIX, EPSILON, HUGEVAL) \
static void \
NAME (void) \
{ \
/* Variables are declared volatile to forbid some compiler \
optimizations. */ \
- volatile FLOAT Inf_var, NaN_var, zero_var, one_var; \
+ volatile FLOAT Inf_var, qNaN_var, zero_var, one_var; \
FLOAT x1, x2; \
\
zero_var = 0.0; \
one_var = 1.0; \
- NaN_var = zero_var / zero_var; \
+ qNaN_var = __builtin_nan ## SUFFIX (""); \
Inf_var = one_var / zero_var; \
\
(void) &zero_var; \
(void) &one_var; \
- (void) &NaN_var; \
+ (void) &qNaN_var; \
(void) &Inf_var; \
\
\
check (#FLOAT " isinf (inf) == 1", isinf (Inf_var) == 1); \
check (#FLOAT " isinf (-inf) == -1", isinf (-Inf_var) == -1); \
check (#FLOAT " !isinf (1)", !(isinf (one_var))); \
- check (#FLOAT " !isinf (NaN)", !(isinf (NaN_var))); \
+ check (#FLOAT " !isinf (qNaN)", !(isinf (qNaN_var))); \
\
- check (#FLOAT " isnan (NaN)", isnan (NaN_var)); \
- check (#FLOAT " isnan (-NaN)", isnan (-NaN_var)); \
+ check (#FLOAT " isnan (qNaN)", isnan (qNaN_var)); \
+ check (#FLOAT " isnan (-qNaN)", isnan (-qNaN_var)); \
check (#FLOAT " !isnan (1)", !(isnan (one_var))); \
check (#FLOAT " !isnan (inf)", !(isnan (Inf_var))); \
\
check (#FLOAT " inf == inf", Inf_var == Inf_var); \
check (#FLOAT " -inf == -inf", -Inf_var == -Inf_var); \
check (#FLOAT " inf != -inf", Inf_var != -Inf_var); \
- check (#FLOAT " NaN != NaN", NaN_var != NaN_var); \
+ check (#FLOAT " qNaN != qNaN", qNaN_var != qNaN_var); \
\
/* \
the same tests but this time with NAN from <bits/nan.h> \
@@ -80,11 +80,12 @@
/* \
And again with the value returned by the `nan' function. \
*/ \
- check (#FLOAT " isnan (NAN)", isnan (NANFUNC (""))); \
- check (#FLOAT " isnan (-NAN)", isnan (-NANFUNC (""))); \
- check (#FLOAT " !isinf (NAN)", !(isinf (NANFUNC ("")))); \
- check (#FLOAT " !isinf (-NAN)", !(isinf (-NANFUNC ("")))); \
- check (#FLOAT " NAN != NAN", NANFUNC ("") != NANFUNC ("")); \
+ check (#FLOAT " isnan (nan (\"\"))", isnan (nan ## SUFFIX (""))); \
+ check (#FLOAT " isnan (-nan (\"\"))", isnan (-nan ## SUFFIX (""))); \
+ check (#FLOAT " !isinf (nan (\"\"))", !(isinf (nan ## SUFFIX ("")))); \
+ check (#FLOAT " !isinf (-nan (\"\"))", !(isinf (-nan ## SUFFIX ("")))); \
+ check (#FLOAT " nan (\"\") != nan (\"\")", \
+ nan ## SUFFIX ("") != nan ## SUFFIX ("")); \
\
/* test if EPSILON is ok */ \
x1 = 1.0; \
@@ -102,34 +103,34 @@
check (#FLOAT " isinf (-HUGE_VALx) == -1", isinf (x1) == -1); \
}
-#define TEST_TRUNC(NAME, FLOAT, DOUBLE) \
+#define TEST_TRUNC(NAME, FLOAT, DOUBLE, SUFFIX) \
void \
NAME (void) \
{ \
- volatile DOUBLE Inf_var, NaN_var, zero_var, one_var; \
+ volatile DOUBLE Inf_var, qNaN_var, zero_var, one_var; \
FLOAT x1, x2; \
\
zero_var = 0.0; \
one_var = 1.0; \
- NaN_var = zero_var / zero_var; \
+ qNaN_var = __builtin_nan ## SUFFIX (""); \
Inf_var = one_var / zero_var; \
\
- (void) &NaN_var; \
+ (void) &qNaN_var; \
(void) &Inf_var; \
\
- x1 = (FLOAT) NaN_var; \
- check (" "#FLOAT" x = ("#FLOAT") ("#DOUBLE") NaN", isnan (x1) != 0); \
+ x1 = (FLOAT) qNaN_var; \
+ check (" "#FLOAT" x = ("#FLOAT") ("#DOUBLE") qNaN", isnan (x1) != 0); \
x2 = (FLOAT) Inf_var; \
check (" "#FLOAT" x = ("#FLOAT") ("#DOUBLE") Inf", isinf (x2) != 0); \
}
-TEST_FUNC (float_test, float, nanf, FLT_EPSILON, HUGE_VALF)
-TEST_FUNC (double_test, double, nan, DBL_EPSILON, HUGE_VAL)
-TEST_TRUNC (truncdfsf_test, float, double)
+TEST_FUNC (float_test, float, f, FLT_EPSILON, HUGE_VALF)
+TEST_FUNC (double_test, double, , DBL_EPSILON, HUGE_VAL)
+TEST_TRUNC (truncdfsf_test, float, double, )
#ifndef NO_LONG_DOUBLE
-TEST_FUNC (ldouble_test, long double, nanl, LDBL_EPSILON, HUGE_VALL)
-TEST_TRUNC (trunctfsf_test, float, long double)
-TEST_TRUNC (trunctfdf_test, double, long double)
+TEST_FUNC (ldouble_test, long double, l, LDBL_EPSILON, HUGE_VALL)
+TEST_TRUNC (trunctfsf_test, float, long double, l)
+TEST_TRUNC (trunctfdf_test, double, long double, l)
#endif
int
Modified: fsf/trunk/libc/math/bits/mathcalls.h
==============================================================================
--- fsf/trunk/libc/math/bits/mathcalls.h (original)
+++ fsf/trunk/libc/math/bits/mathcalls.h Sat Mar 16 00:02:47 2013
@@ -220,7 +220,7 @@
#ifdef __USE_ISOC99
__BEGIN_NAMESPACE_C99
-/* Return representation of NaN for double type. */
+/* Return representation of qNaN for double type. */
__MATHCALLX (nan,, (const char *__tagb), (__const__));
__END_NAMESPACE_C99
#endif
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 Sat Mar 16 00:02:47 2013
@@ -58,7 +58,7 @@
"plus_zero" => "+0",
"minus_infty" => "-inf",
"plus_infty" => "inf",
- "nan_value" => "NaN",
+ "qnan_value" => "qNaN",
"M_El" => "e",
"M_E2l" => "e^2",
"M_E3l" => "e^3",
Modified: fsf/trunk/libc/math/libm-test.inc
==============================================================================
--- fsf/trunk/libc/math/libm-test.inc (original)
+++ fsf/trunk/libc/math/libm-test.inc Sat Mar 16 00:02:47 2013
@@ -224,7 +224,7 @@
static int ignore_max_ulp; /* Should we ignore max_ulp? */
static FLOAT minus_zero, plus_zero;
-static FLOAT plus_infty, minus_infty, nan_value, max_value, min_value;
+static FLOAT plus_infty, minus_infty, qnan_value, max_value, min_value;
static FLOAT min_subnorm_value;
static FLOAT max_error, real_max_error, imag_max_error;
@@ -361,7 +361,7 @@
static void
fpstack_test (const char *test_name)
{
-#ifdef i386
+#if defined (__i386__) || defined (__x86_64__)
static int old_stack;
int sw;
@@ -805,15 +805,15 @@
START (acos);
- TEST_f_f (acos, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_f_f (acos, minus_infty, nan_value, INVALID_EXCEPTION);
- TEST_f_f (acos, nan_value, nan_value);
+ TEST_f_f (acos, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (acos, minus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (acos, qnan_value, qnan_value);
/* |x| > 1: */
- TEST_f_f (acos, 1.125L, nan_value, INVALID_EXCEPTION);
- TEST_f_f (acos, -1.125L, nan_value, INVALID_EXCEPTION);
- TEST_f_f (acos, max_value, nan_value, INVALID_EXCEPTION);
- TEST_f_f (acos, -max_value, nan_value, INVALID_EXCEPTION);
+ TEST_f_f (acos, 1.125L, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (acos, -1.125L, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (acos, max_value, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (acos, -max_value, qnan_value, INVALID_EXCEPTION);
TEST_f_f (acos, 0, M_PI_2l);
TEST_f_f (acos, minus_zero, M_PI_2l);
@@ -971,11 +971,12 @@
START (acosh);
TEST_f_f (acosh, plus_infty, plus_infty);
- TEST_f_f (acosh, minus_infty, nan_value, INVALID_EXCEPTION);
+ TEST_f_f (acosh, minus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (acosh, qnan_value, qnan_value);
/* x < 1: */
- TEST_f_f (acosh, -1.125L, nan_value, INVALID_EXCEPTION);
- TEST_f_f (acosh, -max_value, nan_value, INVALID_EXCEPTION);
+ TEST_f_f (acosh, -1.125L, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (acosh, -max_value, qnan_value, INVALID_EXCEPTION);
TEST_f_f (acosh, 1, 0);
TEST_f_f (acosh, 7, 2.63391579384963341725009269461593689L);
@@ -994,15 +995,15 @@
START (asin);
- TEST_f_f (asin, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_f_f (asin, minus_infty, nan_value, INVALID_EXCEPTION);
- TEST_f_f (asin, nan_value, nan_value);
-
- /* asin x == NaN plus invalid exception for |x| > 1. */
- TEST_f_f (asin, 1.125L, nan_value, INVALID_EXCEPTION);
- TEST_f_f (asin, -1.125L, nan_value, INVALID_EXCEPTION);
- TEST_f_f (asin, max_value, nan_value, INVALID_EXCEPTION);
- TEST_f_f (asin, -max_value, nan_value, INVALID_EXCEPTION);
+ TEST_f_f (asin, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (asin, minus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (asin, qnan_value, qnan_value);
+
+ /* asin x == qNaN plus invalid exception for |x| > 1. */
+ TEST_f_f (asin, 1.125L, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (asin, -1.125L, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (asin, max_value, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (asin, -max_value, qnan_value, INVALID_EXCEPTION);
TEST_f_f (asin, 0, 0);
TEST_f_f (asin, minus_zero, minus_zero);
@@ -1164,7 +1165,7 @@
TEST_f_f (asinh, plus_infty, plus_infty);
TEST_f_f (asinh, minus_infty, minus_infty);
#endif
- TEST_f_f (asinh, nan_value, nan_value);
+ TEST_f_f (asinh, qnan_value, qnan_value);
TEST_f_f (asinh, 0.75L, 0.693147180559945309417232121458176568L);
END (asinh);
@@ -1186,7 +1187,7 @@
TEST_f_f (atan, plus_infty, M_PI_2l);
TEST_f_f (atan, minus_infty, -M_PI_2l);
- TEST_f_f (atan, nan_value, nan_value);
+ TEST_f_f (atan, qnan_value, qnan_value);
TEST_f_f (atan, max_value, M_PI_2l);
TEST_f_f (atan, -max_value, -M_PI_2l);
@@ -1225,13 +1226,13 @@
TEST_f_f (atanh, 1, plus_infty, DIVIDE_BY_ZERO_EXCEPTION);
TEST_f_f (atanh, -1, minus_infty, DIVIDE_BY_ZERO_EXCEPTION);
- TEST_f_f (atanh, nan_value, nan_value);
-
- /* atanh (x) == NaN plus invalid exception if |x| > 1. */
- TEST_f_f (atanh, 1.125L, nan_value, INVALID_EXCEPTION);
- TEST_f_f (atanh, -1.125L, nan_value, INVALID_EXCEPTION);
- TEST_f_f (atanh, max_value, nan_value, INVALID_EXCEPTION);
- TEST_f_f (atanh, -max_value, nan_value, INVALID_EXCEPTION);
+ TEST_f_f (atanh, qnan_value, qnan_value);
+
+ /* atanh (x) == qNaN plus invalid exception if |x| > 1. */
+ TEST_f_f (atanh, 1.125L, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (atanh, -1.125L, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (atanh, max_value, qnan_value, INVALID_EXCEPTION);
+ TEST_f_f (atanh, -max_value, qnan_value, INVALID_EXCEPTION);
TEST_f_f (atanh, 0.75L, 0.972955074527656652552676371721589865L);
@@ -1301,7 +1302,7 @@
TEST_ff_f (atan2, minus_infty, plus_infty, -M_PI_4l);
TEST_ff_f (atan2, plus_infty, minus_infty, M_PI_34l);
TEST_ff_f (atan2, minus_infty, minus_infty, -M_PI_34l);
- TEST_ff_f (atan2, nan_value, nan_value, nan_value);
+ TEST_ff_f (atan2, qnan_value, qnan_value, qnan_value);
TEST_ff_f (atan2, max_value, max_value, M_PI_4l);
@@ -1341,10 +1342,10 @@
/* cabs (-inf + i x) == +inf. */
TEST_c_f (cabs, minus_infty, 1.0, plus_infty);
- TEST_c_f (cabs, minus_infty, nan_value, plus_infty);
- TEST_c_f (cabs, minus_infty, nan_value, plus_infty);
-
- TEST_c_f (cabs, nan_value, nan_value, nan_value);
+ TEST_c_f (cabs, minus_infty, qnan_value, plus_infty);
+ TEST_c_f (cabs, minus_infty, qnan_value, plus_infty);
+
+ TEST_c_f (cabs, qnan_value, qnan_value, qnan_value);
/* cabs (x,y) == cabs (y,x). */
TEST_c_f (cabs, 0.75L, 12.390625L, 12.4133028598606664302388810868156657L);
@@ -1410,22 +1411,22 @@
TEST_c_c (cacos, plus_infty, 0.5, 0.0, minus_infty);
TEST_c_c (cacos, plus_infty, -0.5, 0.0, plus_infty);
- TEST_c_c (cacos, plus_infty, nan_value, nan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (cacos, minus_infty, nan_value, nan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (cacos, 0, nan_value, M_PI_2l, nan_value);
- TEST_c_c (cacos, minus_zero, nan_value, M_PI_2l, nan_value);
-
- TEST_c_c (cacos, nan_value, plus_infty, nan_value, minus_infty);
- TEST_c_c (cacos, nan_value, minus_infty, nan_value, plus_infty);
-
- TEST_c_c (cacos, 10.5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (cacos, -10.5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (cacos, nan_value, 0.75, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (cacos, nan_value, -0.75, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (cacos, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (cacos, plus_infty, qnan_value, qnan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (cacos, minus_infty, qnan_value, qnan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (cacos, 0, qnan_value, M_PI_2l, qnan_value);
+ TEST_c_c (cacos, minus_zero, qnan_value, M_PI_2l, qnan_value);
+
+ TEST_c_c (cacos, qnan_value, plus_infty, qnan_value, minus_infty);
+ TEST_c_c (cacos, qnan_value, minus_infty, qnan_value, plus_infty);
+
+ TEST_c_c (cacos, 10.5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (cacos, -10.5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (cacos, qnan_value, 0.75, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (cacos, qnan_value, -0.75, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (cacos, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (cacos, plus_zero, -1.5L, M_PI_2l, 1.194763217287109304111930828519090523536L);
TEST_c_c (cacos, minus_zero, -1.5L, M_PI_2l, 1.194763217287109304111930828519090523536L);
@@ -1564,22 +1565,22 @@
TEST_c_c (cacosh, plus_infty, 0.5, plus_infty, 0.0);
TEST_c_c (cacosh, plus_infty, -0.5, plus_infty, minus_zero);
- TEST_c_c (cacosh, plus_infty, nan_value, plus_infty, nan_value);
- TEST_c_c (cacosh, minus_infty, nan_value, plus_infty, nan_value);
-
- TEST_c_c (cacosh, 0, nan_value, nan_value, nan_value);
- TEST_c_c (cacosh, minus_zero, nan_value, nan_value, nan_value);
-
- TEST_c_c (cacosh, nan_value, plus_infty, plus_infty, nan_value);
- TEST_c_c (cacosh, nan_value, minus_infty, plus_infty, nan_value);
-
- TEST_c_c (cacosh, 10.5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (cacosh, -10.5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (cacosh, nan_value, 0.75, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (cacosh, nan_value, -0.75, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (cacosh, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (cacosh, plus_infty, qnan_value, plus_infty, qnan_value);
+ TEST_c_c (cacosh, minus_infty, qnan_value, plus_infty, qnan_value);
+
+ TEST_c_c (cacosh, 0, qnan_value, qnan_value, qnan_value);
+ TEST_c_c (cacosh, minus_zero, qnan_value, qnan_value, qnan_value);
+
+ TEST_c_c (cacosh, qnan_value, plus_infty, plus_infty, qnan_value);
+ TEST_c_c (cacosh, qnan_value, minus_infty, plus_infty, qnan_value);
+
+ TEST_c_c (cacosh, 10.5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (cacosh, -10.5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (cacosh, qnan_value, 0.75, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (cacosh, qnan_value, -0.75, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (cacosh, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (cacosh, plus_zero, -1.5L, 1.194763217287109304111930828519090523536L, -M_PI_2l);
TEST_c_c (cacosh, minus_zero, -1.5L, 1.194763217287109304111930828519090523536L, -M_PI_2l);
@@ -1676,7 +1677,7 @@
TEST_c_f (carg, minus_infty, minus_infty, -3 * M_PI_4l);
- TEST_c_f (carg, nan_value, nan_value, nan_value);
+ TEST_c_f (carg, qnan_value, qnan_value, qnan_value);
END (carg);
}
@@ -1721,22 +1722,22 @@
TEST_c_c (casin, plus_infty, 0.5, M_PI_2l, plus_infty);
TEST_c_c (casin, plus_infty, -0.5, M_PI_2l, minus_infty);
- TEST_c_c (casin, nan_value, plus_infty, nan_value, plus_infty);
- TEST_c_c (casin, nan_value, minus_infty, nan_value, minus_infty);
-
- TEST_c_c (casin, 0.0, nan_value, 0.0, nan_value);
- TEST_c_c (casin, minus_zero, nan_value, minus_zero, nan_value);
-
- TEST_c_c (casin, plus_infty, nan_value, nan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (casin, minus_infty, nan_value, nan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (casin, nan_value, 10.5, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (casin, nan_value, -10.5, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (casin, 0.75, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (casin, -0.75, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (casin, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (casin, qnan_value, plus_infty, qnan_value, plus_infty);
+ TEST_c_c (casin, qnan_value, minus_infty, qnan_value, minus_infty);
+
+ TEST_c_c (casin, 0.0, qnan_value, 0.0, qnan_value);
+ TEST_c_c (casin, minus_zero, qnan_value, minus_zero, qnan_value);
+
+ TEST_c_c (casin, plus_infty, qnan_value, qnan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (casin, minus_infty, qnan_value, qnan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (casin, qnan_value, 10.5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (casin, qnan_value, -10.5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (casin, 0.75, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (casin, -0.75, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (casin, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (casin, plus_zero, -1.5L, plus_zero, -1.194763217287109304111930828519090523536L);
TEST_c_c (casin, minus_zero, -1.5L, minus_zero, -1.194763217287109304111930828519090523536L);
@@ -1877,22 +1878,22 @@
TEST_c_c (casinh, plus_infty, 0.5, plus_infty, 0.0);
TEST_c_c (casinh, plus_infty, -0.5, plus_infty, minus_zero);
- TEST_c_c (casinh, plus_infty, nan_value, plus_infty, nan_value);
- TEST_c_c (casinh, minus_infty, nan_value, minus_infty, nan_value);
-
- TEST_c_c (casinh, nan_value, 0, nan_value, 0.0);
- TEST_c_c (casinh, nan_value, minus_zero, nan_value, minus_zero);
-
- TEST_c_c (casinh, nan_value, plus_infty, plus_infty, nan_value, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (casinh, nan_value, minus_infty, plus_infty, nan_value, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (casinh, 10.5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (casinh, -10.5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (casinh, nan_value, 0.75, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (casinh, -0.75, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (casinh, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (casinh, plus_infty, qnan_value, plus_infty, qnan_value);
+ TEST_c_c (casinh, minus_infty, qnan_value, minus_infty, qnan_value);
+
+ TEST_c_c (casinh, qnan_value, 0, qnan_value, 0.0);
+ TEST_c_c (casinh, qnan_value, minus_zero, qnan_value, minus_zero);
+
+ TEST_c_c (casinh, qnan_value, plus_infty, plus_infty, qnan_value, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (casinh, qnan_value, minus_infty, plus_infty, qnan_value, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (casinh, 10.5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (casinh, -10.5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (casinh, qnan_value, 0.75, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (casinh, -0.75, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (casinh, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (casinh, plus_zero, -1.5L, 0.9624236501192068949955178268487368462704L, -M_PI_2l);
TEST_c_c (casinh, minus_zero, -1.5L, -0.9624236501192068949955178268487368462704L, -M_PI_2l);
@@ -2034,25 +2035,25 @@
TEST_c_c (catan, 0.5, plus_infty, M_PI_2l, 0);
TEST_c_c (catan, -0.5, plus_infty, -M_PI_2l, 0);
- TEST_c_c (catan, nan_value, 0.0, nan_value, 0);
- TEST_c_c (catan, nan_value, minus_zero, nan_value, minus_zero);
-
- TEST_c_c (catan, nan_value, plus_infty, nan_value, 0);
- TEST_c_c (catan, nan_value, minus_infty, nan_value, minus_zero);
-
- TEST_c_c (catan, 0.0, nan_value, nan_value, nan_value);
- TEST_c_c (catan, minus_zero, nan_value, nan_value, nan_value);
-
- TEST_c_c (catan, plus_infty, nan_value, M_PI_2l, 0, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (catan, minus_infty, nan_value, -M_PI_2l, 0, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (catan, nan_value, 10.5, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (catan, nan_value, -10.5, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (catan, 0.75, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (catan, -0.75, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (catan, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (catan, qnan_value, 0.0, qnan_value, 0);
+ TEST_c_c (catan, qnan_value, minus_zero, qnan_value, minus_zero);
+
+ TEST_c_c (catan, qnan_value, plus_infty, qnan_value, 0);
+ TEST_c_c (catan, qnan_value, minus_infty, qnan_value, minus_zero);
+
+ TEST_c_c (catan, 0.0, qnan_value, qnan_value, qnan_value);
+ TEST_c_c (catan, minus_zero, qnan_value, qnan_value, qnan_value);
+
+ TEST_c_c (catan, plus_infty, qnan_value, M_PI_2l, 0, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (catan, minus_infty, qnan_value, -M_PI_2l, 0, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (catan, qnan_value, 10.5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (catan, qnan_value, -10.5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (catan, 0.75, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (catan, -0.75, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (catan, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (catan, 0.75L, 1.25L, 1.10714871779409050301706546017853704L, 0.549306144334054845697622618461262852L);
TEST_c_c (catan, -2, -3, -1.4099210495965755225306193844604208L, -0.22907268296853876629588180294200276L);
@@ -2100,25 +2101,25 @@
TEST_c_c (catanh, plus_infty, 0.5, 0.0, M_PI_2l);
TEST_c_c (catanh, plus_infty, -0.5, 0.0, -M_PI_2l);
- TEST_c_c (catanh, 0, nan_value, 0.0, nan_value);
- TEST_c_c (catanh, minus_zero, nan_value, minus_zero, nan_value);
-
- TEST_c_c (catanh, plus_infty, nan_value, 0.0, nan_value);
- TEST_c_c (catanh, minus_infty, nan_value, minus_zero, nan_value);
-
- TEST_c_c (catanh, nan_value, 0, nan_value, nan_value);
- TEST_c_c (catanh, nan_value, minus_zero, nan_value, nan_value);
-
- TEST_c_c (catanh, nan_value, plus_infty, 0.0, M_PI_2l, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (catanh, nan_value, minus_infty, 0.0, -M_PI_2l, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (catanh, 10.5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (catanh, -10.5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (catanh, nan_value, 0.75, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (catanh, nan_value, -0.75, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (catanh, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (catanh, 0, qnan_value, 0.0, qnan_value);
+ TEST_c_c (catanh, minus_zero, qnan_value, minus_zero, qnan_value);
+
+ TEST_c_c (catanh, plus_infty, qnan_value, 0.0, qnan_value);
+ TEST_c_c (catanh, minus_infty, qnan_value, minus_zero, qnan_value);
+
+ TEST_c_c (catanh, qnan_value, 0, qnan_value, qnan_value);
+ TEST_c_c (catanh, qnan_value, minus_zero, qnan_value, qnan_value);
+
+ TEST_c_c (catanh, qnan_value, plus_infty, 0.0, M_PI_2l, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (catanh, qnan_value, minus_infty, 0.0, -M_PI_2l, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (catanh, 10.5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (catanh, -10.5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (catanh, qnan_value, 0.75, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (catanh, qnan_value, -0.75, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (catanh, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (catanh, 0.75L, 1.25L, 0.261492138795671927078652057366532140L, 0.996825126463918666098902241310446708L);
TEST_c_c (catanh, -2, -3, -0.14694666622552975204743278515471595L, -1.3389725222944935611241935759091443L);
@@ -2142,7 +2143,7 @@
TEST_f_f (cbrt, plus_infty, plus_infty);
TEST_f_f (cbrt, minus_infty, minus_infty);
- TEST_f_f (cbrt, nan_value, nan_value);
+ TEST_f_f (cbrt, qnan_value, qnan_value);
TEST_f_f (cbrt, -0.001L, -0.1L);
TEST_f_f (cbrt, 8, 2);
@@ -2170,50 +2171,50 @@
TEST_c_c (ccos, 0.0, minus_zero, 1.0, 0.0);
TEST_c_c (ccos, minus_zero, minus_zero, 1.0, minus_zero);
- TEST_c_c (ccos, plus_infty, 0.0, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ccos, plus_infty, minus_zero, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ccos, minus_infty, 0.0, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ccos, minus_infty, minus_zero, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccos, plus_infty, 0.0, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccos, plus_infty, minus_zero, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccos, minus_infty, 0.0, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccos, minus_infty, minus_zero, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
TEST_c_c (ccos, 0.0, plus_infty, plus_infty, minus_zero);
TEST_c_c (ccos, 0.0, minus_infty, plus_infty, 0.0);
TEST_c_c (ccos, minus_zero, plus_infty, plus_infty, 0.0);
TEST_c_c (ccos, minus_zero, minus_infty, plus_infty, minus_zero);
- TEST_c_c (ccos, plus_infty, plus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccos, minus_infty, plus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccos, plus_infty, minus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccos, minus_infty, minus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccos, plus_infty, plus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccos, minus_infty, plus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccos, plus_infty, minus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccos, minus_infty, minus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
TEST_c_c (ccos, 4.625, plus_infty, minus_infty, plus_infty);
TEST_c_c (ccos, 4.625, minus_infty, minus_infty, minus_infty);
TEST_c_c (ccos, -4.625, plus_infty, minus_infty, minus_infty);
TEST_c_c (ccos, -4.625, minus_infty, minus_infty, plus_infty);
- TEST_c_c (ccos, plus_infty, 6.75, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccos, plus_infty, -6.75, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccos, minus_infty, 6.75, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccos, minus_infty, -6.75, nan_value, nan_value, INVALID_EXCEPTION);
-
- TEST_c_c (ccos, nan_value, 0.0, nan_value, 0.0, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ccos, nan_value, minus_zero, nan_value, 0.0, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (ccos, nan_value, plus_infty, plus_infty, nan_value);
- TEST_c_c (ccos, nan_value, minus_infty, plus_infty, nan_value);
-
- TEST_c_c (ccos, nan_value, 9.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ccos, nan_value, -9.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (ccos, 0.0, nan_value, nan_value, 0.0, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ccos, minus_zero, nan_value, nan_value, 0.0, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (ccos, 10.0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ccos, -10.0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (ccos, plus_infty, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ccos, minus_infty, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (ccos, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (ccos, plus_infty, 6.75, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccos, plus_infty, -6.75, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccos, minus_infty, 6.75, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccos, minus_infty, -6.75, qnan_value, qnan_value, INVALID_EXCEPTION);
+
+ TEST_c_c (ccos, qnan_value, 0.0, qnan_value, 0.0, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccos, qnan_value, minus_zero, qnan_value, 0.0, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (ccos, qnan_value, plus_infty, plus_infty, qnan_value);
+ TEST_c_c (ccos, qnan_value, minus_infty, plus_infty, qnan_value);
+
+ TEST_c_c (ccos, qnan_value, 9.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ccos, qnan_value, -9.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (ccos, 0.0, qnan_value, qnan_value, 0.0, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccos, minus_zero, qnan_value, qnan_value, 0.0, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (ccos, 10.0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ccos, -10.0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (ccos, plus_infty, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ccos, minus_infty, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (ccos, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (ccos, 0.75L, 1.25L, 1.38173873063425888530729933139078645L, -1.09193013555397466170919531722024128L);
TEST_c_c (ccos, -2, -3, -4.18962569096880723013255501961597373L, -9.10922789375533659797919726277886212L);
@@ -2269,50 +2270,50 @@
TEST_c_c (ccosh, 0.0, minus_zero, 1.0, minus_zero);
TEST_c_c (ccosh, minus_zero, minus_zero, 1.0, 0.0);
- TEST_c_c (ccosh, 0.0, plus_infty, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ccosh, minus_zero, plus_infty, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ccosh, 0.0, minus_infty, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ccosh, minus_zero, minus_infty, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccosh, 0.0, plus_infty, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccosh, minus_zero, plus_infty, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccosh, 0.0, minus_infty, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccosh, minus_zero, minus_infty, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
TEST_c_c (ccosh, plus_infty, 0.0, plus_infty, 0.0);
TEST_c_c (ccosh, minus_infty, 0.0, plus_infty, minus_zero);
TEST_c_c (ccosh, plus_infty, minus_zero, plus_infty, minus_zero);
TEST_c_c (ccosh, minus_infty, minus_zero, plus_infty, 0.0);
- TEST_c_c (ccosh, plus_infty, plus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccosh, minus_infty, plus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccosh, plus_infty, minus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccosh, minus_infty, minus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccosh, plus_infty, plus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccosh, minus_infty, plus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccosh, plus_infty, minus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccosh, minus_infty, minus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
TEST_c_c (ccosh, plus_infty, 4.625, minus_infty, minus_infty);
TEST_c_c (ccosh, minus_infty, 4.625, minus_infty, plus_infty);
TEST_c_c (ccosh, plus_infty, -4.625, minus_infty, plus_infty);
TEST_c_c (ccosh, minus_infty, -4.625, minus_infty, minus_infty);
- TEST_c_c (ccosh, 6.75, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccosh, -6.75, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccosh, 6.75, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ccosh, -6.75, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
-
- TEST_c_c (ccosh, 0.0, nan_value, nan_value, 0.0, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ccosh, minus_zero, nan_value, nan_value, 0.0, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (ccosh, plus_infty, nan_value, plus_infty, nan_value);
- TEST_c_c (ccosh, minus_infty, nan_value, plus_infty, nan_value);
-
- TEST_c_c (ccosh, 9.0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ccosh, -9.0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (ccosh, nan_value, 0.0, nan_value, 0.0, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ccosh, nan_value, minus_zero, nan_value, 0.0, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (ccosh, nan_value, 10.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ccosh, nan_value, -10.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (ccosh, nan_value, plus_infty, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ccosh, nan_value, minus_infty, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (ccosh, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (ccosh, 6.75, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccosh, -6.75, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccosh, 6.75, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ccosh, -6.75, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+
+ TEST_c_c (ccosh, 0.0, qnan_value, qnan_value, 0.0, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccosh, minus_zero, qnan_value, qnan_value, 0.0, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (ccosh, plus_infty, qnan_value, plus_infty, qnan_value);
+ TEST_c_c (ccosh, minus_infty, qnan_value, plus_infty, qnan_value);
+
+ TEST_c_c (ccosh, 9.0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ccosh, -9.0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (ccosh, qnan_value, 0.0, qnan_value, 0.0, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ccosh, qnan_value, minus_zero, qnan_value, 0.0, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (ccosh, qnan_value, 10.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ccosh, qnan_value, -10.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (ccosh, qnan_value, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ccosh, qnan_value, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (ccosh, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (ccosh, 0.75L, 1.25L, 0.408242591877968807788852146397499084L, 0.780365930845853240391326216300863152L);
@@ -2362,7 +2363,7 @@
TEST_f_f (ceil, minus_zero, minus_zero);
TEST_f_f (ceil, plus_infty, plus_infty);
TEST_f_f (ceil, minus_infty, minus_infty);
- TEST_f_f (ceil, nan_value, nan_value);
+ TEST_f_f (ceil, qnan_value, qnan_value);
TEST_f_f (ceil, M_PIl, 4.0);
TEST_f_f (ceil, -M_PIl, -3.0);
@@ -2469,40 +2470,40 @@
TEST_c_c (cexp, minus_infty, plus_zero, 0.0, 0.0);
TEST_c_c (cexp, minus_infty, minus_zero, 0.0, minus_zero);
- TEST_c_c (cexp, 0.0, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (cexp, minus_zero, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
-
- TEST_c_c (cexp, 0.0, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (cexp, minus_zero, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
-
- TEST_c_c (cexp, 100.0, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (cexp, -100.0, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
-
- TEST_c_c (cexp, 100.0, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (cexp, -100.0, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
+ TEST_c_c (cexp, 0.0, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (cexp, minus_zero, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+
+ TEST_c_c (cexp, 0.0, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (cexp, minus_zero, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+
+ TEST_c_c (cexp, 100.0, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (cexp, -100.0, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+
+ TEST_c_c (cexp, 100.0, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (cexp, -100.0, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
TEST_c_c (cexp, minus_infty, 2.0, minus_zero, 0.0);
TEST_c_c (cexp, minus_infty, 4.0, minus_zero, minus_zero);
TEST_c_c (cexp, plus_infty, 2.0, minus_infty, plus_infty);
TEST_c_c (cexp, plus_infty, 4.0, minus_infty, minus_infty);
- TEST_c_c (cexp, plus_infty, plus_infty, plus_infty, nan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (cexp, plus_infty, minus_infty, plus_infty, nan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (cexp, plus_infty, plus_infty, plus_infty, qnan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (cexp, plus_infty, minus_infty, plus_infty, qnan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
TEST_c_c (cexp, minus_infty, plus_infty, 0.0, 0.0, IGNORE_ZERO_INF_SIGN);
TEST_c_c (cexp, minus_infty, minus_infty, 0.0, minus_zero, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (cexp, minus_infty, nan_value, 0, 0, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (cexp, plus_infty, nan_value, plus_infty, nan_value);
-
- TEST_c_c (cexp, nan_value, 0.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (cexp, nan_value, 1.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (cexp, nan_value, plus_infty, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (cexp, 0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (cexp, 1, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (cexp, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (cexp, minus_infty, qnan_value, 0, 0, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (cexp, plus_infty, qnan_value, plus_infty, qnan_value);
+
+ TEST_c_c (cexp, qnan_value, 0.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (cexp, qnan_value, 1.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (cexp, qnan_value, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (cexp, 0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (cexp, 1, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (cexp, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (cexp, 0.75L, 1.25L, 0.667537446429131586942201977015932112L, 2.00900045494094876258347228145863909L);
TEST_c_c (cexp, -2.0, -3.0, -0.13398091492954261346140525546115575L, -0.019098516261135196432576240858800925L);
@@ -2561,8 +2562,8 @@
START (cimag);
TEST_c_f (cimag, 1.0, 0.0, 0.0);
TEST_c_f (cimag, 1.0, minus_zero, minus_zero);
- TEST_c_f (cimag, 1.0, nan_value, nan_value);
- TEST_c_f (cimag, nan_value, nan_value, nan_value);
+ TEST_c_f (cimag, 1.0, qnan_value, qnan_value);
+ TEST_c_f (cimag, qnan_value, qnan_value, qnan_value);
TEST_c_f (cimag, 1.0, plus_infty, plus_infty);
TEST_c_f (cimag, 1.0, minus_infty, minus_infty);
TEST_c_f (cimag, 2.0, 3.0, 3.0);
@@ -2612,23 +2613,23 @@
TEST_c_c (clog, plus_infty, minus_zero, plus_infty, minus_zero);
TEST_c_c (clog, plus_infty, -1, plus_infty, minus_zero);
- TEST_c_c (clog, plus_infty, nan_value, plus_infty, nan_value);
- TEST_c_c (clog, minus_infty, nan_value, plus_infty, nan_value);
-
- TEST_c_c (clog, nan_value, plus_infty, plus_infty, nan_value);
- TEST_c_c (clog, nan_value, minus_infty, plus_infty, nan_value);
-
- TEST_c_c (clog, 0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog, 3, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog, minus_zero, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog, -3, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (clog, nan_value, 0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog, nan_value, 5, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog, nan_value, minus_zero, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog, nan_value, -5, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (clog, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (clog, plus_infty, qnan_value, plus_infty, qnan_value);
+ TEST_c_c (clog, minus_infty, qnan_value, plus_infty, qnan_value);
+
+ TEST_c_c (clog, qnan_value, plus_infty, plus_infty, qnan_value);
+ TEST_c_c (clog, qnan_value, minus_infty, plus_infty, qnan_value);
+
+ TEST_c_c (clog, 0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog, 3, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog, minus_zero, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog, -3, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (clog, qnan_value, 0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog, qnan_value, 5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog, qnan_value, minus_zero, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog, qnan_value, -5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (clog, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (clog, 0.75L, 1.25L, 0.376885901188190075998919126749298416L, 1.03037682652431246378774332703115153L);
TEST_c_c (clog, -2, -3, 1.2824746787307683680267437207826593L, -2.1587989303424641704769327722648368L);
@@ -2832,23 +2833,23 @@
TEST_c_c (clog10, plus_infty, minus_zero, plus_infty, minus_zero);
TEST_c_c (clog10, plus_infty, -1, plus_infty, minus_zero);
- TEST_c_c (clog10, plus_infty, nan_value, plus_infty, nan_value);
- TEST_c_c (clog10, minus_infty, nan_value, plus_infty, nan_value);
-
- TEST_c_c (clog10, nan_value, plus_infty, plus_infty, nan_value);
- TEST_c_c (clog10, nan_value, minus_infty, plus_infty, nan_value);
-
- TEST_c_c (clog10, 0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog10, 3, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog10, minus_zero, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog10, -3, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (clog10, nan_value, 0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog10, nan_value, 5, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog10, nan_value, minus_zero, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (clog10, nan_value, -5, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (clog10, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (clog10, plus_infty, qnan_value, plus_infty, qnan_value);
+ TEST_c_c (clog10, minus_infty, qnan_value, plus_infty, qnan_value);
+
+ TEST_c_c (clog10, qnan_value, plus_infty, plus_infty, qnan_value);
+ TEST_c_c (clog10, qnan_value, minus_infty, plus_infty, qnan_value);
+
+ TEST_c_c (clog10, 0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog10, 3, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog10, minus_zero, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog10, -3, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (clog10, qnan_value, 0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog10, qnan_value, 5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog10, qnan_value, minus_zero, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (clog10, qnan_value, -5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (clog10, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (clog10, 0.75L, 1.25L, 0.163679467193165171449476605077428975L, 0.447486970040493067069984724340855636L);
TEST_c_c (clog10, -2, -3, 0.556971676153418384603252578971164214L, -0.937554462986374708541507952140189646L);
@@ -3017,7 +3018,7 @@
START (conj);
TEST_c_c (conj, 0.0, 0.0, 0.0, minus_zero);
TEST_c_c (conj, 0.0, minus_zero, 0.0, 0.0);
- TEST_c_c (conj, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (conj, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (conj, plus_infty, minus_infty, plus_infty, plus_infty);
TEST_c_c (conj, plus_infty, plus_infty, plus_infty, minus_infty);
TEST_c_c (conj, 1.0, 2.0, 1.0, -2.0);
@@ -3048,10 +3049,10 @@
TEST_ff_f (copysign, minus_zero, minus_zero, minus_zero);
/* XXX More correctly we would have to check the sign of the NaN. */
- TEST_ff_f (copysign, nan_value, 0, nan_value);
- TEST_ff_f (copysign, nan_value, minus_zero, nan_value);
- TEST_ff_f (copysign, -nan_value, 0, nan_value);
- TEST_ff_f (copysign, -nan_value, minus_zero, nan_value);
+ TEST_ff_f (copysign, qnan_value, 0, qnan_value);
+ TEST_ff_f (copysign, qnan_value, minus_zero, qnan_value);
+ TEST_ff_f (copysign, -qnan_value, 0, qnan_value);
+ TEST_ff_f (copysign, -qnan_value, minus_zero, qnan_value);
END (copysign);
}
@@ -3071,14 +3072,14 @@
TEST_f_f (cos, 0, 1);
TEST_f_f (cos, minus_zero, 1);
errno = 0;
- TEST_f_f (cos, plus_infty, nan_value, INVALID_EXCEPTION);
+ TEST_f_f (cos, plus_infty, qnan_value, INVALID_EXCEPTION);
check_int ("errno for cos(+inf) == EDOM", errno, EDOM, 0, 0, 0);
errno = 0;
- TEST_f_f (cos, minus_infty, nan_value, INVALID_EXCEPTION);
+ TEST_f_f (cos, minus_infty, qnan_value, INVALID_EXCEPTION);
check_int ("errno for cos(-inf) == EDOM", errno, EDOM, 0, 0, 0);
errno = 0;
- TEST_f_f (cos, nan_value, nan_value);
- check_int ("errno for cos(NaN) unchanged", errno, 0, 0, 0, 0);
+ TEST_f_f (cos, qnan_value, qnan_value);
+ check_int ("errno for cos(qNaN) unchanged", errno, 0, 0, 0, 0);
TEST_f_f (cos, M_PI_6l * 2.0, 0.5);
TEST_f_f (cos, M_PI_6l * 4.0, -0.5);
@@ -3268,7 +3269,7 @@
TEST_f_f (cosh, plus_infty, plus_infty);
TEST_f_f (cosh, minus_infty, plus_infty);
#endif
- TEST_f_f (cosh, nan_value, nan_value);
+ TEST_f_f (cosh, qnan_value, qnan_value);
TEST_f_f (cosh, 0.75L, 1.29468328467684468784170818539018176L);
@@ -3406,7 +3407,7 @@
TEST_cc_c (cpow, M_El, 0, 0, 2 * M_PIl, 1.0, 0.0);
TEST_cc_c (cpow, 2, 3, 4, 0, -119.0, -120.0);
- TEST_cc_c (cpow, nan_value, nan_value, nan_value, nan_value, nan_value, nan_value);
+ TEST_cc_c (cpow, qnan_value, qnan_value, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_cc_c (cpow, 0.75L, 1.25L, 0.75L, 1.25L, 0.117506293914473555420279832210420483L, 0.346552747708338676483025352060418001L);
TEST_cc_c (cpow, 0.75L, 1.25L, 1.0L, 1.0L, 0.0846958290317209430433805274189191353L, 0.513285749182902449043287190519090481L);
@@ -3426,7 +3427,7 @@
TEST_c_c (cproj, 0.0, minus_zero, 0.0, minus_zero);
TEST_c_c (cproj, minus_zero, 0.0, minus_zero, 0.0);
- TEST_c_c (cproj, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (cproj, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (cproj, plus_infty, plus_infty, plus_infty, 0.0);
TEST_c_c (cproj, plus_infty, minus_infty, plus_infty, minus_zero);
@@ -3446,8 +3447,8 @@
START (creal);
TEST_c_f (creal, 0.0, 1.0, 0.0);
TEST_c_f (creal, minus_zero, 1.0, minus_zero);
- TEST_c_f (creal, nan_value, 1.0, nan_value);
- TEST_c_f (creal, nan_value, nan_value, nan_value);
+ TEST_c_f (creal, qnan_value, 1.0, qnan_value);
+ TEST_c_f (creal, qnan_value, qnan_value, qnan_value);
TEST_c_f (creal, plus_infty, 1.0, plus_infty);
TEST_c_f (creal, minus_infty, 1.0, minus_infty);
TEST_c_f (creal, 2.0, 3.0, 2.0);
@@ -3476,45 +3477,45 @@
TEST_c_c (csin, 0.0, minus_infty, 0.0, minus_infty);
TEST_c_c (csin, minus_zero, minus_infty, minus_zero, minus_infty);
- TEST_c_c (csin, plus_infty, 0.0, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csin, minus_infty, 0.0, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csin, plus_infty, minus_zero, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csin, minus_infty, minus_zero, nan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (csin, plus_infty, plus_infty, nan_value, plus_infty, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csin, minus_infty, plus_infty, nan_value, plus_infty, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csin, plus_infty, minus_infty, nan_value, plus_infty, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csin, minus_infty, minus_infty, nan_value, plus_infty, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (csin, plus_infty, 6.75, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (csin, plus_infty, -6.75, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (csin, minus_infty, 6.75, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (csin, minus_infty, -6.75, nan_value, nan_value, INVALID_EXCEPTION);
+ TEST_c_c (csin, plus_infty, 0.0, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csin, minus_infty, 0.0, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csin, plus_infty, minus_zero, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csin, minus_infty, minus_zero, qnan_value, 0.0, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (csin, plus_infty, plus_infty, qnan_value, plus_infty, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csin, minus_infty, plus_infty, qnan_value, plus_infty, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csin, plus_infty, minus_infty, qnan_value, plus_infty, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csin, minus_infty, minus_infty, qnan_value, plus_infty, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (csin, plus_infty, 6.75, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (csin, plus_infty, -6.75, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (csin, minus_infty, 6.75, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (csin, minus_infty, -6.75, qnan_value, qnan_value, INVALID_EXCEPTION);
TEST_c_c (csin, 4.625, plus_infty, minus_infty, minus_infty);
TEST_c_c (csin, 4.625, minus_infty, minus_infty, plus_infty);
TEST_c_c (csin, -4.625, plus_infty, plus_infty, minus_infty);
TEST_c_c (csin, -4.625, minus_infty, plus_infty, plus_infty);
- TEST_c_c (csin, nan_value, 0.0, nan_value, 0.0, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csin, nan_value, minus_zero, nan_value, 0.0, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (csin, nan_value, plus_infty, nan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csin, nan_value, minus_infty, nan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (csin, nan_value, 9.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csin, nan_value, -9.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (csin, 0.0, nan_value, 0.0, nan_value);
- TEST_c_c (csin, minus_zero, nan_value, minus_zero, nan_value);
-
- TEST_c_c (csin, 10.0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csin, nan_value, -10.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (csin, plus_infty, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csin, minus_infty, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (csin, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (csin, qnan_value, 0.0, qnan_value, 0.0, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csin, qnan_value, minus_zero, qnan_value, 0.0, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (csin, qnan_value, plus_infty, qnan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csin, qnan_value, minus_infty, qnan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (csin, qnan_value, 9.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csin, qnan_value, -9.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (csin, 0.0, qnan_value, 0.0, qnan_value);
+ TEST_c_c (csin, minus_zero, qnan_value, minus_zero, qnan_value);
+
+ TEST_c_c (csin, 10.0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csin, qnan_value, -10.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (csin, plus_infty, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csin, minus_infty, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (csin, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (csin, 0.75L, 1.25L, 1.28722291002649188575873510790565441L, 1.17210635989270256101081285116138863L);
TEST_c_c (csin, -2, -3, -9.15449914691142957346729954460983256L, 4.16890695996656435075481305885375484L);
@@ -3570,50 +3571,50 @@
TEST_c_c (csinh, 0.0, minus_zero, 0.0, minus_zero);
TEST_c_c (csinh, minus_zero, minus_zero, minus_zero, minus_zero);
- TEST_c_c (csinh, 0.0, plus_infty, 0.0, nan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csinh, minus_zero, plus_infty, 0.0, nan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csinh, 0.0, minus_infty, 0.0, nan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csinh, minus_zero, minus_infty, 0.0, nan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csinh, 0.0, plus_infty, 0.0, qnan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csinh, minus_zero, plus_infty, 0.0, qnan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csinh, 0.0, minus_infty, 0.0, qnan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csinh, minus_zero, minus_infty, 0.0, qnan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
TEST_c_c (csinh, plus_infty, 0.0, plus_infty, 0.0);
TEST_c_c (csinh, minus_infty, 0.0, minus_infty, 0.0);
TEST_c_c (csinh, plus_infty, minus_zero, plus_infty, minus_zero);
TEST_c_c (csinh, minus_infty, minus_zero, minus_infty, minus_zero);
- TEST_c_c (csinh, plus_infty, plus_infty, plus_infty, nan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csinh, minus_infty, plus_infty, plus_infty, nan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csinh, plus_infty, minus_infty, plus_infty, nan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csinh, minus_infty, minus_infty, plus_infty, nan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csinh, plus_infty, plus_infty, plus_infty, qnan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csinh, minus_infty, plus_infty, plus_infty, qnan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csinh, plus_infty, minus_infty, plus_infty, qnan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csinh, minus_infty, minus_infty, plus_infty, qnan_value, INVALID_EXCEPTION|IGNORE_ZERO_INF_SIGN);
TEST_c_c (csinh, plus_infty, 4.625, minus_infty, minus_infty);
TEST_c_c (csinh, minus_infty, 4.625, plus_infty, minus_infty);
TEST_c_c (csinh, plus_infty, -4.625, minus_infty, plus_infty);
TEST_c_c (csinh, minus_infty, -4.625, plus_infty, plus_infty);
- TEST_c_c (csinh, 6.75, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (csinh, -6.75, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (csinh, 6.75, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (csinh, -6.75, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
-
- TEST_c_c (csinh, 0.0, nan_value, 0.0, nan_value, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csinh, minus_zero, nan_value, 0.0, nan_value, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (csinh, plus_infty, nan_value, plus_infty, nan_value, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (csinh, minus_infty, nan_value, plus_infty, nan_value, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (csinh, 9.0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csinh, -9.0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (csinh, nan_value, 0.0, nan_value, 0.0);
- TEST_c_c (csinh, nan_value, minus_zero, nan_value, minus_zero);
-
- TEST_c_c (csinh, nan_value, 10.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csinh, nan_value, -10.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (csinh, nan_value, plus_infty, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csinh, nan_value, minus_infty, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (csinh, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (csinh, 6.75, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (csinh, -6.75, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (csinh, 6.75, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (csinh, -6.75, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+
+ TEST_c_c (csinh, 0.0, qnan_value, 0.0, qnan_value, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csinh, minus_zero, qnan_value, 0.0, qnan_value, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (csinh, plus_infty, qnan_value, plus_infty, qnan_value, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (csinh, minus_infty, qnan_value, plus_infty, qnan_value, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (csinh, 9.0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csinh, -9.0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (csinh, qnan_value, 0.0, qnan_value, 0.0);
+ TEST_c_c (csinh, qnan_value, minus_zero, qnan_value, minus_zero);
+
+ TEST_c_c (csinh, qnan_value, 10.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csinh, qnan_value, -10.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (csinh, qnan_value, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csinh, qnan_value, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (csinh, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (csinh, 0.75L, 1.25L, 0.259294854551162779153349830618433028L, 1.22863452409509552219214606515777594L);
TEST_c_c (csinh, -2, -3, 3.59056458998577995201256544779481679L, -0.530921086248519805267040090660676560L);
@@ -3692,21 +3693,21 @@
TEST_c_c (csqrt, -4, minus_infty, plus_infty, minus_infty);
TEST_c_c (csqrt, minus_infty, minus_infty, plus_infty, minus_infty);
- TEST_c_c (csqrt, minus_infty, nan_value, nan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (csqrt, plus_infty, nan_value, plus_infty, nan_value);
-
- TEST_c_c (csqrt, 0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csqrt, 1, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csqrt, minus_zero, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csqrt, -1, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (csqrt, nan_value, 0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csqrt, nan_value, 8, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csqrt, nan_value, minus_zero, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (csqrt, nan_value, -8, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (csqrt, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (csqrt, minus_infty, qnan_value, qnan_value, plus_infty, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (csqrt, plus_infty, qnan_value, plus_infty, qnan_value);
+
+ TEST_c_c (csqrt, 0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csqrt, 1, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csqrt, minus_zero, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csqrt, -1, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (csqrt, qnan_value, 0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csqrt, qnan_value, 8, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csqrt, qnan_value, minus_zero, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (csqrt, qnan_value, -8, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (csqrt, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (csqrt, 16.0, -30.0, 5.0, -3.0);
TEST_c_c (csqrt, -1, 0, 0.0, 1.0);
@@ -3800,30 +3801,30 @@
TEST_c_c (ctan, minus_zero, minus_infty, minus_zero, -1.0);
TEST_c_c (ctan, -1, minus_infty, minus_zero, -1.0);
- TEST_c_c (ctan, plus_infty, 0, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctan, plus_infty, 2, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctan, minus_infty, 0, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctan, minus_infty, 2, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctan, plus_infty, minus_zero, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctan, plus_infty, -2, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctan, minus_infty, minus_zero, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctan, minus_infty, -2, nan_value, nan_value, INVALID_EXCEPTION);
-
- TEST_c_c (ctan, nan_value, plus_infty, 0.0, 1.0, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ctan, nan_value, minus_infty, 0.0, -1.0, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (ctan, 0, nan_value, 0.0, nan_value);
- TEST_c_c (ctan, minus_zero, nan_value, minus_zero, nan_value);
-
- TEST_c_c (ctan, 0.5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ctan, -4.5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (ctan, nan_value, 0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ctan, nan_value, 5, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ctan, nan_value, minus_zero, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ctan, nan_value, -0.25, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (ctan, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (ctan, plus_infty, 0, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctan, plus_infty, 2, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctan, minus_infty, 0, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctan, minus_infty, 2, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctan, plus_infty, minus_zero, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctan, plus_infty, -2, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctan, minus_infty, minus_zero, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctan, minus_infty, -2, qnan_value, qnan_value, INVALID_EXCEPTION);
+
+ TEST_c_c (ctan, qnan_value, plus_infty, 0.0, 1.0, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ctan, qnan_value, minus_infty, 0.0, -1.0, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (ctan, 0, qnan_value, 0.0, qnan_value);
+ TEST_c_c (ctan, minus_zero, qnan_value, minus_zero, qnan_value);
+
+ TEST_c_c (ctan, 0.5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ctan, -4.5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (ctan, qnan_value, 0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ctan, qnan_value, 5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ctan, qnan_value, minus_zero, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ctan, qnan_value, -0.25, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (ctan, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (ctan, 0.75L, 1.25L, 0.160807785916206426725166058173438663L, 0.975363285031235646193581759755216379L);
TEST_c_c (ctan, -2, -3, 0.376402564150424829275122113032269084e-2L, -1.00323862735360980144635859782192726L);
@@ -4019,30 +4020,30 @@
TEST_c_c (ctanh, minus_infty, minus_zero, -1.0, minus_zero);
TEST_c_c (ctanh, minus_infty, -1, -1.0, minus_zero);
- TEST_c_c (ctanh, 0, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctanh, 2, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctanh, 0, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctanh, 2, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctanh, minus_zero, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctanh, -2, plus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctanh, minus_zero, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
- TEST_c_c (ctanh, -2, minus_infty, nan_value, nan_value, INVALID_EXCEPTION);
-
- TEST_c_c (ctanh, plus_infty, nan_value, 1.0, 0.0, IGNORE_ZERO_INF_SIGN);
- TEST_c_c (ctanh, minus_infty, nan_value, -1.0, 0.0, IGNORE_ZERO_INF_SIGN);
-
- TEST_c_c (ctanh, nan_value, 0, nan_value, 0.0);
- TEST_c_c (ctanh, nan_value, minus_zero, nan_value, minus_zero);
-
- TEST_c_c (ctanh, nan_value, 0.5, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ctanh, nan_value, -4.5, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (ctanh, 0, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ctanh, 5, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ctanh, minus_zero, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_c_c (ctanh, -0.25, nan_value, nan_value, nan_value, INVALID_EXCEPTION_OK);
-
- TEST_c_c (ctanh, nan_value, nan_value, nan_value, nan_value);
+ TEST_c_c (ctanh, 0, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctanh, 2, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctanh, 0, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctanh, 2, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctanh, minus_zero, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctanh, -2, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctanh, minus_zero, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+ TEST_c_c (ctanh, -2, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION);
+
+ TEST_c_c (ctanh, plus_infty, qnan_value, 1.0, 0.0, IGNORE_ZERO_INF_SIGN);
+ TEST_c_c (ctanh, minus_infty, qnan_value, -1.0, 0.0, IGNORE_ZERO_INF_SIGN);
+
+ TEST_c_c (ctanh, qnan_value, 0, qnan_value, 0.0);
+ TEST_c_c (ctanh, qnan_value, minus_zero, qnan_value, minus_zero);
+
+ TEST_c_c (ctanh, qnan_value, 0.5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ctanh, qnan_value, -4.5, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (ctanh, 0, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ctanh, 5, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ctanh, minus_zero, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_c_c (ctanh, -0.25, qnan_value, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+
+ TEST_c_c (ctanh, qnan_value, qnan_value, qnan_value, qnan_value);
TEST_c_c (ctanh, 0, M_PI_4l, 0.0, 1.0);
@@ -4230,7 +4231,7 @@
TEST_f_f (erf, minus_zero, minus_zero);
TEST_f_f (erf, plus_infty, 1);
TEST_f_f (erf, minus_infty, -1);
- TEST_f_f (erf, nan_value, nan_value);
+ TEST_f_f (erf, qnan_value, qnan_value);
TEST_f_f (erf, 0.125L, 0.140316204801333817393029446521623398L);
TEST_f_f (erf, 0.75L, 0.711155633653515131598937834591410777L);
@@ -4258,7 +4259,7 @@
TEST_f_f (erfc, minus_infty, 2.0);
TEST_f_f (erfc, 0.0, 1.0);
TEST_f_f (erfc, minus_zero, 1.0);
- TEST_f_f (erfc, nan_value, nan_value);
+ TEST_f_f (erfc, qnan_value, qnan_value);
TEST_f_f (erfc, 0.125L, 0.859683795198666182606970553478376602L);
TEST_f_f (erfc, 0.75L, 0.288844366346484868401062165408589223L);
@@ -4300,7 +4301,7 @@
TEST_f_f (exp, plus_infty, plus_infty);
TEST_f_f (exp, minus_infty, 0);
#endif
- TEST_f_f (exp, nan_value, nan_value);
+ TEST_f_f (exp, qnan_value, qnan_value);
TEST_f_f (exp, 1, M_El);
TEST_f_f (exp, 2, M_E2l);
@@ -4449,7 +4450,7 @@
TEST_f_f (exp10, plus_infty, plus_infty);
TEST_f_f (exp10, minus_infty, 0);
- TEST_f_f (exp10, nan_value, nan_value);
+ TEST_f_f (exp10, qnan_value, qnan_value);
TEST_f_f (exp10, 3, 1000);
TEST_f_f (exp10, -1, 0.1L);
TEST_f_f (exp10, 36, 1.0e36L);
@@ -4487,7 +4488,7 @@
TEST_f_f (exp2, minus_zero, 1);
TEST_f_f (exp2, plus_infty, plus_infty);
TEST_f_f (exp2, minus_infty, 0);
- TEST_f_f (exp2, nan_value, nan_value);
+ TEST_f_f (exp2, qnan_value, qnan_value);
TEST_f_f (exp2, 10, 1024);
TEST_f_f (exp2, -1, 0.5);
@@ -4534,7 +4535,7 @@
TEST_f_f (expm1, plus_infty, plus_infty);
TEST_f_f (expm1, minus_infty, -1);
#endif
- TEST_f_f (expm1, nan_value, nan_value);
+ TEST_f_f (expm1, qnan_value, qnan_value);
TEST_f_f (expm1, 1, M_El - 1.0);
TEST_f_f (expm1, 0.75L, 1.11700001661267466854536981983709561L);
@@ -4591,7 +4592,7 @@
TEST_f_f (fabs, plus_infty, plus_infty);
TEST_f_f (fabs, minus_infty, plus_infty);
- TEST_f_f (fabs, nan_value, nan_value);
+ TEST_f_f (fabs, qnan_value, qnan_value);
TEST_f_f (fabs, 38.0, 38.0);
TEST_f_f (fabs, -M_El, M_El);
@@ -4620,16 +4621,16 @@
TEST_ff_f (fdim, 9, plus_infty, 0);
TEST_ff_f (fdim, -9, plus_infty, 0);
- TEST_ff_f (fdim, 0, nan_value, nan_value);
- TEST_ff_f (fdim, 9, nan_value, nan_value);
- TEST_ff_f (fdim, -9, nan_value, nan_value);
- TEST_ff_f (fdim, nan_value, 9, nan_value);
- TEST_ff_f (fdim, nan_value, -9, nan_value);
- TEST_ff_f (fdim, plus_infty, nan_value, nan_value);
- TEST_ff_f (fdim, minus_infty, nan_value, nan_value);
- TEST_ff_f (fdim, nan_value, plus_infty, nan_value);
- TEST_ff_f (fdim, nan_value, minus_infty, nan_value);
- TEST_ff_f (fdim, nan_value, nan_value, nan_value);
+ TEST_ff_f (fdim, 0, qnan_value, qnan_value);
+ TEST_ff_f (fdim, 9, qnan_value, qnan_value);
+ TEST_ff_f (fdim, -9, qnan_value, qnan_value);
+ TEST_ff_f (fdim, qnan_value, 9, qnan_value);
+ TEST_ff_f (fdim, qnan_value, -9, qnan_value);
+ TEST_ff_f (fdim, plus_infty, qnan_value, qnan_value);
+ TEST_ff_f (fdim, minus_infty, qnan_value, qnan_value);
+ TEST_ff_f (fdim, qnan_value, plus_infty, qnan_value);
+ TEST_ff_f (fdim, qnan_value, minus_infty, qnan_value);
+ TEST_ff_f (fdim, qnan_value, qnan_value, qnan_value);
TEST_ff_f (fdim, plus_infty, plus_infty, 0);
@@ -4648,7 +4649,7 @@
TEST_f_b (finite, min_subnorm_value, 1);
TEST_f_b (finite, plus_infty, 0);
TEST_f_b (finite, minus_infty, 0);
- TEST_f_b (finite, nan_value, 0);
+ TEST_f_b (finite, qnan_value, 0);
END (finite);
}
@@ -4663,7 +4664,7 @@
TEST_f_f (floor, minus_zero, minus_zero);
TEST_f_f (floor, plus_infty, plus_infty);
TEST_f_f (floor, minus_infty, minus_infty);
- TEST_f_f (floor, nan_value, nan_value);
+ TEST_f_f (floor, qnan_value, qnan_value);
TEST_f_f (floor, M_PIl, 3.0);
TEST_f_f (floor, -M_PIl, -4.0);
@@ -4761,26 +4762,26 @@
START (fma);
TEST_fff_f (fma, 1.0, 2.0, 3.0, 5.0);
- TEST_fff_f (fma, nan_value, 2.0, 3.0, nan_value);
- TEST_fff_f (fma, 1.0, nan_value, 3.0, nan_value);
- TEST_fff_f (fma, 1.0, 2.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_fff_f (fma, plus_infty, 0.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_fff_f (fma, minus_infty, 0.0, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_fff_f (fma, 0.0, plus_infty, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_fff_f (fma, 0.0, minus_infty, nan_value, nan_value, INVALID_EXCEPTION_OK);
- TEST_fff_f (fma, plus_infty, 0.0, 1.0, nan_value, INVALID_EXCEPTION);
- TEST_fff_f (fma, minus_infty, 0.0, 1.0, nan_value, INVALID_EXCEPTION);
- TEST_fff_f (fma, 0.0, plus_infty, 1.0, nan_value, INVALID_EXCEPTION);
- TEST_fff_f (fma, 0.0, minus_infty, 1.0, nan_value, INVALID_EXCEPTION);
-
- TEST_fff_f (fma, plus_infty, plus_infty, minus_infty, nan_value, INVALID_EXCEPTION);
- TEST_fff_f (fma, minus_infty, plus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_fff_f (fma, plus_infty, minus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_fff_f (fma, minus_infty, minus_infty, minus_infty, nan_value, INVALID_EXCEPTION);
- TEST_fff_f (fma, plus_infty, 3.5L, minus_infty, nan_value, INVALID_EXCEPTION);
- TEST_fff_f (fma, minus_infty, -7.5L, minus_infty, nan_value, INVALID_EXCEPTION);
- TEST_fff_f (fma, -13.5L, plus_infty, plus_infty, nan_value, INVALID_EXCEPTION);
- TEST_fff_f (fma, minus_infty, 7.5L, plus_infty, nan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, qnan_value, 2.0, 3.0, qnan_value);
+ TEST_fff_f (fma, 1.0, qnan_value, 3.0, qnan_value);
+ TEST_fff_f (fma, 1.0, 2.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_fff_f (fma, plus_infty, 0.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_fff_f (fma, minus_infty, 0.0, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_fff_f (fma, 0.0, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_fff_f (fma, 0.0, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION_OK);
+ TEST_fff_f (fma, plus_infty, 0.0, 1.0, qnan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, minus_infty, 0.0, 1.0, qnan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, 0.0, plus_infty, 1.0, qnan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, 0.0, minus_infty, 1.0, qnan_value, INVALID_EXCEPTION);
+
+ TEST_fff_f (fma, plus_infty, plus_infty, minus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, minus_infty, plus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, plus_infty, minus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, minus_infty, minus_infty, minus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, plus_infty, 3.5L, minus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, minus_infty, -7.5L, minus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, -13.5L, plus_infty, plus_infty, qnan_value, INVALID_EXCEPTION);
+ TEST_fff_f (fma, minus_infty, 7.5L, plus_infty, qnan_value, INVALID_EXCEPTION);
TEST_fff_f (fma, 1.25L, 0.75L, 0.0625L, 1.0L);
@@ -5728,17 +5729,17 @@
TEST_ff_f (fmax, 9, minus_infty, 9);
TEST_ff_f (fmax, -9, minus_infty, -9);
- TEST_ff_f (fmax, 0, nan_value, 0);
- TEST_ff_f (fmax, 9, nan_value, 9);
- TEST_ff_f (fmax, -9, nan_value, -9);
- TEST_ff_f (fmax, nan_value, 0, 0);
- TEST_ff_f (fmax, nan_value, 9, 9);
- TEST_ff_f (fmax, nan_value, -9, -9);
- TEST_ff_f (fmax, plus_infty, nan_value, plus_infty);
- TEST_ff_f (fmax, minus_infty, nan_value, minus_infty);
- TEST_ff_f (fmax, nan_value, plus_infty, plus_infty);
- TEST_ff_f (fmax, nan_value, minus_infty, minus_infty);
- TEST_ff_f (fmax, nan_value, nan_value, nan_value);
+ TEST_ff_f (fmax, 0, qnan_value, 0);
+ TEST_ff_f (fmax, 9, qnan_value, 9);
+ TEST_ff_f (fmax, -9, qnan_value, -9);
+ TEST_ff_f (fmax, qnan_value, 0, 0);
+ TEST_ff_f (fmax, qnan_value, 9, 9);
+ TEST_ff_f (fmax, qnan_value, -9, -9);
+ TEST_ff_f (fmax, plus_infty, qnan_value, plus_infty);
+ TEST_ff_f (fmax, minus_infty, qnan_value, minus_infty);
+ TEST_ff_f (fmax, qnan_value, plus_infty, plus_infty);
+ TEST_ff_f (fmax, qnan_value, minus_infty, minus_infty);
+ TEST_ff_f (fmax, qnan_value, qnan_value, qnan_value);
END (fmax);
}
@@ -5765,17 +5766,17 @@
TEST_ff_f (fmin, 9, minus_infty, minus_infty);
TEST_ff_f (fmin, -9, minus_infty, minus_infty);
- TEST_ff_f (fmin, 0, nan_value, 0);
- TEST_ff_f (fmin, 9, nan_value, 9);
- TEST_ff_f (fmin, -9, nan_value, -9);
- TEST_ff_f (fmin, nan_value, 0, 0);
- TEST_ff_f (fmin, nan_value, 9, 9);
- TEST_ff_f (fmin, nan_value, -9, -9);
- TEST_ff_f (fmin, plus_infty, nan_value, plus_infty);
- TEST_ff_f (fmin, minus_infty, nan_value, minus_infty);
- TEST_ff_f (fmin, nan_value, plus_infty, plus_infty);
- TEST_ff_f (fmin, nan_value, minus_infty, minus_infty);
- TEST_ff_f (fmin, nan_value, nan_value, nan_value);
+ TEST_ff_f (fmin, 0, qnan_value, 0);
+ TEST_ff_f (fmin, 9, qnan_value, 9);
+ TEST_ff_f (fmin, -9, qnan_value, -9);
+ TEST_ff_f (fmin, qnan_value, 0, 0);
+ TEST_ff_f (fmin, qnan_value, 9, 9);
+ TEST_ff_f (fmin, qnan_value, -9, -9);
+ TEST_ff_f (fmin, plus_infty, qnan_value, plus_infty);
+ TEST_ff_f (fmin, minus_infty, qnan_value, minus_infty);
+ TEST_ff_f (fmin, qnan_value, plus_infty, plus_infty);
+ TEST_ff_f (fmin, qnan_value, minus_infty, minus_infty);
+ TEST_ff_f (fmin, qnan_value, qnan_value, qnan_value);
END (fmin);
}
@@ -5798,27 +5799,27 @@
/* fmod (-0, y) == -0 for y != 0. */
TEST_ff_f (fmod, minus_zero, 3, minus_zero);
- /* fmod (+inf, y) == NaN plus invalid exception. */
- errno = 0;
- TEST_ff_f (fmod, plus_infty, 3, nan_value, INVALID_EXCEPTION);
+ /* fmod (+inf, y) == qNaN plus invalid exception. */
+ errno = 0;
+ TEST_ff_f (fmod, plus_infty, 3, qnan_value, INVALID_EXCEPTION);
check_int ("errno for fmod(Inf,3) unchanged", errno, EDOM, 0, 0, 0);
- /* fmod (-inf, y) == NaN plus invalid exception. */
- errno = 0;
- TEST_ff_f (fmod, minus_infty, 3, nan_value, INVALID_EXCEPTION);
+ /* fmod (-inf, y) == qNaN plus invalid exception. */
+ errno = 0;
+ TEST_ff_f (fmod, minus_infty, 3, qnan_value, INVALID_EXCEPTION);
check_int ("errno for fmod(-Inf,3) unchanged", errno, EDOM, 0, 0, 0);
- /* fmod (x, +0) == NaN plus invalid exception. */
- errno = 0;
- TEST_ff_f (fmod, 3, 0, nan_value, INVALID_EXCEPTION);
+ /* fmod (x, +0) == qNaN plus invalid exception. */
+ errno = 0;
+ TEST_ff_f (fmod, 3, 0, qnan_value, INVALID_EXCEPTION);
check_int ("errno for fmod(3,0) unchanged", errno, EDOM, 0, 0, 0);
- /* fmod (x, -0) == NaN plus invalid exception. */
- TEST_ff_f (fmod, 3, minus_zero, nan_value, INVALID_EXCEPTION);
+ /* fmod (x, -0) == qNaN plus invalid exception. */
+ TEST_ff_f (fmod, 3, minus_zero, qnan_value, INVALID_EXCEPTION);
/* fmod (x, +inf) == x for x not infinite. */
TEST_ff_f (fmod, 3.0, plus_infty, 3.0);
/* fmod (x, -inf) == x for x not infinite. */
TEST_ff_f (fmod, 3.0, minus_infty, 3.0);
- TEST_ff_f (fmod, nan_value, nan_value, nan_value);
+ TEST_ff_f (fmod, qnan_value, qnan_value, qnan_value);
TEST_ff_f (fmod, 6.5, 2.25L, 2.0L);
TEST_ff_f (fmod, -6.5, 2.25L, -2.0L);
@@ -5842,7 +5843,7 @@
{
START (fpclassify);
- TEST_f_i (fpclassify, nan_value, FP_NAN);
+ TEST_f_i (fpclassify, qnan_value, FP_NAN);
TEST_f_i (fpclassify, plus_infty, FP_INFINITE);
TEST_f_i (fpclassify, minus_infty, FP_INFINITE);
TEST_f_i (fpclassify, plus_zero, FP_ZERO);
@@ -5863,7 +5864,7 @@
TEST_fI_f1 (frexp, plus_infty, plus_infty, IGNORE);
TEST_fI_f1 (frexp, minus_infty, minus_infty, IGNORE);
- TEST_fI_f1 (frexp, nan_value, nan_value, IGNORE);
+ TEST_fI_f1 (frexp, qnan_value, qnan_value, IGNORE);
TEST_fI_f1 (frexp, 0.0, 0.0, 0.0);
TEST_fI_f1 (frexp, minus_zero, minus_zero, 0.0);
@@ -5891,7 +5892,7 @@
TEST_f_f (gamma, 0, plus_infty, DIVIDE_BY_ZERO_EXCEPTION);
TEST_f_f (gamma, -3, plus_infty, DIVIDE_BY_ZERO_EXCEPTION);
TEST_f_f (gamma, minus_infty, plus_infty);
- TEST_f_f (gamma, nan_value, nan_value);
+ TEST_f_f (gamma, qnan_value, qnan_value);
TEST_f_f1 (gamma, 1, 0, 1);
TEST_f_f1 (gamma, 3, M_LN2l, 1);
@@ -5917,13 +5918,13 @@
TEST_ff_f (hypot, minus_infty, 1, plus_infty, IGNORE_ZERO_INF_SIGN);
#ifndef TEST_INLINE
- TEST_ff_f (hypot, plus_infty, nan_value, plus_infty);
- TEST_ff_f (hypot, minus_infty, nan_value, plus_infty);
- TEST_ff_f (hypot, nan_value, plus_infty, plus_infty);
- TEST_ff_f (hypot, nan_value, minus_infty, plus_infty);
-#endif
-
- TEST_ff_f (hypot, nan_value, nan_value, nan_value);
+ TEST_ff_f (hypot, plus_infty, qnan_value, plus_infty);
+ TEST_ff_f (hypot, minus_infty, qnan_value, plus_infty);
+ TEST_ff_f (hypot, qnan_value, plus_infty, plus_infty);
+ TEST_ff_f (hypot, qnan_value, minus_infty, plus_infty);
+#endif
+
+ TEST_ff_f (hypot, qnan_value, qnan_value, qnan_value);
/* hypot (x,y) == hypot (+-x, +-y) */
TEST_ff_f (hypot, 0.7L, 12.4L, 12.419742348374220601176836866763271L);
@@ -5978,10 +5979,10 @@
errno = 0;
TEST_f_i (ilogb, 0.0, FP_ILOGB0, INVALID_EXCEPTION);
check_int ("errno for ilogb(0.0) unchanged", errno, EDOM, 0, 0, 0);
- /* ilogb (NaN) == FP_ILOGBNAN plus invalid exception */
- errno = 0;
- TEST_f_i (ilogb, nan_value, FP_ILOGBNAN, INVALID_EXCEPTION);
- check_int ("errno for ilogb(NaN) unchanged", errno, EDOM, 0, 0, 0);
+ /* ilogb (qNaN) == FP_ILOGBNAN plus invalid exception */
+ errno = 0;
+ TEST_f_i (ilogb, qnan_value, FP_ILOGBNAN, INVALID_EXCEPTION);
+ check_int ("errno for ilogb(qNaN) unchanged", errno, EDOM, 0, 0, 0);
/* ilogb (inf) == INT_MAX plus invalid exception */
errno = 0;
TEST_f_i (ilogb, plus_infty, INT_MAX, INVALID_EXCEPTION);
@@ -6005,7 +6006,7 @@
TEST_f_b (isfinite, min_subnorm_value, 1);
TEST_f_b (isfinite, plus_infty, 0);
TEST_f_b (isfinite, minus_infty, 0);
- TEST_f_b (isfinite, nan_value, 0);
+ TEST_f_b (isfinite, qnan_value, 0);
END (isfinite);
}
@@ -6018,19 +6019,19 @@
TEST_ff_i (isgreater, minus_zero, minus_zero, 0);
TEST_ff_i (isgreater, minus_zero, plus_zero, 0);
TEST_ff_i (isgreater, minus_zero, (FLOAT) 1, 0);
- TEST_ff_i (isgreater, minus_zero, nan_value, 0);
+ TEST_ff_i (isgreater, minus_zero, qnan_value, 0);
TEST_ff_i (isgreater, plus_zero, minus_zero, 0);
TEST_ff_i (isgreater, plus_zero, plus_zero, 0);
TEST_ff_i (isgreater, plus_zero, (FLOAT) 1, 0);
- TEST_ff_i (isgreater, plus_zero, nan_value, 0);
+ TEST_ff_i (isgreater, plus_zero, qnan_value, 0);
TEST_ff_i (isgreater, (FLOAT) 1, minus_zero, 1);
TEST_ff_i (isgreater, (FLOAT) 1, plus_zero, 1);
TEST_ff_i (isgreater, (FLOAT) 1, (FLOAT) 1, 0);
- TEST_ff_i (isgreater, (FLOAT) 1, nan_value, 0);
- TEST_ff_i (isgreater, nan_value, minus_zero, 0);
- TEST_ff_i (isgreater, nan_value, plus_zero, 0);
- TEST_ff_i (isgreater, nan_value, (FLOAT) 1, 0);
- TEST_ff_i (isgreater, nan_value, nan_value, 0);
+ TEST_ff_i (isgreater, (FLOAT) 1, qnan_value, 0);
[... 3593 lines stripped ...]
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits