[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commits] r24814 - in /fsf/trunk/libc: ./ benchtests/ elf/ include/ manual/ math/ scripts/ sysdeps/i386/fpu/ sysdeps/powerpc/fpu/ sysd...
- To: commits@xxxxxxxxxx
- Subject: [Commits] r24814 - in /fsf/trunk/libc: ./ benchtests/ elf/ include/ manual/ math/ scripts/ sysdeps/i386/fpu/ sysdeps/powerpc/fpu/ sysd...
- From: eglibc@xxxxxxxxxx
- Date: Fri, 20 Dec 2013 08:02:13 -0000
Author: eglibc
Date: Fri Dec 20 00:02:12 2013
New Revision: 24814
Log:
Import glibc-mainline for 2013-12-20
Added:
fsf/trunk/libc/benchtests/bench-strtok.c
Modified:
fsf/trunk/libc/ChangeLog
fsf/trunk/libc/NEWS
fsf/trunk/libc/benchtests/Makefile
fsf/trunk/libc/elf/dl-misc.c
fsf/trunk/libc/include/features.h
fsf/trunk/libc/manual/creature.texi
fsf/trunk/libc/manual/texinfo.tex
fsf/trunk/libc/math/auto-libm-test-in
fsf/trunk/libc/math/auto-libm-test-out
fsf/trunk/libc/math/gen-auto-libm-tests.c
fsf/trunk/libc/math/gen-libm-test.pl
fsf/trunk/libc/math/libm-test.inc
fsf/trunk/libc/scripts/config.guess
fsf/trunk/libc/scripts/config.sub
fsf/trunk/libc/sysdeps/i386/fpu/e_expl.S
fsf/trunk/libc/sysdeps/i386/fpu/libm-test-ulps
fsf/trunk/libc/sysdeps/i386/fpu/s_expm1.S
fsf/trunk/libc/sysdeps/i386/fpu/s_expm1f.S
fsf/trunk/libc/sysdeps/powerpc/fpu/libm-test-ulps
fsf/trunk/libc/sysdeps/powerpc/nofpu/Versions
fsf/trunk/libc/sysdeps/powerpc/powerpc32/libgcc-compat.S
fsf/trunk/libc/sysdeps/powerpc/powerpc64/power7/memchr.S
fsf/trunk/libc/sysdeps/powerpc/powerpc64/power7/memrchr.S
fsf/trunk/libc/sysdeps/powerpc/powerpc64/power7/strcasecmp.S
fsf/trunk/libc/sysdeps/x86_64/fpu/e_expl.S
fsf/trunk/libc/sysdeps/x86_64/fpu/libm-test-ulps
Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Fri Dec 20 00:02:12 2013
@@ -1,3 +1,127 @@
+2013-12-19 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * math/auto-libm-test-in: Add tests of cabs and carg.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (cabs_test_data): Use AUTO_TESTS_c_f.
+ (carg_test_data): Likewise.
+ * math/gen-auto-libm-tests.c (func_calc_method): Add value
+ mpc_c_f.
+ (func_calc_desc): Add mpc_c_f union field.
+ (test_functions): Add cabs and carg.
+ (calc_generic_results): Handle mpc_c_f.
+
+ * sysdeps/powerpc/powerpc32/libgcc-compat.S
+ [_SOFT_FLOAT || __NO_FPRS__] (__fixdfdi_v_glibc20): Do not define
+ as a macro and a compat symbol.
+ [_SOFT_FLOAT || __NO_FPRS__] (__fixsfdi_v_glibc20): Likewise.
+ [_SOFT_FLOAT || __NO_FPRS__] (__fixunsdfdi_v_glibc20): Likewise.
+ [_SOFT_FLOAT || __NO_FPRS__] (__fixunssfdi_v_glibc20): Likewise.
+ [_SOFT_FLOAT || __NO_FPRS__] (__floatdidf_v_glibc20): Likewise.
+ [_SOFT_FLOAT || __NO_FPRS__] (__floaddisf_v_glibc20): Likewise.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__fixdfdi): Do
+ not use .hidden.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__fixsfdi):
+ Likewise.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__fixunsdfdi):
+ Likewise.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__fixunssfdi):
+ Likewise.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__floaddidf):
+ Likewise.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__floaddisf):
+ Likewise.
+ * sysdeps/powerpc/nofpu/Versions (libc): Remove __fixdfdi,
+ __fixsfdi, __fixunsdfdi, __fixunssfdi, __floatdidf and __floatdisf
+ from GLIBC_2.3.2.
+
+2013-12-19 Adhemerval Zanella <azanella@xxxxxxxxxxxxxxxxxx>
+
+ * sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2013-12-19 Paul Pluzhnikov <ppluzhnikov@xxxxxxxxxx>
+
+ * elf/dl-misc.c (ptr_to_signal_safe_allocator_header): New function.
+ (__signal_safe_memalign, __signal_safe_free): Use it.
+ (__signal_safe_realloc): Likewise.
+
+2013-12-19 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * manual/texinfo.tex: Update to version 2013-11-26.10 with
+ trailing whitespace removed.
+ * scripts/config.guess: Update to version 2013-11-29.
+ * scripts/config.sub: Update to version 2013-10-01.
+
+ * math/auto-libm-test-in: Add tests of sincos.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (sincos_test_data): Use AUTO_TESTS_fFF_11.
+ * math/gen-auto-libm-tests.c (func_calc_method): Add value
+ mpfr_f_11.
+ (func_calc_desc): Add mpfr_f_11 union field.
+ (test_functions): Add sincos.
+ (calc_generic_results): Handle mpfr_f_11.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-12-19 Andreas Schwab <schwab@xxxxxxx>
+
+ * sysdeps/powerpc/powerpc64/power7/memchr.S: Fix argument of
+ CALL_MCOUNT.
+ * sysdeps/powerpc/powerpc64/power7/memrchr.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/strcasecmp.S
+ [USE_IN_EXTENDED_LOCALE_MODEL]: Likewise.
+
+2013-12-19 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * math/gen-libm-test.pl (%beautify): Remove M_* constants.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+ [BZ #16293]
+ * sysdeps/i386/fpu/e_expl.S (IEEE754_EXPL) [USE_AS_EXPM1L]: Set
+ round-to-nearest mode when using frndint.
+ * sysdeps/i386/fpu/s_expm1.S (__expm1): Likewise.
+ * sysdeps/i386/fpu/s_expm1f.S (__expm1f): Likewise.
+ * sysdeps/x86_64/fpu/e_expl.S (IEEE754_EXPL) [USE_AS_EXPM1L]:
+ Likewise.
+ * math/auto-libm-test-in: Add more tests of expm1. Do not expect
+ sinh test to fail.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (TEST_COND_x86_64): Remove macro.
+ (TEST_COND_x86): Likewise.
+ (expm1_tonearest_test_data): New array.
+ (expm1_test_tonearest): New function.
+ (expm1_towardzero_test_data): New array.
+ (expm1_test_towardzero): New function.
+ (expm1_downward_test_data): New array.
+ (expm1_test_downward): New function.
+ (expm1_upward_test_data): New array.
+ (expm1_test_upward): New function.
+ (main): Run the new test functions.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+ * include/features.h: Update comment documenting feature test
+ macros. Mention _DEFAULT_SOURCE in comment.
+ [_GNU_SOURCE] (_DEFAULT_SOURCE): Undefine and redefine.
+ [_DEFAULT_SOURCE]: Undefine and redefine _DEFAULT_SOURCE,
+ _BSD_SOURCE and _SVID_SOURCE.
+ [!__STRICT_ANSI__ && !_ISOC99_SOURCE && !_POSIX_SOURCE &&
+ !_POSIX_C_SOURCE && !_XOPEN_SOURCE && !_BSD_SOURCE &&
+ !_SVID_SOURCE]: Likewise.
+ [_DEFAULT_SOURCE && !_POSIX_SOURCE && !_POSIX_C_SOURCE]
+ (__USE_POSIX_IMPLICITLY): Define.
+ [_DEFAULT_SOURCE && !_POSIX_SOURCE && !_POSIX_C_SOURCE]
+ (_POSIX_SOURCE): Undefine and redefine.
+ [_DEFAULT_SOURCE && !_POSIX_SOURCE && !_POSIX_C_SOURCE]
+ (_POSIX_C_SOURCE): Likewise.
+ * manual/creature.texi (_DEFAULT_SOURCE): Document.
+ (Feature Test Macros): Update documentation of default features.
+
+2013-12-19 Rajalakshmi Srinivasaraghavan <raji@xxxxxxxxxxxxxxxxxx>
+
+ * benchtests/Makefile: Add bench-strtok.
+ * benchtests/bench-strtok.c: New file: strtok benchtest.
+
2013-12-19 Allan McRae <allan@xxxxxxxxxxxxx>
* manual/install.texi: Suppress menu for plain text output.
Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Fri Dec 20 00:02:12 2013
@@ -22,7 +22,7 @@
15966, 15985, 15988, 15997, 16032, 16034, 16036, 16037, 16038, 16041,
16055, 16071, 16072, 16074, 16077, 16078, 16103, 16112, 16143, 16144,
16146, 16150, 16151, 16153, 16167, 16172, 16195, 16214, 16245, 16271,
- 16274, 16283, 16289, 16314, 16316, 16330, 16338.
+ 16274, 16283, 16289, 16293, 16314, 16316, 16330, 16338.
* The public headers no longer use __unused nor __block. This change is to
support compiling programs that are derived from BSD sources and use
@@ -100,6 +100,11 @@
* The soft-float powerpc port now supports e500 processors.
* Support for STT_GNU_IFUNC symbols added for ppc32/power4+ and ppc64.
+
+* A new feature test macro _DEFAULT_SOURCE is available to enable the same
+ set of header declarations that are enabled by default, even when other
+ feature test macros or compiler options such as -std=c99 would otherwise
+ disable some of those declarations.
* The _BSD_SOURCE feature test macro no longer enables BSD interfaces that
conflict with POSIX. The libbsd-compat library (which was a dummy library
Modified: fsf/trunk/libc/benchtests/Makefile
==============================================================================
--- fsf/trunk/libc/benchtests/Makefile (original)
+++ fsf/trunk/libc/benchtests/Makefile Fri Dec 20 00:02:12 2013
@@ -28,7 +28,7 @@
mempcpy memset rawmemchr stpcpy stpncpy strcasecmp strcasestr \
strcat strchr strchrnul strcmp strcpy strcspn strlen \
strncasecmp strncat strncmp strncpy strnlen strpbrk strrchr \
- strspn strstr strcpy_chk stpcpy_chk memrchr strsep
+ strspn strstr strcpy_chk stpcpy_chk memrchr strsep strtok
string-bench-all := $(string-bench)
stdlib-bench := strtod
Added: fsf/trunk/libc/benchtests/bench-strtok.c
==============================================================================
--- fsf/trunk/libc/benchtests/bench-strtok.c (added)
+++ fsf/trunk/libc/benchtests/bench-strtok.c Fri Dec 20 00:02:12 2013
@@ -1,0 +1,205 @@
+/* Measure strtok functions.
+ 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/>. */
+
+#define TEST_MAIN
+#define TEST_NAME "strtok"
+#include "bench-string.h"
+
+char *
+simple_strtok (char *s1, char *s2)
+{
+ static char *saveptr;
+ char *token;
+ ssize_t i = 0, j = 0;
+ int found = 0;
+ size_t s2len = strlen (s2);
+
+ if (s1 == NULL)
+ s1 = saveptr;
+ if (s1 == NULL || *s1 == '\0')
+ return NULL;
+
+ while (!found)
+ {
+ if (s1[i] == '\0')
+ {
+ saveptr = NULL;
+ return NULL;
+ }
+ for (j = 0; j < s2len; j++)
+ {
+ if (s1[i] == s2[j])
+ {
+ i++;
+ found = 0;
+ break;
+ }
+ found = 1;
+ }
+ }
+ token = s1 + i;
+ i++;
+ found = 0;
+ while (!found)
+ {
+ if (s1[i] == '\0')
+ {
+ saveptr = NULL;
+ return token;
+ }
+ for (j = 0; j < s2len; j++)
+ {
+ if (s1[i] == s2[j])
+ {
+ found = 1;
+ break;
+ }
+ }
+ i++;
+ }
+ s1[i - 1] = '\0';
+ saveptr = s1 + i;
+ return token;
+}
+
+typedef char *(*proto_t) (const char *, const char *);
+
+IMPL (simple_strtok, 0)
+IMPL (strtok, 1)
+
+static void
+do_one_test (impl_t * impl, const char *s1, const char *s2)
+{
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
+ {
+ CALL (impl, s1, s2);
+ CALL (impl, NULL, s2);
+ CALL (impl, NULL, s2);
+ }
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
+
+}
+
+
+static void
+do_test (size_t align1, size_t align2, size_t len1, size_t len2, int fail)
+{
+ char *s2 = (char *) (buf2 + align2);
+ static const char d[] = "1234567890abcdef";
+#define dl (sizeof (d) - 1)
+ char *ss2 = s2;
+ for (size_t l = len2; l > 0; l = l > dl ? l - dl : 0)
+ {
+ size_t t = l > dl ? dl : l;
+ ss2 = mempcpy (ss2, d, t);
+ }
+ s2[len2] = '\0';
+
+ printf ("Length %4zd/%zd, alignment %2zd/%2zd, %s:",
+ len1, len2, align1, align2, fail ? "fail" : "found");
+
+ FOR_EACH_IMPL (impl, 0)
+ {
+ char *s1 = (char *) (buf1 + align1);
+ if (fail)
+ {
+ char *ss1 = s1;
+ for (size_t l = len1; l > 0; l = l > dl ? l - dl : 0)
+ {
+ size_t t = l > dl ? dl : l;
+ memcpy (ss1, d, t);
+ ++ss1[len2 > 7 ? 7 : len2 - 1];
+ ss1 += t;
+ }
+ }
+ else
+ {
+ memset (s1, '0', len1);
+ memcpy (s1 + (len1 - len2) - 2, s2, len2);
+ if ((len1 / len2) > 4)
+ memcpy (s1 + (len1 - len2) - (3 * len2), s2, len2);
+ }
+ s1[len1] = '\0';
+ do_one_test (impl, s1, s2);
+ }
+ putchar ('\n');
+}
+
+static int
+test_main (void)
+{
+ test_init ();
+
+ printf ("%23s", "");
+ FOR_EACH_IMPL (impl, 0)
+ printf ("\t%s", impl->name);
+ putchar ('\n');
+
+ for (size_t klen = 2; klen < 32; ++klen)
+ for (size_t hlen = 2 * klen; hlen < 16 * klen; hlen += klen)
+ {
+ do_test (0, 0, hlen, klen, 0);
+ do_test (0, 0, hlen, klen, 1);
+ do_test (0, 3, hlen, klen, 0);
+ do_test (0, 3, hlen, klen, 1);
+ do_test (0, 9, hlen, klen, 0);
+ do_test (0, 9, hlen, klen, 1);
+ do_test (0, 15, hlen, klen, 0);
+ do_test (0, 15, hlen, klen, 1);
+
+ do_test (3, 0, hlen, klen, 0);
+ do_test (3, 0, hlen, klen, 1);
+ do_test (3, 3, hlen, klen, 0);
+ do_test (3, 3, hlen, klen, 1);
+ do_test (3, 9, hlen, klen, 0);
+ do_test (3, 9, hlen, klen, 1);
+ do_test (3, 15, hlen, klen, 0);
+ do_test (3, 15, hlen, klen, 1);
+
+ do_test (9, 0, hlen, klen, 0);
+ do_test (9, 0, hlen, klen, 1);
+ do_test (9, 3, hlen, klen, 0);
+ do_test (9, 3, hlen, klen, 1);
+ do_test (9, 9, hlen, klen, 0);
+ do_test (9, 9, hlen, klen, 1);
+ do_test (9, 15, hlen, klen, 0);
+ do_test (9, 15, hlen, klen, 1);
+
+ do_test (15, 0, hlen, klen, 0);
+ do_test (15, 0, hlen, klen, 1);
+ do_test (15, 3, hlen, klen, 0);
+ do_test (15, 3, hlen, klen, 1);
+ do_test (15, 9, hlen, klen, 0);
+ do_test (15, 9, hlen, klen, 1);
+ do_test (15, 15, hlen, klen, 0);
+ do_test (15, 15, hlen, klen, 1);
+ }
+ do_test (0, 0, page_size - 1, 16, 0);
+ do_test (0, 0, page_size - 1, 16, 1);
+
+ return ret;
+}
+
+#include "../test-skeleton.c"
Modified: fsf/trunk/libc/elf/dl-misc.c
==============================================================================
--- fsf/trunk/libc/elf/dl-misc.c (original)
+++ fsf/trunk/libc/elf/dl-misc.c Fri Dec 20 00:02:12 2013
@@ -380,15 +380,23 @@
void *start;
};
+static inline struct __signal_safe_allocator_header *
+ptr_to_signal_safe_allocator_header (void *ptr)
+{
+ return (struct __signal_safe_allocator_header *)
+ ((char *) (ptr) - sizeof (struct __signal_safe_allocator_header));
+}
+
void *weak_function
__signal_safe_memalign (size_t boundary, size_t size)
{
struct __signal_safe_allocator_header *header;
+
if (boundary < sizeof (*header))
boundary = sizeof (*header);
/* Boundary must be a power of two. */
- if (boundary & (boundary - 1) == 0)
+ if (!powerof2 (boundary))
return NULL;
size_t pg = GLRO (dl_pagesize);
@@ -432,9 +440,9 @@
actual = (void *) ((start_pg - 1) * pg);
}
char *start = (void *) (start_pg * pg);
- header = start - sizeof (*header);
-
- }
+ header = ptr_to_signal_safe_allocator_header (start);
+ }
+
header->size = actual_size;
header->start = actual;
void *ptr = header;
@@ -456,7 +464,8 @@
if (ptr == NULL)
return;
- struct __signal_safe_allocator_header *header = ((char *) ptr) - sizeof (*header);
+ struct __signal_safe_allocator_header *header
+ = ptr_to_signal_safe_allocator_header (ptr);
int ret = munmap (header->start, header->size);
assert (ret == 0);
@@ -473,7 +482,8 @@
if (ptr == NULL)
return __signal_safe_malloc (size);
- struct __signal_safe_allocator_header *header = ((char *) ptr) - sizeof (*header);
+ struct __signal_safe_allocator_header *header
+ = ptr_to_signal_safe_allocator_header (ptr);
size_t old_size = header->size;
if (old_size - sizeof (*header) >= size)
return ptr;
Modified: fsf/trunk/libc/include/features.h
==============================================================================
--- fsf/trunk/libc/include/features.h (original)
+++ fsf/trunk/libc/include/features.h Fri Dec 20 00:02:12 2013
@@ -41,17 +41,21 @@
_SVID_SOURCE ISO C, POSIX, and SVID things.
_ATFILE_SOURCE Additional *at interfaces.
_GNU_SOURCE All of the above, plus GNU extensions.
+ _DEFAULT_SOURCE The default set of features (taking precedence over
+ __STRICT_ANSI__).
_REENTRANT Select additionally reentrant object.
_THREAD_SAFE Same as _REENTRANT, often used by other systems.
_FORTIFY_SOURCE If set to numeric value > 0 additional security
measures are defined, according to level.
- The `-ansi' switch to the GNU C compiler defines __STRICT_ANSI__.
- If none of these are defined, the default is to have _SVID_SOURCE,
- _BSD_SOURCE, and _POSIX_SOURCE set to one and _POSIX_C_SOURCE set to
- 200112L. If more than one of these are defined, they accumulate.
- For example __STRICT_ANSI__, _POSIX_SOURCE and _POSIX_C_SOURCE
- together give you ISO C, 1003.1, and 1003.2, but nothing else.
+ The `-ansi' switch to the GNU C compiler, and standards conformance
+ options such as `-std=c99', define __STRICT_ANSI__. If none of
+ these are defined, or if _DEFAULT_SOURCE is defined, the default is
+ to have _SVID_SOURCE, _BSD_SOURCE, and _POSIX_SOURCE set to one and
+ _POSIX_C_SOURCE set to 200809L. If more than one of these are
+ defined, they accumulate. For example __STRICT_ANSI__,
+ _POSIX_SOURCE and _POSIX_C_SOURCE together give you ISO C, 1003.1,
+ and 1003.2, but nothing else.
These are defined by this file and are used by the
header files to decide what to declare or define:
@@ -160,6 +164,8 @@
# define _XOPEN_SOURCE_EXTENDED 1
# undef _LARGEFILE64_SOURCE
# define _LARGEFILE64_SOURCE 1
+# undef _DEFAULT_SOURCE
+# define _DEFAULT_SOURCE 1
# undef _BSD_SOURCE
# define _BSD_SOURCE 1
# undef _SVID_SOURCE
@@ -168,12 +174,19 @@
# define _ATFILE_SOURCE 1
#endif
-/* If nothing (other than _GNU_SOURCE) is defined,
- define _BSD_SOURCE and _SVID_SOURCE. */
-#if (!defined __STRICT_ANSI__ && !defined _ISOC99_SOURCE && \
- !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE && \
- !defined _XOPEN_SOURCE && !defined _BSD_SOURCE && !defined _SVID_SOURCE)
+/* If nothing (other than _GNU_SOURCE and _DEFAULT_SOURCE) is defined,
+ define _DEFAULT_SOURCE, _BSD_SOURCE and _SVID_SOURCE. */
+#if (defined _DEFAULT_SOURCE \
+ || (!defined __STRICT_ANSI__ \
+ && !defined _ISOC99_SOURCE \
+ && !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE \
+ && !defined _XOPEN_SOURCE \
+ && !defined _BSD_SOURCE && !defined _SVID_SOURCE))
+# undef _DEFAULT_SOURCE
+# define _DEFAULT_SOURCE 1
+# undef _BSD_SOURCE
# define _BSD_SOURCE 1
+# undef _SVID_SOURCE
# define _SVID_SOURCE 1
#endif
@@ -204,8 +217,18 @@
# define __USE_ISOCXX11 1
#endif
-/* If none of the ANSI/POSIX macros are defined, use POSIX.1 and POSIX.2
- (and IEEE Std 1003.1b-1993 unless _XOPEN_SOURCE is defined). */
+/* If none of the ANSI/POSIX macros are defined, or if _DEFAULT_SOURCE
+ is defined, use POSIX.1-2008 (or another version depending on
+ _XOPEN_SOURCE). */
+#ifdef _DEFAULT_SOURCE
+# if !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE
+# define __USE_POSIX_IMPLICITLY 1
+# endif
+# undef _POSIX_SOURCE
+# define _POSIX_SOURCE 1
+# undef _POSIX_C_SOURCE
+# define _POSIX_C_SOURCE 200809L
+#endif
#if ((!defined __STRICT_ANSI__ || (_XOPEN_SOURCE - 0) >= 500) && \
!defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE)
# define _POSIX_SOURCE 1
Modified: fsf/trunk/libc/manual/creature.texi
==============================================================================
--- fsf/trunk/libc/manual/creature.texi (original)
+++ fsf/trunk/libc/manual/creature.texi Fri Dec 20 00:02:12 2013
@@ -190,6 +190,21 @@
@comment (none)
@comment GNU
+@defvr Macro _DEFAULT_SOURCE
+If you define this macro, most features are included apart from
+X/Open, LFS and GNU extensions; the effect is similar to defining
+@code{_POSIX_C_SOURCE} to @code{200809L} and @code{_POSIX_SOURCE},
+@code{_SVID_SOURCE}, and @code{_BSD_SOURCE} to 1. Defining this
+macro, on its own and without using compiler options such as
+@option{-ansi} or @option{-std=c99}, has the same effect as not
+defining any feature test macros; defining it together with other
+feature test macros, or when options such as @option{-ansi} are used,
+enables those features even when the other options would otherwise
+cause them to be disabled.
+@end defvr
+
+@comment (none)
+@comment GNU
@defvr Macro _REENTRANT
@defvrx Macro _THREAD_SAFE
If you define one of these macros, reentrant versions of several functions get
@@ -204,10 +219,10 @@
@end defvr
We recommend you use @code{_GNU_SOURCE} in new programs. If you don't
-specify the @samp{-ansi} option to GCC and don't define any of these
-macros explicitly, the effect is the same as defining
-@code{_POSIX_C_SOURCE} to 2 and @code{_POSIX_SOURCE},
-@code{_SVID_SOURCE}, and @code{_BSD_SOURCE} to 1.
+specify the @samp{-ansi} option to GCC, or other conformance options
+such as @option{-std=c99}, and don't define any of these macros
+explicitly, the effect is the same as defining @code{_DEFAULT_SOURCE}
+to 1.
When you define a feature test macro to request a larger class of features,
it is harmless to define in addition a feature test macro for a subset of
Modified: fsf/trunk/libc/manual/texinfo.tex
==============================================================================
--- fsf/trunk/libc/manual/texinfo.tex (original)
+++ fsf/trunk/libc/manual/texinfo.tex Fri Dec 20 00:02:12 2013
@@ -3,7 +3,7 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2013-06-21.17}
+\def\texinfoversion{2013-11-26.10}
%
% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -281,9 +281,9 @@
\toks6=\expandafter{\prevsectiondefs}%
\toks8=\expandafter{\lastcolordefs}%
\mark{%
- \the\toks0 \the\toks2
- \noexpand\or \the\toks4 \the\toks6
- \noexpand\else \the\toks8
+ \the\toks0 \the\toks2 % 0: top marks (\last...)
+ \noexpand\or \the\toks4 \the\toks6 % 1: bottom marks (default, \prev...)
+ \noexpand\else \the\toks8 % 2: color marks
}%
}
% \topmark doesn't work for the very first chapter (after the title
@@ -322,10 +322,13 @@
%
% Do this outside of the \shipout so @code etc. will be expanded in
% the headline as they should be, not taken literally (outputting ''code).
+ \def\commmonheadfootline{\let\hsize=\pagewidth \texinfochars}
+ %
\ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
- \setbox\headlinebox = \vbox{\let\hsize=\pagewidth \makeheadline}%
+ \global\setbox\headlinebox = \vbox{\commmonheadfootline \makeheadline}%
+ %
\ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi
- \setbox\footlinebox = \vbox{\let\hsize=\pagewidth \makefootline}%
+ \global\setbox\footlinebox = \vbox{\commmonheadfootline \makefootline}%
%
{%
% Have to do this stuff outside the \shipout because we want it to
@@ -1138,7 +1141,9 @@
% Color manipulation macros based on pdfcolor.tex,
% except using rgb instead of cmyk; the latter is said to render as a
% very dark gray on-screen and a very dark halftone in print, instead
- % of actual black.
+ % of actual black. The dark red here is dark enough to print on paper as
+ % nearly black, but still distinguishable for online viewing. We use
+ % black by default, though.
\def\rgbDarkRed{0.50 0.09 0.12}
\def\rgbBlack{0 0 0}
%
@@ -1248,10 +1253,9 @@
% used to mark target names; must be expandable.
\def\pdfmkpgn#1{#1}
%
- % by default, use a color that is dark enough to print on paper as
- % nearly black, but still distinguishable for online viewing.
- \def\urlcolor{\rgbDarkRed}
- \def\linkcolor{\rgbDarkRed}
+ % by default, use black for everything.
+ \def\urlcolor{\rgbBlack}
+ \def\linkcolor{\rgbBlack}
\def\endlink{\setcolor{\maincolor}\pdfendlink}
%
% Adding outlines to PDF; macros for calculating structure of outlines
@@ -2377,8 +2381,10 @@
\ifx\next,%
\else\ifx\next-%
\else\ifx\next.%
+ \else\ifx\next\.%
+ \else\ifx\next\comma%
\else\ptexslash
- \fi\fi\fi
+ \fi\fi\fi\fi\fi
\aftersmartic
}
@@ -2519,7 +2525,9 @@
\ifx\codedashprev\codedash
\else \discretionary{}{}{}\fi
\fi
- \global\let\codedashprev=\next
+ % we need the space after the = for the case when \next itself is a
+ % space token; it would get swallowed otherwise. As in @code{- a}.
+ \global\let\codedashprev= \next
}
}
\def\normaldash{-}
@@ -2571,33 +2579,17 @@
% second argument specifying the text to display and an optional third
% arg as text to display instead of (rather than in addition to) the url
% itself. First (mandatory) arg is the url.
-% (This \urefnobreak definition isn't used now, leaving it for a while
-% for comparison.)
-\def\urefnobreak#1{\dourefnobreak #1,,,\finish}
-\def\dourefnobreak#1,#2,#3,#4\finish{\begingroup
- \unsepspaces
- \pdfurl{#1}%
- \setbox0 = \hbox{\ignorespaces #3}%
- \ifdim\wd0 > 0pt
- \unhbox0 % third arg given, show only that
- \else
- \setbox0 = \hbox{\ignorespaces #2}%
- \ifdim\wd0 > 0pt
- \ifpdf
- \unhbox0 % PDF: 2nd arg given, show only it
- \else
- \unhbox0\ (\code{#1})% DVI: 2nd arg given, show both it and url
- \fi
- \else
- \code{#1}% only url given, so show it
- \fi
- \fi
- \endlink
-\endgroup}
-
-% This \urefbreak definition is the active one.
+
+% secret option to allow changing PDF output to show only the second
+% arg (if given), and not the url (which is then just the link target).
+\newif\ifurefurlonlylink
+
+% The main macro is \urefbreak, which allows breaking at expected
+% places within the url. (There used to be another version, which
+% didn't support automatic breaking.)
\def\urefbreak{\begingroup \urefcatcodes \dourefbreak}
\let\uref=\urefbreak
+%
\def\dourefbreak#1{\urefbreakfinish #1,,,\finish}
\def\urefbreakfinish#1,#2,#3,#4\finish{% doesn't work in @example
\unsepspaces
@@ -2606,12 +2598,19 @@
\ifdim\wd0 > 0pt
\unhbox0 % third arg given, show only that
\else
- \setbox0 = \hbox{\ignorespaces #2}%
+ \setbox0 = \hbox{\ignorespaces #2}% look for second arg
\ifdim\wd0 > 0pt
\ifpdf
- \unhbox0 % PDF: 2nd arg given, show only it
+ \ifurefurlonlylink
+ % PDF plus option to not display url, show just arg
+ \unhbox0
+ \else
+ % PDF, normally display both arg and url for consistency,
+ % visibility, if the pdf is eventually used to print, etc.
+ \unhbox0\ (\urefcode{#1})%
+ \fi
\else
- \unhbox0\ (\urefcode{#1})% DVI: 2nd arg given, show both it and url
+ \unhbox0\ (\urefcode{#1})% DVI, always show arg and url
\fi
\else
\urefcode{#1}% only url given, so show it
@@ -2887,6 +2886,15 @@
\def\inlinefmtname{#1}%
\ifx\inlinefmtname\outfmtnametex \ignorespaces #2\fi
}
+%
+% @inlinefmtifelse{FMTNAME,THEN-TEXT,ELSE-TEXT} expands THEN-TEXT if
+% FMTNAME is tex, else ELSE-TEXT.
+\long\def\inlinefmtifelse#1{\doinlinefmtifelse #1,,,\finish}
+\long\def\doinlinefmtifelse#1,#2,#3,#4,\finish{%
+ \def\inlinefmtname{#1}%
+ \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\else \ignorespaces #3\fi
+}
+%
% For raw, must switch into @tex before parsing the argument, to avoid
% setting catcodes prematurely. Doing it this way means that, for
% example, @inlineraw{html, foo{bar} gets a parse error instead of being
@@ -2901,6 +2909,23 @@
\def\inlinerawname{#1}%
\ifx\inlinerawname\outfmtnametex \ignorespaces #2\fi
\endgroup % close group opened by \tex.
+}
+
+% @inlineifset{VAR, TEXT} expands TEXT if VAR is @set.
+%
+\long\def\inlineifset#1{\doinlineifset #1,\finish}
+\long\def\doinlineifset#1,#2,\finish{%
+ \def\inlinevarname{#1}%
+ \expandafter\ifx\csname SET\inlinevarname\endcsname\relax
+ \else\ignorespaces#2\fi
+}
+
+% @inlineifclear{VAR, TEXT} expands TEXT if VAR is not @set.
+%
+\long\def\inlineifclear#1{\doinlineifclear #1,\finish}
+\long\def\doinlineifclear#1,#2,\finish{%
+ \def\inlinevarname{#1}%
+ \expandafter\ifx\csname SET\inlinevarname\endcsname\relax \ignorespaces#2\fi
}
@@ -3658,7 +3683,7 @@
\parskip=\smallskipamount
\ifdim\parskip=0pt \parskip=2pt \fi
%
- % Try typesetting the item mark that if the document erroneously says
+ % Try typesetting the item mark so that if the document erroneously says
% something like @itemize @samp (intending @table), there's an error
% right away at the @itemize. It's not the best error message in the
% world, but it's better than leaving it to the @item. This means if
@@ -4198,7 +4223,7 @@
\def\value{\begingroup\makevalueexpandable\valuexxx}
\def\valuexxx#1{\expandablevalue{#1}\endgroup}
{
- \catcode`\- = \active \catcode`\_ = \active
+ \catcode`\-=\active \catcode`\_=\active
%
\gdef\makevalueexpandable{%
\let\value = \expandablevalue
@@ -4218,6 +4243,11 @@
% variable's value contains other Texinfo commands, it's almost certain
% it will fail (although perhaps we could fix that with sufficient work
% to do a one-level expansion on the result, instead of complete).
+%
+% Unfortunately, this has the consequence that when _ is in the *value*
+% of an @set, it does not print properly in the roman fonts (get the cmr
+% dot accent at position 126 instead). No fix comes to mind, and it's
+% been this way since 2003 or earlier, so just ignore it.
%
\def\expandablevalue#1{%
\expandafter\ifx\csname SET#1\endcsname\relax
@@ -5905,7 +5935,7 @@
%
% Now the second mark, after the heading break. No break points
% between here and the heading.
- \let\prevsectiondefs=\lastsectiondefs
+ \global\let\prevsectiondefs=\lastsectiondefs
\domark
%
% Only insert the space after the number if we have a section number.
@@ -6272,8 +6302,8 @@
\catcode `\|=\other
\catcode `\<=\other
\catcode `\>=\other
- \catcode`\`=\other
- \catcode`\'=\other
+ \catcode `\`=\other
+ \catcode `\'=\other
\escapechar=`\\
%
% ' is active in math mode (mathcode"8000). So reset it, and all our
@@ -6297,7 +6327,7 @@
\let\/=\ptexslash
\let\*=\ptexstar
\let\t=\ptext
- \expandafter \let\csname top\endcsname=\ptextop % outer
+ \expandafter \let\csname top\endcsname=\ptextop % we've made it outer
\let\frenchspacing=\plainfrenchspacing
%
\def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}%
@@ -9940,11 +9970,9 @@
\catcode`\"=\active
\def\activedoublequote{{\tt\char34}}
\let"=\activedoublequote
-\catcode`\~=\active
-\def~{{\tt\char126}}
+\catcode`\~=\active \def\activetilde{{\tt\char126}} \let~ = \activetilde
\chardef\hat=`\^
-\catcode`\^=\active
-\def^{{\tt \hat}}
+\catcode`\^=\active \def\activehat{{\tt \hat}} \let^ = \activehat
\catcode`\_=\active
\def_{\ifusingtt\normalunderscore\_}
@@ -9954,16 +9982,26 @@
\catcode`\|=\active
\def|{{\tt\char124}}
+
\chardef \less=`\<
-\catcode`\<=\active
-\def<{{\tt \less}}
+\catcode`\<=\active \def\activeless{{\tt \less}}\let< = \activeless
\chardef \gtr=`\>
-\catcode`\>=\active
-\def>{{\tt \gtr}}
-\catcode`\+=\active
-\def+{{\tt \char 43}}
-\catcode`\$=\active
-\def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+\catcode`\>=\active \def\activegtr{{\tt \gtr}}\let> = \activegtr
+\catcode`\+=\active \def+{{\tt \char 43}}
+\catcode`\$=\active \def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+
+% used for headline/footline in the output routine, in case the page
+% breaks in the middle of an @tex block.
+\def\texinfochars{%
+ \let< = \activeless
+ \let> = \activegtr
+ \let~ = \activetilde
+ \let^ = \activehat
+ \markupsetuplqdefault \markupsetuprqdefault
+ \let\b = \strong
+ \let\i = \smartitalic
+ % in principle, all other definitions in \tex have to be undone too.
+}
% If a .fmt file is being used, characters that might appear in a file
% name cannot be active until we have parsed the command line.
Modified: fsf/trunk/libc/math/auto-libm-test-in
==============================================================================
--- fsf/trunk/libc/math/auto-libm-test-in (original)
+++ fsf/trunk/libc/math/auto-libm-test-in Fri Dec 20 00:02:12 2013
@@ -104,6 +104,46 @@
atanh 0
atanh -0
atanh 0.75
+
+# cabs (x,y) == cabs (y,x).
+cabs 0.75 12.390625
+# cabs (x,y) == cabs (-x,y).
+cabs -12.390625 0.75
+# cabs (x,y) == cabs (-y,x).
+cabs -0.75 12.390625
+# cabs (x,y) == cabs (-x,-y).
+cabs -12.390625 -0.75
+# cabs (x,y) == cabs (-y,-x).
+cabs -0.75 -12.390625
+# cabs (x,0) == fabs (x).
+cabs -0.75 0
+cabs 0.75 0
+cabs -1.0 0
+cabs 1.0 0
+cabs -5.7e7 0
+cabs 5.7e7 0
+cabs 0.75 1.25
+
+# carg (x + i 0) == 0 for x > 0.
+carg 2.0 0
+# carg (x - i 0) == -0 for x > 0.
+carg 2.0 -0
+carg 0 0
+carg 0 -0
+# carg (x + i 0) == +pi for x < 0.
+carg -2.0 0
+# carg (x - i 0) == -pi for x < 0.
+carg -2.0 -0
+carg -0 0
+carg -0 -0
+# carg (+0 + i y) == pi/2 for y > 0.
+carg 0 2.0
+# carg (-0 + i y) == pi/2 for y > 0.
+carg -0 2.0
+# carg (+0 + i y) == -pi/2 for y < 0.
+carg 0 -2.0
+# carg (-0 + i y) == -pi/2 for y < 0.
+carg -0 -2.0
cbrt 0.0
cbrt -0
@@ -281,6 +321,22 @@
expm1 100000.0
expm1 max
expm1 -max
+expm1 0x1p-2
+expm1 -0x1p-2
+expm1 0x1p-10
+expm1 -0x1p-10
+expm1 0x1p-20
+expm1 -0x1p-20
+expm1 0x1p-29
+expm1 -0x1p-29
+expm1 0x1p-32
+expm1 -0x1p-32
+expm1 0x1p-50
+expm1 -0x1p-50
+expm1 0x1p-64
+expm1 -0x1p-64
+expm1 0x1p-100
+expm1 -0x1p-100
hypot 0 0
hypot 0 -0
@@ -832,11 +888,29 @@
sin 9
sin 10
+sincos 0
+sincos -0
+sincos pi/2
+sincos pi/6
+sincos pi/3
+sincos 0.75
+sincos 0x1p65
+sincos -0x1p65
+sincos 0.80190127184058835
+sincos 1e22
+sincos 0x1p1023
+sincos 0x1p16383
+sincos 0x1p+120
+sincos 0x1p+127
+sincos 0x1.fffff8p+127
+sincos 0x1.fffffep+127
+sincos 0x1p+50
+sincos 0x1p+28
+
sinh 0
sinh -0
sinh 0.75
-# Bug 16293: expm1 inaccurate in directed rounding modes.
-sinh 0x8p-32 xfail:x86_64:ldbl-96-intel xfail:x86
+sinh 0x8p-32
sinh 22
sinh 23
sinh 24
Modified: fsf/trunk/libc/math/auto-libm-test-out
==============================================================================
--- fsf/trunk/libc/math/auto-libm-test-out (original)
+++ fsf/trunk/libc/math/auto-libm-test-out Fri Dec 20 00:02:12 2013
@@ -4851,6 +4851,606 @@
= atanh tonearest ldbl-128ibm 0xcp-4L : 0xf.913957192d2baa37b4a4b6793p-4L : inexact-ok
= atanh towardzero ldbl-128ibm 0xcp-4L : 0xf.913957192d2baa37b4a4b6793p-4L : inexact-ok
= atanh upward ldbl-128ibm 0xcp-4L : 0xf.913957192d2baa37b4a4b67934p-4L : inexact-ok
+cabs 0.75 12.390625
+= cabs downward flt-32 0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs tonearest flt-32 0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs towardzero flt-32 0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs upward flt-32 0xcp-4f 0xc.64p+0f : 0xc.69ce4p+0f : inexact-ok
+= cabs downward dbl-64 0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs tonearest dbl-64 0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs towardzero dbl-64 0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs upward dbl-64 0xcp-4 0xc.64p+0 : 0xc.69ce375a71e1p+0 : inexact-ok
+= cabs downward ldbl-96-intel 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-intel 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-intel 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-96-m68k 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-m68k 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-128 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs tonearest ldbl-128 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs towardzero ldbl-128 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs upward ldbl-128 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9fp+0L : inexact-ok
+= cabs downward ldbl-128ibm 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs upward ldbl-128ibm 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830ccp+0L : inexact-ok
+cabs -12.390625 0.75
+= cabs downward flt-32 -0xc.64p+0f 0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs tonearest flt-32 -0xc.64p+0f 0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs towardzero flt-32 -0xc.64p+0f 0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs upward flt-32 -0xc.64p+0f 0xcp-4f : 0xc.69ce4p+0f : inexact-ok
+= cabs downward dbl-64 -0xc.64p+0 0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs tonearest dbl-64 -0xc.64p+0 0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs towardzero dbl-64 -0xc.64p+0 0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs upward dbl-64 -0xc.64p+0 0xcp-4 : 0xc.69ce375a71e1p+0 : inexact-ok
+= cabs downward ldbl-96-intel -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-intel -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-intel -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-96-m68k -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-m68k -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-128 -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs tonearest ldbl-128 -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs towardzero ldbl-128 -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs upward ldbl-128 -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c9fp+0L : inexact-ok
+= cabs downward ldbl-128ibm -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs upward ldbl-128ibm -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830ccp+0L : inexact-ok
+cabs -0.75 12.390625
+= cabs downward flt-32 -0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs tonearest flt-32 -0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs towardzero flt-32 -0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs upward flt-32 -0xcp-4f 0xc.64p+0f : 0xc.69ce4p+0f : inexact-ok
+= cabs downward dbl-64 -0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs tonearest dbl-64 -0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs towardzero dbl-64 -0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs upward dbl-64 -0xcp-4 0xc.64p+0 : 0xc.69ce375a71e1p+0 : inexact-ok
+= cabs downward ldbl-96-intel -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-intel -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-intel -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-96-m68k -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-m68k -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-128 -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs tonearest ldbl-128 -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs towardzero ldbl-128 -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs upward ldbl-128 -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9fp+0L : inexact-ok
+= cabs downward ldbl-128ibm -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs upward ldbl-128ibm -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830ccp+0L : inexact-ok
+cabs -12.390625 -0.75
+= cabs downward flt-32 -0xc.64p+0f -0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs tonearest flt-32 -0xc.64p+0f -0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs towardzero flt-32 -0xc.64p+0f -0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs upward flt-32 -0xc.64p+0f -0xcp-4f : 0xc.69ce4p+0f : inexact-ok
+= cabs downward dbl-64 -0xc.64p+0 -0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs tonearest dbl-64 -0xc.64p+0 -0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs towardzero dbl-64 -0xc.64p+0 -0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs upward dbl-64 -0xc.64p+0 -0xcp-4 : 0xc.69ce375a71e1p+0 : inexact-ok
+= cabs downward ldbl-96-intel -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-intel -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-intel -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-96-m68k -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-m68k -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-128 -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs tonearest ldbl-128 -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs towardzero ldbl-128 -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs upward ldbl-128 -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c9fp+0L : inexact-ok
+= cabs downward ldbl-128ibm -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs upward ldbl-128ibm -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830ccp+0L : inexact-ok
+cabs -0.75 -12.390625
+= cabs downward flt-32 -0xcp-4f -0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs tonearest flt-32 -0xcp-4f -0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs towardzero flt-32 -0xcp-4f -0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs upward flt-32 -0xcp-4f -0xc.64p+0f : 0xc.69ce4p+0f : inexact-ok
+= cabs downward dbl-64 -0xcp-4 -0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs tonearest dbl-64 -0xcp-4 -0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs towardzero dbl-64 -0xcp-4 -0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs upward dbl-64 -0xcp-4 -0xc.64p+0 : 0xc.69ce375a71e1p+0 : inexact-ok
+= cabs downward ldbl-96-intel -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-intel -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-intel -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-96-m68k -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-m68k -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-128 -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs tonearest ldbl-128 -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs towardzero ldbl-128 -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs upward ldbl-128 -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9fp+0L : inexact-ok
+= cabs downward ldbl-128ibm -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs upward ldbl-128ibm -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830ccp+0L : inexact-ok
+cabs -0.75 0
+= cabs downward flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs tonearest flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs towardzero flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs upward flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs downward dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs tonearest dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs towardzero dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs upward dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs downward ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+cabs 0.75 0
+= cabs downward flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs tonearest flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs towardzero flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs upward flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs downward dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs tonearest dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs towardzero dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs upward dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs downward ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+cabs -1.0 0
+= cabs downward flt-32 -0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs tonearest flt-32 -0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs towardzero flt-32 -0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs upward flt-32 -0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs downward dbl-64 -0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs tonearest dbl-64 -0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs towardzero dbl-64 -0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs upward dbl-64 -0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs downward ldbl-96-intel -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-96-intel -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-96-intel -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-96-m68k -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-96-m68k -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-128 -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-128 -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-128 -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-128 -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-128ibm -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-128ibm -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+cabs 1.0 0
+= cabs downward flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs tonearest flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs towardzero flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs upward flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs downward dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs tonearest dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs towardzero dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs upward dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs downward ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+cabs -5.7e7 0
+= cabs downward flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs tonearest flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs towardzero flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs upward flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs downward dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs tonearest dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs towardzero dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs upward dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs downward ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+cabs 5.7e7 0
+= cabs downward flt-32 0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs tonearest flt-32 0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs towardzero flt-32 0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs upward flt-32 0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs downward dbl-64 0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs tonearest dbl-64 0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs towardzero dbl-64 0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs upward dbl-64 0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs downward ldbl-96-intel 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-96-intel 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-96-intel 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-96-intel 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-96-m68k 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-96-m68k 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-96-m68k 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-96-m68k 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-128 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-128 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-128 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-128 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-128ibm 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-128ibm 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-128ibm 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-128ibm 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+cabs 0.75 1.25
+= cabs downward flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e5p+0f : inexact-ok
+= cabs tonearest flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e5p+0f : inexact-ok
+= cabs towardzero flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e5p+0f : inexact-ok
+= cabs upward flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e52p+0f : inexact-ok
+= cabs downward dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a1p+0 : inexact-ok
+= cabs tonearest dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a2p+0 : inexact-ok
+= cabs towardzero dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a1p+0 : inexact-ok
+= cabs upward dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a2p+0 : inexact-ok
+= cabs downward ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= cabs tonearest ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= cabs towardzero ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= cabs upward ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= cabs downward ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= cabs upward ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= cabs downward ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbap+0L : inexact-ok
+= cabs tonearest ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbbp+0L : inexact-ok
+= cabs towardzero ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbap+0L : inexact-ok
+= cabs upward ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbbp+0L : inexact-ok
+= cabs downward ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1f8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1f8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1f8p+0L : inexact-ok
+= cabs upward ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f2p+0L : inexact-ok
+carg 2.0 0
+= carg downward flt-32 0x2p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg tonearest flt-32 0x2p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg towardzero flt-32 0x2p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg upward flt-32 0x2p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg downward dbl-64 0x2p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg tonearest dbl-64 0x2p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg towardzero dbl-64 0x2p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg upward dbl-64 0x2p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-128 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-128 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-128 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-128 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+carg 2.0 -0
+= carg downward flt-32 0x2p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg tonearest flt-32 0x2p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg towardzero flt-32 0x2p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg upward flt-32 0x2p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg downward dbl-64 0x2p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg tonearest dbl-64 0x2p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg towardzero dbl-64 0x2p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg upward dbl-64 0x2p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-128 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-128 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-128 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-128 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+carg 0 0
+= carg downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+carg 0 -0
+= carg downward flt-32 0x0p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg tonearest flt-32 0x0p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg towardzero flt-32 0x0p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg upward flt-32 0x0p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg downward dbl-64 0x0p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg tonearest dbl-64 0x0p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg towardzero dbl-64 0x0p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg upward dbl-64 0x0p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-128 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-128 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-128 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-128 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+carg -2.0 0
+= carg downward flt-32 -0x2p+0f 0x0p+0f : 0x3.243f68p+0f : inexact-ok
+= carg tonearest flt-32 -0x2p+0f 0x0p+0f : 0x3.243f6cp+0f : inexact-ok
+= carg towardzero flt-32 -0x2p+0f 0x0p+0f : 0x3.243f68p+0f : inexact-ok
+= carg upward flt-32 -0x2p+0f 0x0p+0f : 0x3.243f6cp+0f : inexact-ok
+= carg downward dbl-64 -0x2p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg tonearest dbl-64 -0x2p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg towardzero dbl-64 -0x2p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg upward dbl-64 -0x2p+0 0x0p+0 : 0x3.243f6a8885a32p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-intel -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg downward ldbl-128 -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg upward ldbl-128 -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e0372p+0L : inexact-ok
+= carg downward ldbl-128ibm -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+carg -2.0 -0
+= carg downward flt-32 -0x2p+0f -0x0p+0f : -0x3.243f6cp+0f : inexact-ok
+= carg tonearest flt-32 -0x2p+0f -0x0p+0f : -0x3.243f6cp+0f : inexact-ok
+= carg towardzero flt-32 -0x2p+0f -0x0p+0f : -0x3.243f68p+0f : inexact-ok
+= carg upward flt-32 -0x2p+0f -0x0p+0f : -0x3.243f68p+0f : inexact-ok
+= carg downward dbl-64 -0x2p+0 -0x0p+0 : -0x3.243f6a8885a32p+0 : inexact-ok
+= carg tonearest dbl-64 -0x2p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg towardzero dbl-64 -0x2p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg upward dbl-64 -0x2p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-intel -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg downward ldbl-128 -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= carg upward ldbl-128 -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= carg downward ldbl-128ibm -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+carg -0 0
+= carg downward flt-32 -0x0p+0f 0x0p+0f : 0x3.243f68p+0f : inexact-ok
+= carg tonearest flt-32 -0x0p+0f 0x0p+0f : 0x3.243f6cp+0f : inexact-ok
+= carg towardzero flt-32 -0x0p+0f 0x0p+0f : 0x3.243f68p+0f : inexact-ok
+= carg upward flt-32 -0x0p+0f 0x0p+0f : 0x3.243f6cp+0f : inexact-ok
+= carg downward dbl-64 -0x0p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg tonearest dbl-64 -0x0p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg towardzero dbl-64 -0x0p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg upward dbl-64 -0x0p+0 0x0p+0 : 0x3.243f6a8885a32p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-intel -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg downward ldbl-128 -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg upward ldbl-128 -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e0372p+0L : inexact-ok
+= carg downward ldbl-128ibm -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+carg -0 -0
+= carg downward flt-32 -0x0p+0f -0x0p+0f : -0x3.243f6cp+0f : inexact-ok
+= carg tonearest flt-32 -0x0p+0f -0x0p+0f : -0x3.243f6cp+0f : inexact-ok
+= carg towardzero flt-32 -0x0p+0f -0x0p+0f : -0x3.243f68p+0f : inexact-ok
+= carg upward flt-32 -0x0p+0f -0x0p+0f : -0x3.243f68p+0f : inexact-ok
+= carg downward dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a32p+0 : inexact-ok
+= carg tonearest dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg towardzero dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg upward dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg downward ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= carg upward ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= carg downward ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+carg 0 2.0
+= carg downward flt-32 0x0p+0f 0x2p+0f : 0x1.921fb4p+0f : inexact-ok
+= carg tonearest flt-32 0x0p+0f 0x2p+0f : 0x1.921fb6p+0f : inexact-ok
+= carg towardzero flt-32 0x0p+0f 0x2p+0f : 0x1.921fb4p+0f : inexact-ok
+= carg upward flt-32 0x0p+0f 0x2p+0f : 0x1.921fb6p+0f : inexact-ok
+= carg downward dbl-64 0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg tonearest dbl-64 0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg towardzero dbl-64 0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg upward dbl-64 0x0p+0 0x2p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg downward ldbl-128 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg tonearest ldbl-128 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg towardzero ldbl-128 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg upward ldbl-128 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+carg -0 2.0
+= carg downward flt-32 -0x0p+0f 0x2p+0f : 0x1.921fb4p+0f : inexact-ok
+= carg tonearest flt-32 -0x0p+0f 0x2p+0f : 0x1.921fb6p+0f : inexact-ok
+= carg towardzero flt-32 -0x0p+0f 0x2p+0f : 0x1.921fb4p+0f : inexact-ok
+= carg upward flt-32 -0x0p+0f 0x2p+0f : 0x1.921fb6p+0f : inexact-ok
+= carg downward dbl-64 -0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg tonearest dbl-64 -0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg towardzero dbl-64 -0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg upward dbl-64 -0x0p+0 0x2p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-intel -0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg downward ldbl-128 -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg upward ldbl-128 -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= carg downward ldbl-128ibm -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+carg 0 -2.0
+= carg downward flt-32 0x0p+0f -0x2p+0f : -0x1.921fb6p+0f : inexact-ok
+= carg tonearest flt-32 0x0p+0f -0x2p+0f : -0x1.921fb6p+0f : inexact-ok
+= carg towardzero flt-32 0x0p+0f -0x2p+0f : -0x1.921fb4p+0f : inexact-ok
+= carg upward flt-32 0x0p+0f -0x2p+0f : -0x1.921fb4p+0f : inexact-ok
+= carg downward dbl-64 0x0p+0 -0x2p+0 : -0x1.921fb54442d19p+0 : inexact-ok
+= carg tonearest dbl-64 0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg towardzero dbl-64 0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg upward dbl-64 0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg downward ldbl-128 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg tonearest ldbl-128 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg towardzero ldbl-128 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= carg upward ldbl-128 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+carg -0 -2.0
+= carg downward flt-32 -0x0p+0f -0x2p+0f : -0x1.921fb6p+0f : inexact-ok
+= carg tonearest flt-32 -0x0p+0f -0x2p+0f : -0x1.921fb6p+0f : inexact-ok
+= carg towardzero flt-32 -0x0p+0f -0x2p+0f : -0x1.921fb4p+0f : inexact-ok
+= carg upward flt-32 -0x0p+0f -0x2p+0f : -0x1.921fb4p+0f : inexact-ok
+= carg downward dbl-64 -0x0p+0 -0x2p+0 : -0x1.921fb54442d19p+0 : inexact-ok
+= carg tonearest dbl-64 -0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg towardzero dbl-64 -0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg upward dbl-64 -0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-intel -0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg downward ldbl-128 -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= carg upward ldbl-128 -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= carg downward ldbl-128ibm -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
cbrt 0.0
= cbrt downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
= cbrt tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
@@ -10893,6 +11493,406 @@
= expm1 tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1p+0L : inexact-ok
= expm1 towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
= expm1 upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 0x1p-2
+= expm1 downward flt-32 0x4p-4f : 0x4.8b5e38p-4f : inexact-ok
+= expm1 tonearest flt-32 0x4p-4f : 0x4.8b5e4p-4f : inexact-ok
+= expm1 towardzero flt-32 0x4p-4f : 0x4.8b5e38p-4f : inexact-ok
+= expm1 upward flt-32 0x4p-4f : 0x4.8b5e4p-4f : inexact-ok
+= expm1 downward dbl-64 0x4p-4 : 0x4.8b5e3c3e81864p-4 : inexact-ok
+= expm1 tonearest dbl-64 0x4p-4 : 0x4.8b5e3c3e81868p-4 : inexact-ok
+= expm1 towardzero dbl-64 0x4p-4 : 0x4.8b5e3c3e81864p-4 : inexact-ok
+= expm1 upward dbl-64 0x4p-4 : 0x4.8b5e3c3e81868p-4 : inexact-ok
+= expm1 downward ldbl-96-intel 0x4p-4L : 0x4.8b5e3c3e8186676p-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x4p-4L : 0x4.8b5e3c3e81866768p-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x4p-4L : 0x4.8b5e3c3e8186676p-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x4p-4L : 0x4.8b5e3c3e81866768p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x4p-4L : 0x4.8b5e3c3e8186676p-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x4p-4L : 0x4.8b5e3c3e81866768p-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x4p-4L : 0x4.8b5e3c3e8186676p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x4p-4L : 0x4.8b5e3c3e81866768p-4L : inexact-ok
+= expm1 downward ldbl-128 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baabe4p-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baabe4p-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baabe4p-4L : inexact-ok
+= expm1 upward ldbl-128 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baabe8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baaap-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baacp-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baaap-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baacp-4L : inexact-ok
+expm1 -0x1p-2
+= expm1 downward flt-32 -0x4p-4f : -0x3.8a0834p-4f : inexact-ok
+= expm1 tonearest flt-32 -0x4p-4f : -0x3.8a083p-4f : inexact-ok
+= expm1 towardzero flt-32 -0x4p-4f : -0x3.8a083p-4f : inexact-ok
+= expm1 upward flt-32 -0x4p-4f : -0x3.8a083p-4f : inexact-ok
+= expm1 downward dbl-64 -0x4p-4 : -0x3.8a0830a9befaap-4 : inexact-ok
+= expm1 tonearest dbl-64 -0x4p-4 : -0x3.8a0830a9befa8p-4 : inexact-ok
+= expm1 towardzero dbl-64 -0x4p-4 : -0x3.8a0830a9befa8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x4p-4 : -0x3.8a0830a9befa8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x4p-4L : -0x3.8a0830a9befa8bccp-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x4p-4L : -0x3.8a0830a9befa8bccp-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x4p-4L : -0x3.8a0830a9befa8bc8p-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x4p-4L : -0x3.8a0830a9befa8bc8p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x4p-4L : -0x3.8a0830a9befa8bccp-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x4p-4L : -0x3.8a0830a9befa8bccp-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x4p-4L : -0x3.8a0830a9befa8bc8p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x4p-4L : -0x3.8a0830a9befa8bc8p-4L : inexact-ok
+= expm1 downward ldbl-128 -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c972p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c97p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c97p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c97p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x4p-4L : -0x3.8a0830a9befa8bcbea343629cap-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c9p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c9p-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c9p-4L : inexact-ok
+expm1 0x1p-10
+= expm1 downward flt-32 0x4p-12f : 0x4.008008p-12f : inexact-ok
+= expm1 tonearest flt-32 0x4p-12f : 0x4.008008p-12f : inexact-ok
+= expm1 towardzero flt-32 0x4p-12f : 0x4.008008p-12f : inexact-ok
+= expm1 upward flt-32 0x4p-12f : 0x4.00801p-12f : inexact-ok
+= expm1 downward dbl-64 0x4p-12 : 0x4.00800aab555dcp-12 : inexact-ok
+= expm1 tonearest dbl-64 0x4p-12 : 0x4.00800aab555dcp-12 : inexact-ok
+= expm1 towardzero dbl-64 0x4p-12 : 0x4.00800aab555dcp-12 : inexact-ok
+= expm1 upward dbl-64 0x4p-12 : 0x4.00800aab555ep-12 : inexact-ok
+= expm1 downward ldbl-96-intel 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 upward ldbl-96-intel 0x4p-12L : 0x4.00800aab555dde4p-12L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x4p-12L : 0x4.00800aab555dde4p-12L : inexact-ok
+= expm1 downward ldbl-128 0x4p-12L : 0x4.00800aab555dde38e6ce86e92778p-12L : inexact-ok
+= expm1 tonearest ldbl-128 0x4p-12L : 0x4.00800aab555dde38e6ce86e9277cp-12L : inexact-ok
+= expm1 towardzero ldbl-128 0x4p-12L : 0x4.00800aab555dde38e6ce86e92778p-12L : inexact-ok
+= expm1 upward ldbl-128 0x4p-12L : 0x4.00800aab555dde38e6ce86e9277cp-12L : inexact-ok
+= expm1 downward ldbl-128ibm 0x4p-12L : 0x4.00800aab555dde38e6ce86e926p-12L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x4p-12L : 0x4.00800aab555dde38e6ce86e928p-12L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x4p-12L : 0x4.00800aab555dde38e6ce86e926p-12L : inexact-ok
+= expm1 upward ldbl-128ibm 0x4p-12L : 0x4.00800aab555dde38e6ce86e928p-12L : inexact-ok
+expm1 -0x1p-10
+= expm1 downward flt-32 -0x4p-12f : -0x3.ff800cp-12f : inexact-ok
+= expm1 tonearest flt-32 -0x4p-12f : -0x3.ff800cp-12f : inexact-ok
+= expm1 towardzero flt-32 -0x4p-12f : -0x3.ff8008p-12f : inexact-ok
+= expm1 upward flt-32 -0x4p-12f : -0x3.ff8008p-12f : inexact-ok
+= expm1 downward dbl-64 -0x4p-12 : -0x3.ff800aaa0008ap-12 : inexact-ok
+= expm1 tonearest dbl-64 -0x4p-12 : -0x3.ff800aaa00088p-12 : inexact-ok
+= expm1 towardzero dbl-64 -0x4p-12 : -0x3.ff800aaa00088p-12 : inexact-ok
+= expm1 upward dbl-64 -0x4p-12 : -0x3.ff800aaa00088p-12 : inexact-ok
+= expm1 downward ldbl-96-intel -0x4p-12L : -0x3.ff800aaa0008883p-12L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 upward ldbl-96-intel -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x4p-12L : -0x3.ff800aaa0008883p-12L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 downward ldbl-128 -0x4p-12L : -0x3.ff800aaa0008882d861847853132p-12L : inexact-ok
+= expm1 tonearest ldbl-128 -0x4p-12L : -0x3.ff800aaa0008882d861847853132p-12L : inexact-ok
+= expm1 towardzero ldbl-128 -0x4p-12L : -0x3.ff800aaa0008882d86184785313p-12L : inexact-ok
+= expm1 upward ldbl-128 -0x4p-12L : -0x3.ff800aaa0008882d86184785313p-12L : inexact-ok
+= expm1 downward ldbl-128ibm -0x4p-12L : -0x3.ff800aaa0008882d8618478532p-12L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x4p-12L : -0x3.ff800aaa0008882d8618478531p-12L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x4p-12L : -0x3.ff800aaa0008882d8618478531p-12L : inexact-ok
+= expm1 upward ldbl-128ibm -0x4p-12L : -0x3.ff800aaa0008882d8618478531p-12L : inexact-ok
+expm1 0x1p-20
+= expm1 downward flt-32 0x1p-20f : 0x1.000008p-20f : inexact-ok
+= expm1 tonearest flt-32 0x1p-20f : 0x1.000008p-20f : inexact-ok
+= expm1 towardzero flt-32 0x1p-20f : 0x1.000008p-20f : inexact-ok
+= expm1 upward flt-32 0x1p-20f : 0x1.00000ap-20f : inexact-ok
+= expm1 downward dbl-64 0x1p-20 : 0x1.00000800002aap-20 : inexact-ok
+= expm1 tonearest dbl-64 0x1p-20 : 0x1.00000800002abp-20 : inexact-ok
+= expm1 towardzero dbl-64 0x1p-20 : 0x1.00000800002aap-20 : inexact-ok
+= expm1 upward dbl-64 0x1p-20 : 0x1.00000800002abp-20 : inexact-ok
+= expm1 downward ldbl-96-intel 0x1p-20L : 0x1.00000800002aaaaap-20L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x1p-20L : 0x1.00000800002aaaacp-20L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x1p-20L : 0x1.00000800002aaaaap-20L : inexact-ok
+= expm1 upward ldbl-96-intel 0x1p-20L : 0x1.00000800002aaaacp-20L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x1p-20L : 0x1.00000800002aaaaap-20L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x1p-20L : 0x1.00000800002aaaacp-20L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x1p-20L : 0x1.00000800002aaaaap-20L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x1p-20L : 0x1.00000800002aaaacp-20L : inexact-ok
+= expm1 downward ldbl-128 0x1p-20L : 0x1.00000800002aaaab55555777777dp-20L : inexact-ok
+= expm1 tonearest ldbl-128 0x1p-20L : 0x1.00000800002aaaab55555777777dp-20L : inexact-ok
+= expm1 towardzero ldbl-128 0x1p-20L : 0x1.00000800002aaaab55555777777dp-20L : inexact-ok
+= expm1 upward ldbl-128 0x1p-20L : 0x1.00000800002aaaab55555777777ep-20L : inexact-ok
+= expm1 downward ldbl-128ibm 0x1p-20L : 0x1.00000800002aaaab5555577777p-20L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x1p-20L : 0x1.00000800002aaaab55555777778p-20L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x1p-20L : 0x1.00000800002aaaab5555577777p-20L : inexact-ok
+= expm1 upward ldbl-128ibm 0x1p-20L : 0x1.00000800002aaaab55555777778p-20L : inexact-ok
+expm1 -0x1p-20
+= expm1 downward flt-32 -0x1p-20f : -0xf.ffff9p-24f : inexact-ok
+= expm1 tonearest flt-32 -0x1p-20f : -0xf.ffff8p-24f : inexact-ok
+= expm1 towardzero flt-32 -0x1p-20f : -0xf.ffff8p-24f : inexact-ok
+= expm1 upward flt-32 -0x1p-20f : -0xf.ffff8p-24f : inexact-ok
+= expm1 downward dbl-64 -0x1p-20 : -0xf.ffff800002abp-24 : inexact-ok
+= expm1 tonearest dbl-64 -0x1p-20 : -0xf.ffff800002aa8p-24 : inexact-ok
+= expm1 towardzero dbl-64 -0x1p-20 : -0xf.ffff800002aa8p-24 : inexact-ok
+= expm1 upward dbl-64 -0x1p-20 : -0xf.ffff800002aa8p-24 : inexact-ok
+= expm1 downward ldbl-96-intel -0x1p-20L : -0xf.ffff800002aaaabp-24L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 upward ldbl-96-intel -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x1p-20L : -0xf.ffff800002aaaabp-24L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 downward ldbl-128 -0x1p-20L : -0xf.ffff800002aaaaa00000222221c8p-24L : inexact-ok
+= expm1 tonearest ldbl-128 -0x1p-20L : -0xf.ffff800002aaaaa00000222221c8p-24L : inexact-ok
+= expm1 towardzero ldbl-128 -0x1p-20L : -0xf.ffff800002aaaaa00000222221cp-24L : inexact-ok
+= expm1 upward ldbl-128 -0x1p-20L : -0xf.ffff800002aaaaa00000222221cp-24L : inexact-ok
+= expm1 downward ldbl-128ibm -0x1p-20L : -0xf.ffff800002aaaaa00000222224p-24L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x1p-20L : -0xf.ffff800002aaaaa0000022222p-24L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x1p-20L : -0xf.ffff800002aaaaa0000022222p-24L : inexact-ok
+= expm1 upward ldbl-128ibm -0x1p-20L : -0xf.ffff800002aaaaa0000022222p-24L : inexact-ok
+expm1 0x1p-29
+= expm1 downward flt-32 0x8p-32f : 0x8p-32f : inexact-ok
+= expm1 tonearest flt-32 0x8p-32f : 0x8p-32f : inexact-ok
+= expm1 towardzero flt-32 0x8p-32f : 0x8p-32f : inexact-ok
+= expm1 upward flt-32 0x8p-32f : 0x8.00001p-32f : inexact-ok
+= expm1 downward dbl-64 0x8p-32 : 0x8.0000002p-32 : inexact-ok
+= expm1 tonearest dbl-64 0x8p-32 : 0x8.0000002p-32 : inexact-ok
+= expm1 towardzero dbl-64 0x8p-32 : 0x8.0000002p-32 : inexact-ok
+= expm1 upward dbl-64 0x8p-32 : 0x8.0000002000008p-32 : inexact-ok
+= expm1 downward ldbl-96-intel 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 upward ldbl-96-intel 0x8p-32L : 0x8.000000200000006p-32L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x8p-32L : 0x8.000000200000006p-32L : inexact-ok
+= expm1 downward ldbl-128 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 tonearest ldbl-128 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 towardzero ldbl-128 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 upward ldbl-128 0x8p-32L : 0x8.0000002000000055555556000008p-32L : inexact-ok
+= expm1 downward ldbl-128ibm 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 upward ldbl-128ibm 0x8p-32L : 0x8.00000020000000555555560004p-32L : inexact-ok
+expm1 -0x1p-29
+= expm1 downward flt-32 -0x8p-32f : -0x8p-32f : inexact-ok
+= expm1 tonearest flt-32 -0x8p-32f : -0x8p-32f : inexact-ok
+= expm1 towardzero flt-32 -0x8p-32f : -0x7.fffff8p-32f : inexact-ok
+= expm1 upward flt-32 -0x8p-32f : -0x7.fffff8p-32f : inexact-ok
+= expm1 downward dbl-64 -0x8p-32 : -0x7.ffffffe000004p-32 : inexact-ok
+= expm1 tonearest dbl-64 -0x8p-32 : -0x7.ffffffep-32 : inexact-ok
+= expm1 towardzero dbl-64 -0x8p-32 : -0x7.ffffffep-32 : inexact-ok
+= expm1 upward dbl-64 -0x8p-32 : -0x7.ffffffep-32 : inexact-ok
+= expm1 downward ldbl-96-intel -0x8p-32L : -0x7.ffffffe000000058p-32L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x8p-32L : -0x7.ffffffe000000058p-32L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x8p-32L : -0x7.ffffffe00000005p-32L : inexact-ok
+= expm1 upward ldbl-96-intel -0x8p-32L : -0x7.ffffffe00000005p-32L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x8p-32L : -0x7.ffffffe000000058p-32L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x8p-32L : -0x7.ffffffe000000058p-32L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x8p-32L : -0x7.ffffffe00000005p-32L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x8p-32L : -0x7.ffffffe00000005p-32L : inexact-ok
+= expm1 downward ldbl-128 -0x8p-32L : -0x7.ffffffe000000055555554aaaaacp-32L : inexact-ok
+= expm1 tonearest ldbl-128 -0x8p-32L : -0x7.ffffffe000000055555554aaaaa8p-32L : inexact-ok
+= expm1 towardzero ldbl-128 -0x8p-32L : -0x7.ffffffe000000055555554aaaaa8p-32L : inexact-ok
+= expm1 upward ldbl-128 -0x8p-32L : -0x7.ffffffe000000055555554aaaaa8p-32L : inexact-ok
+= expm1 downward ldbl-128ibm -0x8p-32L : -0x7.ffffffe000000055555554aaacp-32L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x8p-32L : -0x7.ffffffe000000055555554aaaap-32L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x8p-32L : -0x7.ffffffe000000055555554aaaap-32L : inexact-ok
+= expm1 upward ldbl-128ibm -0x8p-32L : -0x7.ffffffe000000055555554aaaap-32L : inexact-ok
+expm1 0x1p-32
+= expm1 downward flt-32 0x1p-32f : 0x1p-32f : inexact-ok
+= expm1 tonearest flt-32 0x1p-32f : 0x1p-32f : inexact-ok
+= expm1 towardzero flt-32 0x1p-32f : 0x1p-32f : inexact-ok
+= expm1 upward flt-32 0x1p-32f : 0x1.000002p-32f : inexact-ok
+= expm1 downward dbl-64 0x1p-32 : 0x1.000000008p-32 : inexact-ok
+= expm1 tonearest dbl-64 0x1p-32 : 0x1.000000008p-32 : inexact-ok
+= expm1 towardzero dbl-64 0x1p-32 : 0x1.000000008p-32 : inexact-ok
+= expm1 upward dbl-64 0x1p-32 : 0x1.0000000080001p-32 : inexact-ok
+= expm1 downward ldbl-96-intel 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 upward ldbl-96-intel 0x1p-32L : 0x1.0000000080000002p-32L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x1p-32L : 0x1.0000000080000002p-32L : inexact-ok
+= expm1 downward ldbl-128 0x1p-32L : 0x1.00000000800000002aaaaaaab555p-32L : inexact-ok
+= expm1 tonearest ldbl-128 0x1p-32L : 0x1.00000000800000002aaaaaaab555p-32L : inexact-ok
+= expm1 towardzero ldbl-128 0x1p-32L : 0x1.00000000800000002aaaaaaab555p-32L : inexact-ok
+= expm1 upward ldbl-128 0x1p-32L : 0x1.00000000800000002aaaaaaab556p-32L : inexact-ok
+= expm1 downward ldbl-128ibm 0x1p-32L : 0x1.00000000800000002aaaaaaab5p-32L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x1p-32L : 0x1.00000000800000002aaaaaaab58p-32L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x1p-32L : 0x1.00000000800000002aaaaaaab5p-32L : inexact-ok
+= expm1 upward ldbl-128ibm 0x1p-32L : 0x1.00000000800000002aaaaaaab58p-32L : inexact-ok
+expm1 -0x1p-32
+= expm1 downward flt-32 -0x1p-32f : -0x1p-32f : inexact-ok
+= expm1 tonearest flt-32 -0x1p-32f : -0x1p-32f : inexact-ok
+= expm1 towardzero flt-32 -0x1p-32f : -0xf.fffffp-36f : inexact-ok
+= expm1 upward flt-32 -0x1p-32f : -0xf.fffffp-36f : inexact-ok
+= expm1 downward dbl-64 -0x1p-32 : -0xf.fffffff800008p-36 : inexact-ok
+= expm1 tonearest dbl-64 -0x1p-32 : -0xf.fffffff8p-36 : inexact-ok
+= expm1 towardzero dbl-64 -0x1p-32 : -0xf.fffffff8p-36 : inexact-ok
+= expm1 upward dbl-64 -0x1p-32 : -0xf.fffffff8p-36 : inexact-ok
+= expm1 downward ldbl-96-intel -0x1p-32L : -0xf.fffffff80000001p-36L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 upward ldbl-96-intel -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x1p-32L : -0xf.fffffff80000001p-36L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 downward ldbl-128 -0x1p-32L : -0xf.fffffff800000002aaaaaaaap-36L : inexact-ok
+= expm1 tonearest ldbl-128 -0x1p-32L : -0xf.fffffff800000002aaaaaaaap-36L : inexact-ok
[... 3627 lines stripped ...]
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits