aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makeconfig21
-rw-r--r--NEWS4
-rw-r--r--Rules13
-rw-r--r--csu/Makefile5
-rw-r--r--debug/pcprofiledump.c83
-rw-r--r--elf/Makefile56
-rw-r--r--elf/cache.c2
-rw-r--r--elf/dl-open.c35
-rw-r--r--elf/dl-tls.c150
-rw-r--r--elf/rtld.c4
-rw-r--r--elf/tst-dlopen-tlsreinit1.c40
-rw-r--r--elf/tst-dlopen-tlsreinit2.c39
-rw-r--r--elf/tst-dlopen-tlsreinit3.c2
-rw-r--r--elf/tst-dlopen-tlsreinit4.c2
-rw-r--r--elf/tst-dlopen-tlsreinitmod1.c20
-rw-r--r--elf/tst-dlopen-tlsreinitmod2.c30
-rw-r--r--elf/tst-dlopen-tlsreinitmod3.c102
-rw-r--r--elf/tst-recursive-tls.c60
-rw-r--r--elf/tst-recursive-tlsmallocmod.c64
-rw-r--r--elf/tst-recursive-tlsmodN.c28
-rw-r--r--include/link.h1
-rw-r--r--libio/Makefile6
-rw-r--r--libio/genops.c2
-rw-r--r--libio/tst-stderr-compat.c52
-rw-r--r--math/Makefile4
-rw-r--r--math/test-nan-payload.c112
-rw-r--r--nptl/allocatestack.c2
-rw-r--r--stdio-common/Makefile2
-rw-r--r--stdio-common/tst-fdopen2.c246
-rw-r--r--stdio-common/tst-fread.c134
-rw-r--r--stdlib/gen-tst-strtod-round.c43
-rw-r--r--stdlib/strtod_l.c2
-rw-r--r--stdlib/strtod_nan_main.c3
-rw-r--r--stdlib/tst-strtod-round-data12
-rw-r--r--stdlib/tst-strtod-round-data.h15858
-rw-r--r--stdlib/tst-strtod-round-skeleton.c98
-rw-r--r--stdlib/tst-strtod-underflow.c357
-rw-r--r--stdlib/tst-strtod1i.c129
-rw-r--r--stdlib/tst-strtod2.c135
-rw-r--r--stdlib/tst-strtod3.c102
-rw-r--r--stdlib/tst-strtod4.c104
-rw-r--r--stdlib/tst-strtod5.c116
-rw-r--r--stdlib/tst-strtod5i.c158
-rw-r--r--sysdeps/generic/ldsodefs.h26
-rw-r--r--sysdeps/powerpc/powerpc64/le/Makefile4
-rw-r--r--sysdeps/pthread/Makefile4
-rw-r--r--sysdeps/pthread/tst-setuid3.c37
-rw-r--r--sysdeps/x86_64/dl-tls.c5
48 files changed, 10304 insertions, 8210 deletions
diff --git a/Makeconfig b/Makeconfig
index 522182a..a6cbb0c 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -360,6 +360,8 @@ whole-archive = -Wl,--whole-archive
# Installed name of the startup code.
# The ELF convention is that the startfile is called crt1.o
start-installed-name = crt1.o
+# Similar to crt1.o, but without _IO_stdin_used.
+start-name-2.0 = crt1-2.0.o
# On systems that do not need a special startfile for statically linked
# binaries, simply set it to the normal name.
ifndef static-start-installed-name
@@ -537,6 +539,25 @@ else # build-static
endif # build-shared
endif # +link
+# Command for linking test programs with crt1.o from glibc 2.0.
++link-2.0-before-inputs = -nostdlib -nostartfiles $(no-pie-ldflag) \
+ $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
+ $(relro-LDFLAGS) $(hashstyle-LDFLAGS) \
+ $(firstword $(CRT-$(@F)) $(csu-objpfx)$(start-name-2.0)) \
+ $(+preinit) $(+prector)
++link-2.0-before-libc = -o $@ $(+link-2.0-before-inputs) \
+ $(filter-out $(addprefix $(csu-objpfx),start.o \
+ $(start-name-2.0))\
+ $(+preinit) $(link-extra-libs) \
+ $(common-objpfx)libc% $(+postinit),$^) \
+ $(link-extra-libs)
++link-after-libc = $(+postctor) $(+postinit)
+define +link-2.0-tests
+$(CC) $(+link-2.0-before-libc) $(rtld-tests-LDFLAGS) $(link-libc-tests) \
+ $(+link-after-libc)
+$(call after-link,$@)
+endef
+
# The pretty printer test programs need to be compiled without optimizations
# so they won't confuse gdb. We could use either the 'GCC optimize' pragma
# or the 'optimize' function attribute to achieve this; however, at least on
diff --git a/NEWS b/NEWS
index d7de50d..5aef543 100644
--- a/NEWS
+++ b/NEWS
@@ -37,6 +37,7 @@ The following CVEs were fixed in this release:
The following bugs are resolved with this release:
[19622] network: Support aliasing with struct sockaddr
+ [27821] ungetc: Fix backup buffer leak on program exit
[30081] resolv: Do not wait for non-existing second DNS response after error
[30701] time: getutxent misbehaves on 32-bit x86 when _TIME_BITS=64
[30994] REP MOVSB performance suffers from page aliasing on Zen 4
@@ -74,6 +75,7 @@ The following bugs are resolved with this release:
[31686] dynamic-link: Stack-based buffer overflow in
parse_tunables_string
[31695] libc: pidfd_spawn/pidfd_spawnp leak an fd if clone3 succeeds
+ [31717] elf: Avoid re-initializing already allocated TLS in dlopen
[31719] dynamic-link: --enable-hardcoded-path-in-tests doesn't work
with -Wl,--enable-new-dtags
[31782] Test build failure with recent GCC trunk
@@ -89,6 +91,8 @@ The following bugs are resolved with this release:
[31968] mremap implementation in C does not handle arguments correctly
[32026] strerror/strsignal TLS not handled correctly for secondary namespaces
[32052] Name space violation in fortify wrappers
+ [32137] libio: Attempt wide backup free only for non-legacy code
+ [32231] elf: Change ldconfig auxcache magic number
Version 2.39
diff --git a/Rules b/Rules
index c7db0a4..9010c5d 100644
--- a/Rules
+++ b/Rules
@@ -188,6 +188,7 @@ binaries-all = $(binaries-all-notests) $(binaries-all-tests)
binaries-static-notests = $(others-static)
binaries-static-tests = $(tests-static) $(xtests-static)
binaries-static = $(binaries-static-notests) $(binaries-static-tests)
+binaries-shared-2.0-tests = $(tests-2.0)
ifeq (yesyes,$(have-fpie)$(build-shared))
binaries-pie-tests = $(tests-pie) $(xtests-pie)
binaries-pie-notests = $(others-pie)
@@ -215,7 +216,8 @@ binaries-malloc-hugetlb2-tests =
endif
binaries-pie = $(binaries-pie-tests) $(binaries-pie-notests)
-binaries-shared-tests = $(filter-out $(binaries-pie) $(binaries-static), \
+binaries-shared-tests = $(filter-out $(binaries-pie) $(binaries-static) \
+ $(binaries-shared-2.0-tests), \
$(binaries-all-tests))
binaries-shared-notests = $(filter-out $(binaries-pie) $(binaries-static), \
$(binaries-all-notests))
@@ -235,6 +237,15 @@ $(addprefix $(objpfx),$(binaries-shared-tests)): %: %.o \
$(+link-tests)
endif
+# Linking test programs with crt1.o from glibc 2.0.
+ifneq "$(strip $(binaries-shared-2.0-tests))" ""
+$(addprefix $(objpfx),$(binaries-shared-2.0-tests)): %: %.o \
+ $(link-extra-libs-tests) \
+ $(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
+ $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
+ $(+link-2.0-tests)
+endif
+
ifneq "$(strip $(binaries-mcheck-tests))" ""
$(addprefix $(objpfx),$(binaries-mcheck-tests)): %-mcheck: %.o \
$(link-extra-libs-tests) \
diff --git a/csu/Makefile b/csu/Makefile
index ac05ab2..34a8d74 100644
--- a/csu/Makefile
+++ b/csu/Makefile
@@ -33,7 +33,7 @@ elide-routines.os = libc-tls
csu-dummies = $(filter-out $(start-installed-name),crt1.o Mcrt1.o)
extra-objs = start.o \
$(start-installed-name) g$(start-installed-name) $(csu-dummies) \
- S$(start-installed-name)
+ S$(start-installed-name) $(start-name-2.0)
omit-deps = $(patsubst %.o,%,$(start-installed-name) g$(start-installed-name) \
b$(start-installed-name) $(csu-dummies) \
S$(start-installed-name) \
@@ -138,6 +138,9 @@ ifndef start-installed-name-rule
$(objpfx)$(start-installed-name): $(objpfx)start.o $(objpfx)abi-note.o \
$(objpfx)init.o $(objpfx)static-reloc.o
$(link-relocatable)
+$(objpfx)$(start-name-2.0): $(objpfx)start.o $(objpfx)abi-note.o \
+ $(objpfx)static-reloc.o
+ $(link-relocatable)
$(objpfx)r$(start-installed-name): $(objpfx)start.o $(objpfx)abi-note.o \
$(objpfx)init.o
$(link-relocatable)
diff --git a/debug/pcprofiledump.c b/debug/pcprofiledump.c
index 049a9c2..94530f0 100644
--- a/debug/pcprofiledump.c
+++ b/debug/pcprofiledump.c
@@ -75,6 +75,44 @@ static struct argp argp =
options, parse_opt, args_doc, doc, NULL, more_help
};
+/* Try to read SIZE bytes from FD and store them on BUF. Terminate
+ the process upon read error. Also terminate the process if less
+ than SIZE bytes are remaining in the file. If !IN_HEADER, do not
+ terminate the process if the end of the file is encountered
+ immediately, before any bytes are read.
+
+ Returns true if SIZE bytes have been read, and false if no bytes
+ have been read due to an end-of-file condition. */
+static bool
+read_exactly (int fd, void *buffer, size_t size, bool in_header)
+{
+ char *p = buffer;
+ char *end = p + size;
+ while (p < end)
+ {
+ ssize_t ret = TEMP_FAILURE_RETRY (read (fd, p, end - p));
+ if (ret < 0)
+ {
+ if (in_header)
+ error (EXIT_FAILURE, errno, _("cannot read header"));
+ else
+ error (EXIT_FAILURE, errno, _("cannot read pointer pair"));
+ }
+ if (ret == 0)
+ {
+ if (p == buffer && !in_header)
+ /* Nothing has been read. */
+ return false;
+ if (in_header)
+ error (EXIT_FAILURE, 0, _("unexpected end of file in header"));
+ else
+ error (EXIT_FAILURE, 0,
+ _("unexpected end of file in pointer pair"));
+ }
+ p += ret;
+ }
+ return true;
+}
int
main (int argc, char *argv[])
@@ -110,8 +148,7 @@ main (int argc, char *argv[])
/* Read the first 4-byte word. It contains the information about
the word size and the endianness. */
uint32_t word;
- if (TEMP_FAILURE_RETRY (read (fd, &word, 4)) != 4)
- error (EXIT_FAILURE, errno, _("cannot read header"));
+ read_exactly (fd, &word, sizeof (word), true);
/* Check whether we have to swap the byte order. */
int must_swap = (word & 0x0fffffff) == bswap_32 (0xdeb00000);
@@ -121,56 +158,30 @@ main (int argc, char *argv[])
/* We have two loops, one for 32 bit pointers, one for 64 bit pointers. */
if (word == 0xdeb00004)
{
- union
- {
- uint32_t ptrs[2];
- char bytes[8];
- } pair;
+ uint32_t ptrs[2];
while (1)
{
- size_t len = sizeof (pair);
- size_t n;
-
- while (len > 0
- && (n = TEMP_FAILURE_RETRY (read (fd, &pair.bytes[8 - len],
- len))) != 0)
- len -= n;
-
- if (len != 0)
- /* Nothing to read. */
+ if (!read_exactly (fd, ptrs, sizeof (ptrs), false))
break;
printf ("this = %#010" PRIx32 ", caller = %#010" PRIx32 "\n",
- must_swap ? bswap_32 (pair.ptrs[0]) : pair.ptrs[0],
- must_swap ? bswap_32 (pair.ptrs[1]) : pair.ptrs[1]);
+ must_swap ? bswap_32 (ptrs[0]) : ptrs[0],
+ must_swap ? bswap_32 (ptrs[1]) : ptrs[1]);
}
}
else if (word == 0xdeb00008)
{
- union
- {
- uint64_t ptrs[2];
- char bytes[16];
- } pair;
+ uint64_t ptrs[2];
while (1)
{
- size_t len = sizeof (pair);
- size_t n;
-
- while (len > 0
- && (n = TEMP_FAILURE_RETRY (read (fd, &pair.bytes[8 - len],
- len))) != 0)
- len -= n;
-
- if (len != 0)
- /* Nothing to read. */
+ if (!read_exactly (fd, ptrs, sizeof (ptrs), false))
break;
printf ("this = %#018" PRIx64 ", caller = %#018" PRIx64 "\n",
- must_swap ? bswap_64 (pair.ptrs[0]) : pair.ptrs[0],
- must_swap ? bswap_64 (pair.ptrs[1]) : pair.ptrs[1]);
+ must_swap ? bswap_64 (ptrs[0]) : ptrs[0],
+ must_swap ? bswap_64 (ptrs[1]) : ptrs[1]);
}
}
else
diff --git a/elf/Makefile b/elf/Makefile
index a50a988..8a5678a 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -414,6 +414,10 @@ tests += \
tst-dlmopen4 \
tst-dlopen-self \
tst-dlopen-tlsmodid \
+ tst-dlopen-tlsreinit1 \
+ tst-dlopen-tlsreinit2 \
+ tst-dlopen-tlsreinit3 \
+ tst-dlopen-tlsreinit4 \
tst-dlopenfail \
tst-dlopenfail-2 \
tst-dlopenrpath \
@@ -443,6 +447,7 @@ tests += \
tst-p_align1 \
tst-p_align2 \
tst-p_align3 \
+ tst-recursive-tls \
tst-relsort1 \
tst-ro-dynamic \
tst-rtld-run-static \
@@ -837,6 +842,9 @@ modules-names += \
tst-dlmopen-twice-mod1 \
tst-dlmopen-twice-mod2 \
tst-dlmopen1mod \
+ tst-dlopen-tlsreinitmod1 \
+ tst-dlopen-tlsreinitmod2 \
+ tst-dlopen-tlsreinitmod3 \
tst-dlopenfaillinkmod \
tst-dlopenfailmod1 \
tst-dlopenfailmod2 \
@@ -877,6 +885,23 @@ modules-names += \
tst-null-argv-lib \
tst-p_alignmod-base \
tst-p_alignmod3 \
+ tst-recursive-tlsmallocmod \
+ tst-recursive-tlsmod0 \
+ tst-recursive-tlsmod1 \
+ tst-recursive-tlsmod2 \
+ tst-recursive-tlsmod3 \
+ tst-recursive-tlsmod4 \
+ tst-recursive-tlsmod5 \
+ tst-recursive-tlsmod6 \
+ tst-recursive-tlsmod7 \
+ tst-recursive-tlsmod8 \
+ tst-recursive-tlsmod9 \
+ tst-recursive-tlsmod10 \
+ tst-recursive-tlsmod11 \
+ tst-recursive-tlsmod12 \
+ tst-recursive-tlsmod13 \
+ tst-recursive-tlsmod14 \
+ tst-recursive-tlsmod15 \
tst-relsort1mod1 \
tst-relsort1mod2 \
tst-ro-dynamic-mod \
@@ -3064,3 +3089,34 @@ CFLAGS-tst-gnu2-tls2mod0.c += -mtls-dialect=$(have-mtls-descriptor)
CFLAGS-tst-gnu2-tls2mod1.c += -mtls-dialect=$(have-mtls-descriptor)
CFLAGS-tst-gnu2-tls2mod2.c += -mtls-dialect=$(have-mtls-descriptor)
endif
+
+$(objpfx)tst-recursive-tls: $(objpfx)tst-recursive-tlsmallocmod.so
+# More objects than DTV_SURPLUS, to trigger DTV reallocation.
+$(objpfx)tst-recursive-tls.out: \
+ $(patsubst %,$(objpfx)tst-recursive-tlsmod%.so, \
+ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15)
+$(objpfx)tst-recursive-tlsmod%.os: tst-recursive-tlsmodN.c
+ $(compile-command.c) -DVAR=thread_$* -DFUNC=get_threadvar_$*
+
+# Order matters here. The test needs the constructor for
+# tst-dlopen-tlsreinitmod2.so to be called first.
+LDFLAGS-tst-dlopen-tlsreinitmod1.so = -Wl,--no-as-needed
+$(objpfx)tst-dlopen-tlsreinitmod1.so: \
+ $(objpfx)tst-dlopen-tlsreinitmod3.so $(objpfx)tst-dlopen-tlsreinitmod2.so
+LDFLAGS-tst-dlopen-tlsreinit2 = -Wl,--no-as-needed
+$(objpfx)tst-dlopen-tlsreinit2: \
+ $(objpfx)tst-dlopen-tlsreinitmod3.so $(objpfx)tst-dlopen-tlsreinitmod2.so
+LDFLAGS-tst-dlopen-tlsreinit4 = -Wl,--no-as-needed
+$(objpfx)tst-dlopen-tlsreinit4: \
+ $(objpfx)tst-dlopen-tlsreinitmod3.so $(objpfx)tst-dlopen-tlsreinitmod2.so
+# tst-dlopen-tlsreinitmod2.so is underlinked and refers to
+# tst-dlopen-tlsreinitmod3.so. The dependency is provided via
+# $(objpfx)tst-dlopen-tlsreinitmod1.so.
+tst-dlopen-tlsreinitmod2.so-no-z-defs = yes
+$(objpfx)tst-dlopen-tlsreinit1.out: $(objpfx)tst-dlopen-tlsreinitmod1.so \
+ $(objpfx)tst-dlopen-tlsreinitmod2.so $(objpfx)tst-dlopen-tlsreinitmod3.so
+# Reuse an audit module which provides ample debug logging.
+$(objpfx)tst-dlopen-tlsreinit3.out: $(objpfx)tst-auditmod1.so
+tst-dlopen-tlsreinit3-ENV = LD_AUDIT=$(objpfx)tst-auditmod1.so
+$(objpfx)tst-dlopen-tlsreinit4.out: $(objpfx)tst-auditmod1.so
+tst-dlopen-tlsreinit4-ENV = LD_AUDIT=$(objpfx)tst-auditmod1.so
diff --git a/elf/cache.c b/elf/cache.c
index 8a618e1..62d681d 100644
--- a/elf/cache.c
+++ b/elf/cache.c
@@ -820,7 +820,7 @@ struct aux_cache_entry
struct aux_cache_entry *next;
};
-#define AUX_CACHEMAGIC "glibc-ld.so.auxcache-1.0"
+#define AUX_CACHEMAGIC "glibc-ld.so.auxcache-2.0"
struct aux_cache_file_entry
{
diff --git a/elf/dl-open.c b/elf/dl-open.c
index c378da1..8556e7b 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -363,17 +363,8 @@ resize_tls_slotinfo (struct link_map *new)
{
bool any_tls = false;
for (unsigned int i = 0; i < new->l_searchlist.r_nlist; ++i)
- {
- struct link_map *imap = new->l_searchlist.r_list[i];
-
- /* Only add TLS memory if this object is loaded now and
- therefore is not yet initialized. */
- if (! imap->l_init_called && imap->l_tls_blocksize > 0)
- {
- _dl_add_to_slotinfo (imap, false);
- any_tls = true;
- }
- }
+ if (_dl_add_to_slotinfo (new->l_searchlist.r_list[i], false))
+ any_tls = true;
return any_tls;
}
@@ -383,22 +374,8 @@ resize_tls_slotinfo (struct link_map *new)
static void
update_tls_slotinfo (struct link_map *new)
{
- unsigned int first_static_tls = new->l_searchlist.r_nlist;
for (unsigned int i = 0; i < new->l_searchlist.r_nlist; ++i)
- {
- struct link_map *imap = new->l_searchlist.r_list[i];
-
- /* Only add TLS memory if this object is loaded now and
- therefore is not yet initialized. */
- if (! imap->l_init_called && imap->l_tls_blocksize > 0)
- {
- _dl_add_to_slotinfo (imap, true);
-
- if (imap->l_need_tls_init
- && first_static_tls == new->l_searchlist.r_nlist)
- first_static_tls = i;
- }
- }
+ _dl_add_to_slotinfo (new->l_searchlist.r_list[i], true);
size_t newgen = GL(dl_tls_generation) + 1;
if (__glibc_unlikely (newgen == 0))
@@ -410,13 +387,11 @@ TLS generation counter wrapped! Please report this."));
/* We need a second pass for static tls data, because
_dl_update_slotinfo must not be run while calls to
_dl_add_to_slotinfo are still pending. */
- for (unsigned int i = first_static_tls; i < new->l_searchlist.r_nlist; ++i)
+ for (unsigned int i = 0; i < new->l_searchlist.r_nlist; ++i)
{
struct link_map *imap = new->l_searchlist.r_list[i];
- if (imap->l_need_tls_init
- && ! imap->l_init_called
- && imap->l_tls_blocksize > 0)
+ if (imap->l_need_tls_init && imap->l_tls_blocksize > 0)
{
/* For static TLS we have to allocate the memory here and
now, but we can delay updating the DTV. */
diff --git a/elf/dl-tls.c b/elf/dl-tls.c
index 670dbc4..3d529b7 100644
--- a/elf/dl-tls.c
+++ b/elf/dl-tls.c
@@ -75,6 +75,31 @@
/* Default for dl_tls_static_optional. */
#define OPTIONAL_TLS 512
+/* Used to count the number of threads currently executing dynamic TLS
+ updates. Used to avoid recursive malloc calls in __tls_get_addr
+ for an interposed malloc that uses global-dynamic TLS (which is not
+ recommended); see _dl_tls_allocate_active checks. This could be a
+ per-thread flag, but would need TLS access in the dynamic linker. */
+unsigned int _dl_tls_threads_in_update;
+
+static inline void
+_dl_tls_allocate_begin (void)
+{
+ atomic_fetch_add_relaxed (&_dl_tls_threads_in_update, 1);
+}
+
+static inline void
+_dl_tls_allocate_end (void)
+{
+ atomic_fetch_add_relaxed (&_dl_tls_threads_in_update, -1);
+}
+
+static inline bool
+_dl_tls_allocate_active (void)
+{
+ return atomic_load_relaxed (&_dl_tls_threads_in_update) > 0;
+}
+
/* Compute the static TLS surplus based on the namespace count and the
TLS space that can be used for optimizations. */
static inline int
@@ -425,12 +450,18 @@ _dl_allocate_tls_storage (void)
size += TLS_PRE_TCB_SIZE;
#endif
- /* Perform the allocation. Reserve space for the required alignment
- and the pointer to the original allocation. */
+ /* Reserve space for the required alignment and the pointer to the
+ original allocation. */
size_t alignment = GLRO (dl_tls_static_align);
+
+ /* Perform the allocation. */
+ _dl_tls_allocate_begin ();
void *allocated = malloc (size + alignment + sizeof (void *));
if (__glibc_unlikely (allocated == NULL))
- return NULL;
+ {
+ _dl_tls_allocate_end ();
+ return NULL;
+ }
/* Perform alignment and allocate the DTV. */
#if TLS_TCB_AT_TP
@@ -466,6 +497,8 @@ _dl_allocate_tls_storage (void)
result = allocate_dtv (result);
if (result == NULL)
free (allocated);
+
+ _dl_tls_allocate_end ();
return result;
}
@@ -483,6 +516,7 @@ _dl_resize_dtv (dtv_t *dtv, size_t max_modid)
size_t newsize = max_modid + DTV_SURPLUS;
size_t oldsize = dtv[-1].counter;
+ _dl_tls_allocate_begin ();
if (dtv == GL(dl_initial_dtv))
{
/* This is the initial dtv that was either statically allocated in
@@ -502,6 +536,7 @@ _dl_resize_dtv (dtv_t *dtv, size_t max_modid)
if (newp == NULL)
oom ();
}
+ _dl_tls_allocate_end ();
newp[0].counter = newsize;
@@ -517,9 +552,14 @@ _dl_resize_dtv (dtv_t *dtv, size_t max_modid)
/* Allocate initial TLS. RESULT should be a non-NULL pointer to storage
for the TLS space. The DTV may be resized, and so this function may
call malloc to allocate that space. The loader's GL(dl_load_tls_lock)
- is taken when manipulating global TLS-related data in the loader. */
+ is taken when manipulating global TLS-related data in the loader.
+
+ If MAIN_THREAD, this is the first call during process
+ initialization. In this case, TLS initialization for secondary
+ (audit) namespaces is skipped because that has already been handled
+ by dlopen. */
void *
-_dl_allocate_tls_init (void *result, bool init_tls)
+_dl_allocate_tls_init (void *result, bool main_thread)
{
if (result == NULL)
/* The memory allocation failed. */
@@ -592,17 +632,21 @@ _dl_allocate_tls_init (void *result, bool init_tls)
some platforms use in static programs requires it. */
dtv[map->l_tls_modid].pointer.val = dest;
- /* Copy the initialization image and clear the BSS part. For
- audit modules or dependencies with initial-exec TLS, we can not
- set the initial TLS image on default loader initialization
- because it would already be set by the audit setup. However,
- subsequent thread creation would need to follow the default
- behaviour. */
- if (map->l_ns != LM_ID_BASE && !init_tls)
+ /* Copy the initialization image and clear the BSS part.
+ For audit modules or dependencies with initial-exec TLS,
+ we can not set the initial TLS image on default loader
+ initialization because it would already be set by the
+ audit setup, which uses the dlopen code and already
+ clears l_need_tls_init. Calls with !main_thread from
+ pthread_create need to initialze TLS for the current
+ thread regardless of namespace. */
+ if (map->l_ns != LM_ID_BASE && main_thread)
continue;
memset (__mempcpy (dest, map->l_tls_initimage,
map->l_tls_initimage_size), '\0',
map->l_tls_blocksize - map->l_tls_initimage_size);
+ if (main_thread)
+ map->l_need_tls_init = 0;
}
total += cnt;
@@ -626,7 +670,7 @@ _dl_allocate_tls (void *mem)
{
return _dl_allocate_tls_init (mem == NULL
? _dl_allocate_tls_storage ()
- : allocate_dtv (mem), true);
+ : allocate_dtv (mem), false);
}
rtld_hidden_def (_dl_allocate_tls)
@@ -676,7 +720,9 @@ allocate_dtv_entry (size_t alignment, size_t size)
if (powerof2 (alignment) && alignment <= _Alignof (max_align_t))
{
/* The alignment is supported by malloc. */
+ _dl_tls_allocate_begin ();
void *ptr = malloc (size);
+ _dl_tls_allocate_end ();
return (struct dtv_pointer) { ptr, ptr };
}
@@ -688,7 +734,10 @@ allocate_dtv_entry (size_t alignment, size_t size)
/* Perform the allocation. This is the pointer we need to free
later. */
+ _dl_tls_allocate_begin ();
void *start = malloc (alloc_size);
+ _dl_tls_allocate_end ();
+
if (start == NULL)
return (struct dtv_pointer) {};
@@ -826,7 +875,11 @@ _dl_update_slotinfo (unsigned long int req_modid, size_t new_gen)
free implementation. Checking here papers over at
least some dynamic TLS usage by interposed mallocs. */
if (dtv[modid].pointer.to_free != NULL)
- free (dtv[modid].pointer.to_free);
+ {
+ _dl_tls_allocate_begin ();
+ free (dtv[modid].pointer.to_free);
+ _dl_tls_allocate_end ();
+ }
dtv[modid].pointer.val = TLS_DTV_UNALLOCATED;
dtv[modid].pointer.to_free = NULL;
@@ -956,10 +1009,22 @@ __tls_get_addr (GET_ADDR_ARGS)
size_t gen = atomic_load_relaxed (&GL(dl_tls_generation));
if (__glibc_unlikely (dtv[0].counter != gen))
{
- /* Update DTV up to the global generation, see CONCURRENCY NOTES
- in _dl_update_slotinfo. */
- gen = atomic_load_acquire (&GL(dl_tls_generation));
- return update_get_addr (GET_ADDR_PARAM, gen);
+ if (_dl_tls_allocate_active ()
+ && GET_ADDR_MODULE < _dl_tls_initial_modid_limit)
+ /* This is a reentrant __tls_get_addr call, but we can
+ satisfy it because it's an initially-loaded module ID.
+ These TLS slotinfo slots do not change, so the
+ out-of-date generation counter does not matter. However,
+ if not in a TLS update, still update_get_addr below, to
+ get off the slow path eventually. */
+ ;
+ else
+ {
+ /* Update DTV up to the global generation, see CONCURRENCY NOTES
+ in _dl_update_slotinfo. */
+ gen = atomic_load_acquire (&GL(dl_tls_generation));
+ return update_get_addr (GET_ADDR_PARAM, gen);
+ }
}
void *p = dtv[GET_ADDR_MODULE].pointer.val;
@@ -969,7 +1034,7 @@ __tls_get_addr (GET_ADDR_ARGS)
return (char *) p + GET_ADDR_OFFSET;
}
-#endif
+#endif /* SHARED */
/* Look up the module's TLS block as for __tls_get_addr,
@@ -1018,10 +1083,52 @@ _dl_tls_get_addr_soft (struct link_map *l)
return data;
}
+size_t _dl_tls_initial_modid_limit;
void
+_dl_tls_initial_modid_limit_setup (void)
+{
+ struct dtv_slotinfo_list *listp = GL(dl_tls_dtv_slotinfo_list);
+ size_t idx;
+ for (idx = 0; idx < listp->len; ++idx)
+ {
+ struct link_map *l = listp->slotinfo[idx].map;
+ if (l == NULL
+ /* The object can be unloaded, so its modid can be
+ reassociated. */
+ || !(l->l_type == lt_executable || l->l_type == lt_library))
+ break;
+ }
+ _dl_tls_initial_modid_limit = idx;
+}
+
+
+/* Add module to slot information data. If DO_ADD is false, only the
+ required memory is allocated. Must be called with
+ GL (dl_load_tls_lock) acquired. If the function has already been
+ called for the link map L with !DO_ADD, then this function will not
+ raise an exception, otherwise it is possible that it encounters a
+ memory allocation failure.
+
+ Return false if L has already been added to the slotinfo data, or
+ if L has no TLS data. If the returned value is true, L has been
+ added with this call (DO_ADD), or has been added in a previous call
+ (!DO_ADD).
+
+ The expected usage is as follows: Call _dl_add_to_slotinfo for
+ several link maps with DO_ADD set to false, and record if any calls
+ result in a true result. If there was a true result, call
+ _dl_add_to_slotinfo again, this time with DO_ADD set to true. (For
+ simplicity, it's possible to call the function for link maps where
+ the previous result was false.) The return value from the second
+ round of calls can be ignored. If there was true result initially,
+ call _dl_update_slotinfo to update the TLS generation counter. */
+bool
_dl_add_to_slotinfo (struct link_map *l, bool do_add)
{
+ if (l->l_tls_blocksize == 0 || l->l_tls_in_slotinfo)
+ return false;
+
/* Now that we know the object is loaded successfully add
modules containing TLS data to the dtv info table. We
might have to increase its size. */
@@ -1050,9 +1157,11 @@ _dl_add_to_slotinfo (struct link_map *l, bool do_add)
the first slot. */
assert (idx == 0);
+ _dl_tls_allocate_begin ();
listp = (struct dtv_slotinfo_list *)
malloc (sizeof (struct dtv_slotinfo_list)
+ TLS_SLOTINFO_SURPLUS * sizeof (struct dtv_slotinfo));
+ _dl_tls_allocate_end ();
if (listp == NULL)
{
/* We ran out of memory while resizing the dtv slotinfo list. */
@@ -1075,7 +1184,10 @@ cannot create TLS data structures"));
atomic_store_relaxed (&listp->slotinfo[idx].map, l);
atomic_store_relaxed (&listp->slotinfo[idx].gen,
GL(dl_tls_generation) + 1);
+ l->l_tls_in_slotinfo = true;
}
+
+ return true;
}
#if PTHREAD_IN_LIBC
diff --git a/elf/rtld.c b/elf/rtld.c
index ac4bb23..3ca9a11 100644
--- a/elf/rtld.c
+++ b/elf/rtld.c
@@ -788,6 +788,8 @@ init_tls (size_t naudit)
_dl_fatal_printf ("\
cannot allocate TLS data structures for initial thread\n");
+ _dl_tls_initial_modid_limit_setup ();
+
/* Store for detection of the special case by __tls_get_addr
so it knows not to pass this dtv to the normal realloc. */
GL(dl_initial_dtv) = GET_DTV (tcbp);
@@ -2335,7 +2337,7 @@ dl_main (const ElfW(Phdr) *phdr,
into the main thread's TLS area, which we allocated above.
Note: thread-local variables must only be accessed after completing
the next step. */
- _dl_allocate_tls_init (tcbp, false);
+ _dl_allocate_tls_init (tcbp, true);
/* And finally install it for the main thread. */
if (! __rtld_tls_init_tp_called)
diff --git a/elf/tst-dlopen-tlsreinit1.c b/elf/tst-dlopen-tlsreinit1.c
new file mode 100644
index 0000000..2016b9b
--- /dev/null
+++ b/elf/tst-dlopen-tlsreinit1.c
@@ -0,0 +1,40 @@
+/* Test that dlopen preserves already accessed TLS (bug 31717).
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <stdbool.h>
+#include <support/check.h>
+#include <support/xdlfcn.h>
+#include <ctype.h>
+
+static int
+do_test (void)
+{
+ void *handle = xdlopen ("tst-dlopen-tlsreinitmod1.so", RTLD_NOW);
+
+ bool *tlsreinitmod3_tested = xdlsym (handle, "tlsreinitmod3_tested");
+ TEST_VERIFY (*tlsreinitmod3_tested);
+
+ xdlclose (handle);
+
+ /* This crashes if the libc.so.6 TLS image has been reverted. */
+ TEST_VERIFY (!isupper ('@'));
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/elf/tst-dlopen-tlsreinit2.c b/elf/tst-dlopen-tlsreinit2.c
new file mode 100644
index 0000000..90ad2c7
--- /dev/null
+++ b/elf/tst-dlopen-tlsreinit2.c
@@ -0,0 +1,39 @@
+/* Test that dlopen preserves already accessed TLS (bug 31717).
+ Variant with initially-linked modules.
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <ctype.h>
+#include <stdbool.h>
+#include <support/check.h>
+#include <support/xdlfcn.h>
+
+
+static int
+do_test (void)
+{
+ /* Defined in tst-dlopen-tlsreinitmod3.so. */
+ extern bool tlsreinitmod3_tested;
+ TEST_VERIFY (tlsreinitmod3_tested);
+
+ /* This crashes if the libc.so.6 TLS image has been reverted. */
+ TEST_VERIFY (!isupper ('@'));
+
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/elf/tst-dlopen-tlsreinit3.c b/elf/tst-dlopen-tlsreinit3.c
new file mode 100644
index 0000000..79bd585
--- /dev/null
+++ b/elf/tst-dlopen-tlsreinit3.c
@@ -0,0 +1,2 @@
+/* Same code, but run with LD_AUDIT=tst-auditmod1.so. */
+#include "tst-dlopen-tlsreinit1.c"
diff --git a/elf/tst-dlopen-tlsreinit4.c b/elf/tst-dlopen-tlsreinit4.c
new file mode 100644
index 0000000..344c921
--- /dev/null
+++ b/elf/tst-dlopen-tlsreinit4.c
@@ -0,0 +1,2 @@
+/* Same code, but run with LD_AUDIT=tst-auditmod1.so. */
+#include "tst-dlopen-tlsreinit2.c"
diff --git a/elf/tst-dlopen-tlsreinitmod1.c b/elf/tst-dlopen-tlsreinitmod1.c
new file mode 100644
index 0000000..354cc3d
--- /dev/null
+++ b/elf/tst-dlopen-tlsreinitmod1.c
@@ -0,0 +1,20 @@
+/* Test that dlopen preserves already accessed TLS (bug 31717), module 1.
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+/* This module triggers loading of tst-dlopen-tlsreinitmod2.so and
+ tst-dlopen-tlsreinitmod3.so. */
diff --git a/elf/tst-dlopen-tlsreinitmod2.c b/elf/tst-dlopen-tlsreinitmod2.c
new file mode 100644
index 0000000..677e69b
--- /dev/null
+++ b/elf/tst-dlopen-tlsreinitmod2.c
@@ -0,0 +1,30 @@
+/* Test that dlopen preserves already accessed TLS (bug 31717), module 2.
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <stdio.h>
+
+/* Defined in tst-dlopen-tlsreinitmod3.so. This an underlinked symbol
+ dependency. */
+extern void call_tlsreinitmod3 (void);
+
+static void __attribute__ ((constructor))
+tlsreinitmod2_init (void)
+{
+ puts ("info: constructor of tst-dlopen-tlsreinitmod2.so invoked");
+ call_tlsreinitmod3 ();
+}
diff --git a/elf/tst-dlopen-tlsreinitmod3.c b/elf/tst-dlopen-tlsreinitmod3.c
new file mode 100644
index 0000000..ef769c5
--- /dev/null
+++ b/elf/tst-dlopen-tlsreinitmod3.c
@@ -0,0 +1,102 @@
+/* Test that dlopen preserves already accessed TLS (bug 31717), module 3.
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <dlfcn.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <unistd.h>
+
+/* Used to verify from the main program that the test ran. */
+bool tlsreinitmod3_tested;
+
+/* This TLS variable must not revert back to the initial state after
+ dlopen. */
+static __thread int tlsreinitmod3_state = 1;
+
+/* Set from the ELF constructor during dlopen. */
+static bool tlsreinitmod3_constructed;
+
+/* Second half of test, behind a compiler barrier. The compiler
+ barrier is necessary to prevent carrying over TLS address
+ information from call_tlsreinitmod3 to call_tlsreinitmod3_tail. */
+void call_tlsreinitmod3_tail (void *self) __attribute__ ((weak));
+
+/* Called from tst-dlopen-tlsreinitmod2.so. */
+void
+call_tlsreinitmod3 (void)
+{
+ printf ("info: call_tlsreinitmod3 invoked (state=%d)\n",
+ tlsreinitmod3_state);
+
+ if (tlsreinitmod3_constructed)
+ {
+ puts ("error: call_tlsreinitmod3 called after ELF constructor");
+ fflush (stdout);
+ /* Cannot rely on test harness due to dynamic linking. */
+ _exit (1);
+ }
+
+ tlsreinitmod3_state = 2;
+
+ /* Self-dlopen. This will run the ELF constructor. */
+ void *self = dlopen ("tst-dlopen-tlsreinitmod3.so", RTLD_NOW);
+ if (self == NULL)
+ {
+ printf ("error: dlopen: %s\n", dlerror ());
+ fflush (stdout);
+ /* Cannot rely on test harness due to dynamic linking. */
+ _exit (1);
+ }
+
+ call_tlsreinitmod3_tail (self);
+}
+
+void
+call_tlsreinitmod3_tail (void *self)
+{
+ printf ("info: dlopen returned in tlsreinitmod3 (state=%d)\n",
+ tlsreinitmod3_state);
+
+ if (!tlsreinitmod3_constructed)
+ {
+ puts ("error: dlopen did not call tlsreinitmod3 ELF constructor");
+ fflush (stdout);
+ /* Cannot rely on test harness due to dynamic linking. */
+ _exit (1);
+ }
+
+ if (tlsreinitmod3_state != 2)
+ {
+ puts ("error: TLS state reverted in tlsreinitmod3");
+ fflush (stdout);
+ /* Cannot rely on test harness due to dynamic linking. */
+ _exit (1);
+ }
+
+ dlclose (self);
+
+ /* Signal test completion to the main program. */
+ tlsreinitmod3_tested = true;
+}
+
+static void __attribute__ ((constructor))
+tlsreinitmod3_init (void)
+{
+ puts ("info: constructor of tst-dlopen-tlsreinitmod3.so invoked");
+ tlsreinitmod3_constructed = true;
+}
diff --git a/elf/tst-recursive-tls.c b/elf/tst-recursive-tls.c
new file mode 100644
index 0000000..716d1f7
--- /dev/null
+++ b/elf/tst-recursive-tls.c
@@ -0,0 +1,60 @@
+/* Test with interposed malloc with dynamic TLS.
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <array_length.h>
+#include <stdio.h>
+#include <support/check.h>
+#include <support/xdlfcn.h>
+
+/* Defined in tst-recursive-tlsmallocmod.so. */
+extern __thread unsigned int malloc_subsytem_counter;
+
+static int
+do_test (void)
+{
+ /* 16 is large enough to exercise the DTV resizing case. */
+ void *handles[16];
+
+ for (unsigned int i = 0; i < array_length (handles); ++i)
+ {
+ /* Re-use the TLS slot for module 0. */
+ if (i > 0)
+ xdlclose (handles[0]);
+
+ char soname[30];
+ snprintf (soname, sizeof (soname), "tst-recursive-tlsmod%u.so", i);
+ handles[i] = xdlopen (soname, RTLD_NOW);
+
+ if (i > 0)
+ {
+ handles[0] = xdlopen ("tst-recursive-tlsmod0.so", RTLD_NOW);
+ int (*fptr) (void) = xdlsym (handles[0], "get_threadvar_0");
+ /* May trigger TLS storage allocation using malloc. */
+ TEST_COMPARE (fptr (), 0);
+ }
+ }
+
+ for (unsigned int i = 0; i < array_length (handles); ++i)
+ xdlclose (handles[i]);
+
+ printf ("info: malloc subsystem calls: %u\n", malloc_subsytem_counter);
+ TEST_VERIFY (malloc_subsytem_counter > 0);
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/elf/tst-recursive-tlsmallocmod.c b/elf/tst-recursive-tlsmallocmod.c
new file mode 100644
index 0000000..c24e994
--- /dev/null
+++ b/elf/tst-recursive-tlsmallocmod.c
@@ -0,0 +1,64 @@
+/* Interposed malloc with dynamic TLS.
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <stdlib.h>
+#include <dlfcn.h>
+
+__thread unsigned int malloc_subsytem_counter;
+
+static __typeof (malloc) *malloc_fptr;
+static __typeof (free) *free_fptr;
+static __typeof (calloc) *calloc_fptr;
+static __typeof (realloc) *realloc_fptr;
+
+static void __attribute__ ((constructor))
+init (void)
+{
+ malloc_fptr = dlsym (RTLD_NEXT, "malloc");
+ free_fptr = dlsym (RTLD_NEXT, "free");
+ calloc_fptr = dlsym (RTLD_NEXT, "calloc");
+ realloc_fptr = dlsym (RTLD_NEXT, "realloc");
+}
+
+void *
+malloc (size_t size)
+{
+ ++malloc_subsytem_counter;
+ return malloc_fptr (size);
+}
+
+void
+free (void *ptr)
+{
+ ++malloc_subsytem_counter;
+ return free_fptr (ptr);
+}
+
+void *
+calloc (size_t a, size_t b)
+{
+ ++malloc_subsytem_counter;
+ return calloc_fptr (a, b);
+}
+
+void *
+realloc (void *ptr, size_t size)
+{
+ ++malloc_subsytem_counter;
+ return realloc_fptr (ptr, size);
+}
diff --git a/elf/tst-recursive-tlsmodN.c b/elf/tst-recursive-tlsmodN.c
new file mode 100644
index 0000000..bb7592a
--- /dev/null
+++ b/elf/tst-recursive-tlsmodN.c
@@ -0,0 +1,28 @@
+/* Test module with global-dynamic TLS. Used to trigger DTV reallocation.
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+/* Compiled with VAR and FUNC set via -D. FUNC requires some
+ relocation against TLS variable VAR. */
+
+__thread int VAR;
+
+int
+FUNC (void)
+{
+ return VAR;
+}
diff --git a/include/link.h b/include/link.h
index cb0d7d8..5ed445d 100644
--- a/include/link.h
+++ b/include/link.h
@@ -212,6 +212,7 @@ struct link_map
unsigned int l_find_object_processed:1; /* Zero if _dl_find_object_update
needs to process this
lt_library map. */
+ unsigned int l_tls_in_slotinfo:1; /* TLS slotinfo updated in dlopen. */
/* NODELETE status of the map. Only valid for maps of type
lt_loaded. Lazy binding sets l_nodelete_active directly,
diff --git a/libio/Makefile b/libio/Makefile
index 27623c9..b92aeaf 100644
--- a/libio/Makefile
+++ b/libio/Makefile
@@ -212,6 +212,12 @@ aux := fileops genops stdfiles stdio strops
ifeq ($(build-shared),yes)
generated += tst-bz24228.mtrace tst-bz24228.check
aux += oldfileops oldstdfiles
+tests += \
+ tst-stderr-compat \
+# tests
+tests-2.0 += \
+ tst-stderr-compat \
+# tests-2.0
endif
shared-only-routines = oldiofopen oldiofdopen oldiofclose oldfileops \
diff --git a/libio/genops.c b/libio/genops.c
index bb1d959..02292be 100644
--- a/libio/genops.c
+++ b/libio/genops.c
@@ -792,7 +792,7 @@ _IO_unbuffer_all (void)
/* Free up the backup area if it was ever allocated. */
if (_IO_have_backup (fp))
_IO_free_backup_area (fp);
- if (fp->_mode > 0 && _IO_have_wbackup (fp))
+ if (!legacy && fp->_mode > 0 && _IO_have_wbackup (fp))
_IO_free_wbackup_area (fp);
if (! (fp->_flags & _IO_UNBUFFERED)
diff --git a/libio/tst-stderr-compat.c b/libio/tst-stderr-compat.c
new file mode 100644
index 0000000..8221415
--- /dev/null
+++ b/libio/tst-stderr-compat.c
@@ -0,0 +1,52 @@
+/* Test that fclose works on stderr from glibc 2.0.
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <shlib-compat.h>
+
+#if TEST_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
+# define _LIBC
+# define _IO_USE_OLD_IO_FILE
+# include <stdio.h>
+# include <support/check.h>
+
+extern FILE _IO_stderr_;
+compat_symbol_reference (libc, _IO_stderr_, _IO_stderr_, GLIBC_2_0);
+compat_symbol_reference (libc, fclose, fclose, GLIBC_2_0);
+
+__attribute__ ((weak, noclone, noinline))
+void
+do_fclose (FILE *fp)
+{
+ TEST_VERIFY_EXIT (fclose (fp) == 0);
+}
+
+static int
+do_test (void)
+{
+ do_fclose (&_IO_stderr_);
+ return 0;
+}
+#else
+static int
+do_test (void)
+{
+ return 0;
+}
+#endif
+
+#include <support/test-driver.c>
diff --git a/math/Makefile b/math/Makefile
index 79ef4eb..c98ee4e 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -261,6 +261,9 @@ tests-static = test-fpucw-static test-fpucw-ieee-static \
# The tested symbols matherr, _LIB_VERSION have been removed in glibc 2.27.
ifeq ($(have-GLIBC_2.26)$(build-shared),yesyes)
tests += test-matherr test-matherr-2
+tests-2.0 += \
+ test-matherr-2 \
+ # tests-2.0
endif
# These tests use internal (unexported) GMP functions and are linked
@@ -462,6 +465,7 @@ CFLAGS-test-flt-eval-method.c += -fexcess-precision=standard
CFLAGS-test-fe-snans-always-signal.c += $(config-cflags-signaling-nans)
CFLAGS-test-nan-const.c += -fno-builtin
+CFLAGS-test-nan-payload.c += -fno-builtin
include ../Rules
diff --git a/math/test-nan-payload.c b/math/test-nan-payload.c
index 4a81dc3..413791e 100644
--- a/math/test-nan-payload.c
+++ b/math/test-nan-payload.c
@@ -16,6 +16,9 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
+#define _LIBC_TEST 1
+#define __STDC_WANT_IEC_60559_TYPES_EXT__
+#include <errno.h>
#include <float.h>
#include <math.h>
#include <stdio.h>
@@ -31,7 +34,7 @@
#define CHECK_IS_NAN(TYPE, A) \
do \
{ \
- if (isnan (A)) \
+ if (isnan (A) && !issignaling (A)) \
puts ("PASS: " #TYPE " " #A); \
else \
{ \
@@ -41,6 +44,19 @@
} \
while (0)
+#define CHECK_PAYLOAD(TYPE, FUNC, A, P) \
+ do \
+ { \
+ if (FUNC (&(A)) == (P)) \
+ puts ("PASS: " #TYPE " payload " #A); \
+ else \
+ { \
+ puts ("FAIL: " #TYPE " payload " #A); \
+ result = 1; \
+ } \
+ } \
+ while (0)
+
#define CHECK_SAME_NAN(TYPE, A, B) \
do \
{ \
@@ -67,33 +83,97 @@
} \
while (0)
+#define CLEAR_ERRNO \
+ do \
+ { \
+ errno = 12345; \
+ } \
+ while (0)
+
+#define CHECK_ERRNO(TYPE, A) \
+ do \
+ { \
+ if (errno == 12345) \
+ puts ("PASS: " #TYPE " " #A " errno"); \
+ else \
+ { \
+ puts ("FAIL: " #TYPE " " #A " errno"); \
+ result = 1; \
+ } \
+ } \
+ while (0)
+
/* Cannot test payloads by memcmp for formats where NaNs have padding
bits. */
#define CAN_TEST_EQ(MANT_DIG) ((MANT_DIG) != 64 && (MANT_DIG) != 106)
-#define RUN_TESTS(TYPE, SFUNC, FUNC, MANT_DIG) \
+#define RUN_TESTS(TYPE, SFUNC, FUNC, PLFUNC, MANT_DIG) \
do \
{ \
+ CLEAR_ERRNO; \
TYPE n123 = WRAP_NAN (FUNC, "123"); \
+ CHECK_ERRNO (TYPE, n123); \
CHECK_IS_NAN (TYPE, n123); \
+ CLEAR_ERRNO; \
TYPE s123 = WRAP_STRTO (SFUNC, "NAN(123)"); \
+ CHECK_ERRNO (TYPE, s123); \
CHECK_IS_NAN (TYPE, s123); \
+ CLEAR_ERRNO; \
TYPE n456 = WRAP_NAN (FUNC, "456"); \
+ CHECK_ERRNO (TYPE, n456); \
CHECK_IS_NAN (TYPE, n456); \
+ CLEAR_ERRNO; \
TYPE s456 = WRAP_STRTO (SFUNC, "NAN(456)"); \
+ CHECK_ERRNO (TYPE, s456); \
CHECK_IS_NAN (TYPE, s456); \
+ CLEAR_ERRNO; \
+ TYPE nh123 = WRAP_NAN (FUNC, "0x123"); \
+ CHECK_ERRNO (TYPE, nh123); \
+ CHECK_IS_NAN (TYPE, nh123); \
+ CLEAR_ERRNO; \
+ TYPE sh123 = WRAP_STRTO (SFUNC, "NAN(0x123)"); \
+ CHECK_ERRNO (TYPE, sh123); \
+ CHECK_IS_NAN (TYPE, sh123); \
+ CLEAR_ERRNO; \
TYPE n123x = WRAP_NAN (FUNC, "123)"); \
+ CHECK_ERRNO (TYPE, n123x); \
CHECK_IS_NAN (TYPE, n123x); \
+ CLEAR_ERRNO; \
TYPE nemp = WRAP_NAN (FUNC, ""); \
+ CHECK_ERRNO (TYPE, nemp); \
CHECK_IS_NAN (TYPE, nemp); \
+ CLEAR_ERRNO; \
TYPE semp = WRAP_STRTO (SFUNC, "NAN()"); \
+ CHECK_ERRNO (TYPE, semp); \
CHECK_IS_NAN (TYPE, semp); \
+ CLEAR_ERRNO; \
TYPE sx = WRAP_STRTO (SFUNC, "NAN"); \
+ CHECK_ERRNO (TYPE, sx); \
CHECK_IS_NAN (TYPE, sx); \
+ CLEAR_ERRNO; \
+ TYPE novf = WRAP_NAN (FUNC, "9999999999" \
+ "99999999999999999999" \
+ "9999999999"); \
+ CHECK_ERRNO (TYPE, novf); \
+ CHECK_IS_NAN (TYPE, novf); \
+ CLEAR_ERRNO; \
+ TYPE sovf = WRAP_STRTO (SFUNC, "NAN(9999999999" \
+ "99999999999999999999" \
+ "9999999999)"); \
+ CHECK_ERRNO (TYPE, sovf); \
+ CHECK_IS_NAN (TYPE, sovf); \
if (CAN_TEST_EQ (MANT_DIG)) \
CHECK_SAME_NAN (TYPE, n123, s123); \
+ CHECK_PAYLOAD (TYPE, PLFUNC, n123, 123); \
+ CHECK_PAYLOAD (TYPE, PLFUNC, s123, 123); \
if (CAN_TEST_EQ (MANT_DIG)) \
CHECK_SAME_NAN (TYPE, n456, s456); \
+ CHECK_PAYLOAD (TYPE, PLFUNC, n456, 456); \
+ CHECK_PAYLOAD (TYPE, PLFUNC, s456, 456); \
+ if (CAN_TEST_EQ (MANT_DIG)) \
+ CHECK_SAME_NAN (TYPE, nh123, sh123); \
+ CHECK_PAYLOAD (TYPE, PLFUNC, nh123, 0x123); \
+ CHECK_PAYLOAD (TYPE, PLFUNC, sh123, 0x123); \
if (CAN_TEST_EQ (MANT_DIG)) \
CHECK_SAME_NAN (TYPE, nemp, semp); \
if (CAN_TEST_EQ (MANT_DIG)) \
@@ -110,9 +190,31 @@ static int
do_test (void)
{
int result = 0;
- RUN_TESTS (float, strtof, nanf, FLT_MANT_DIG);
- RUN_TESTS (double, strtod, nan, DBL_MANT_DIG);
- RUN_TESTS (long double, strtold, nanl, LDBL_MANT_DIG);
+ RUN_TESTS (float, strtof, nanf, getpayloadf, FLT_MANT_DIG);
+ RUN_TESTS (double, strtod, nan, getpayload, DBL_MANT_DIG);
+ RUN_TESTS (long double, strtold, nanl, getpayloadl, LDBL_MANT_DIG);
+#if __HAVE_FLOAT16
+ RUN_TESTS (_Float16, strtof16, nanf16, getpayloadf16, FLT16_MANT_DIG);
+#endif
+#if __HAVE_FLOAT32
+ RUN_TESTS (_Float32, strtof32, nanf32, getpayloadf32, FLT32_MANT_DIG);
+#endif
+#if __HAVE_FLOAT64
+ RUN_TESTS (_Float64, strtof64, nanf64, getpayloadf64, FLT64_MANT_DIG);
+#endif
+#if __HAVE_FLOAT128
+ RUN_TESTS (_Float128, strtof128, nanf128, getpayloadf128, FLT128_MANT_DIG);
+#endif
+#if __HAVE_FLOAT32X
+ RUN_TESTS (_Float32x, strtof32x, nanf32x, getpayloadf32x, FLT32X_MANT_DIG);
+#endif
+#if __HAVE_FLOAT64X
+ RUN_TESTS (_Float64x, strtof64x, nanf64x, getpayloadf64x, FLT64X_MANT_DIG);
+#endif
+#if __HAVE_FLOAT128X
+ RUN_TESTS (_Float128x, strtof128x, nanf128x, getpayloadf128x,
+ FLT128X_MANT_DIG);
+#endif
return result;
}
diff --git a/nptl/allocatestack.c b/nptl/allocatestack.c
index f35a836..2cb562f 100644
--- a/nptl/allocatestack.c
+++ b/nptl/allocatestack.c
@@ -139,7 +139,7 @@ get_cached_stack (size_t *sizep, void **memp)
memset (dtv, '\0', (dtv[-1].counter + 1) * sizeof (dtv_t));
/* Re-initialize the TLS. */
- _dl_allocate_tls_init (TLS_TPADJ (result), true);
+ _dl_allocate_tls_init (TLS_TPADJ (result), false);
return result;
}
diff --git a/stdio-common/Makefile b/stdio-common/Makefile
index b9c38ce..c822434 100644
--- a/stdio-common/Makefile
+++ b/stdio-common/Makefile
@@ -206,6 +206,7 @@ tests := \
tst-cookie \
tst-dprintf-length \
tst-fdopen \
+ tst-fdopen2 \
tst-ferror \
tst-fgets \
tst-fileno \
@@ -215,6 +216,7 @@ tests := \
tst-fmemopen4 \
tst-fphex \
tst-fphex-wide \
+ tst-fread \
tst-fseek \
tst-fwrite \
tst-gets \
diff --git a/stdio-common/tst-fdopen2.c b/stdio-common/tst-fdopen2.c
new file mode 100644
index 0000000..0c6625f
--- /dev/null
+++ b/stdio-common/tst-fdopen2.c
@@ -0,0 +1,246 @@
+/* Test the fdopen function.
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <stdio.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <support/check.h>
+#include <support/support.h>
+#include <support/xunistd.h>
+#include <support/temp_file.h>
+
+char *tmp_dir;
+char *path_to_file;
+
+void
+prepare_tmp_dir (void)
+{
+ tmp_dir = support_create_temp_directory ("tst-fdopen2");
+ path_to_file = xasprintf ("%s/tst-fdopen2.txt", tmp_dir);
+}
+
+/* open temp file descriptor with mode. */
+int
+open_tmp_fd (int mode)
+{
+ int fd = xopen (path_to_file, mode, 0644);
+ return fd;
+}
+
+
+/* close and remove temp file with close. */
+void
+close_tmp_fd (int fd)
+{
+ xclose (fd);
+ xunlink (path_to_file);
+}
+
+/* close and remove temp file with fclose. */
+void
+close_tmp_fp (FILE *fp)
+{
+ fclose (fp);
+ xunlink (path_to_file);
+}
+
+/* test "w" fdopen mode. */
+void
+do_test_fdopen_w (void)
+{
+ int fd, ret;
+ FILE *fp;
+ fd = open_tmp_fd (O_WRONLY | O_CREAT | O_TRUNC);
+
+ /* test mode mismatch. */
+ fp = fdopen (fd, "r");
+ if (fp != NULL || errno != EINVAL)
+ {
+ close_tmp_fd (fd);
+ FAIL_EXIT1 ("fdopen (%d, r) should fail with EINVAL: %m", fd);
+ }
+
+ fp = fdopen (fd, "w");
+ if (fp == NULL)
+ {
+ close_tmp_fd (fd);
+ FAIL_EXIT1 ("fdopen (%d, w): %m", fd);
+ }
+
+ const void *buf = "AAAA";
+ ret = fwrite (buf, 1, 4, fp);
+ if (ret != 4)
+ {
+ close_tmp_fp (fp);
+ FAIL_EXIT1 ("fwrite (): %m");
+ }
+
+ unsigned char buf2[4];
+ rewind (fp);
+ clearerr (fp);
+ /* fread should fail in "w" mode */
+ ret = fread (buf2, 1, 4, fp);
+ if (ret != 0 || ferror (fp) == 0)
+ {
+ close_tmp_fp (fp);
+ FAIL_EXIT1 ("fread should fail in \"w\" mode");
+ }
+
+ fclose (fp);
+}
+
+/* test "r" fdopen mode. */
+void
+do_test_fdopen_r (void)
+{
+ int fd, ret;
+ FILE *fp;
+ fd = open_tmp_fd (O_RDONLY);
+
+ /* test mode mismatch. */
+ fp = fdopen (fd, "w");
+ if (fp != NULL || errno != EINVAL)
+ {
+ close_tmp_fd (fd);
+ FAIL_EXIT1 ("fdopen (%d, w) should fail with EINVAL: %m", fd);
+ }
+
+ fp = fdopen (fd, "r");
+ if (fp == NULL)
+ {
+ close_tmp_fd (fd);
+ FAIL_EXIT1 ("fdopen (%d, w): %m", fd);
+ }
+
+ const void *buf = "BBBB";
+ /* fwrite should fail in "r" mode. */
+ ret = fwrite (buf, 1, 4, fp);
+ if (ret != 0 || ferror (fp) == 0)
+ {
+ close_tmp_fp (fp);
+ FAIL_EXIT1 ("fwrite should fail in \"r\" mode");
+ }
+
+ unsigned char buf2[4];
+ ret = fread (buf2, 1, 4, fp);
+ if (ret != 4)
+ {
+ close_tmp_fp (fp);
+ FAIL_EXIT1 ("fread (): %m");
+ }
+
+ fclose (fp);
+}
+
+/* test "a" fdopen mode. */
+void
+do_test_fdopen_a (void)
+{
+ int fd, ret;
+ FILE *fp;
+ fd = open_tmp_fd (O_WRONLY | O_CREAT | O_APPEND);
+
+ /* test mode mismatch. */
+ fp = fdopen (fd, "r+");
+ if (fp != NULL || errno != EINVAL)
+ {
+ close_tmp_fd (fd);
+ FAIL_EXIT1 ("fdopen (%d, \"r+\") should fail with EINVAL: %m", fd);
+ }
+
+ fp = fdopen (fd, "a");
+ if (fp == NULL)
+ {
+ close_tmp_fd (fd);
+ FAIL_EXIT1 ("fdopen (%d, w): %m", fd);
+ }
+
+ const void *buf = "CCCC";
+ ret = fwrite (buf, 1, 4, fp);
+ if (ret != 4)
+ {
+ close_tmp_fp (fp);
+ FAIL_EXIT1 ("fwrite (): %m");
+ }
+
+ /* fread should fail in "a" mode. */
+ unsigned char buf2[4];
+ clearerr (fp);
+ ret = fread (buf2, 1, 4, fp);
+ if (ret != 0 || ferror (fp) == 0)
+ {
+ close_tmp_fp (fp);
+ FAIL_EXIT1 ("fread should fail \"a\" mode");
+ }
+
+ fclose (fp);
+}
+
+void
+do_test_fdopen_mode (int mode, const char *fmode)
+{
+ int fd, ret;
+ FILE *fp;
+ fd = open_tmp_fd (mode);
+
+ fp = fdopen (fd, fmode);
+ if (fp == NULL)
+ {
+ close_tmp_fd (fd);
+ FAIL_EXIT1 ("fdopen (%d, %s): %m", fd, fmode);
+ }
+
+ const void *buf = "EEEE";
+ ret = fwrite (buf, 1, 4, fp);
+ if (ret != 4)
+ {
+ close_tmp_fp (fp);
+ FAIL_EXIT1 ("fwrite () in mode:%s returns %d: %m", fmode, ret);
+ }
+
+ rewind (fp);
+ unsigned char buf2[4];
+ ret = fread (buf2, 1, 4, fp);
+ if (ret != 4)
+ {
+ close_tmp_fp (fp);
+ FAIL_EXIT1 ("fread () in mode:%s returns %d: %m", fmode, ret);
+ }
+
+ fclose (fp);
+}
+
+static int
+do_test (void)
+{
+
+ prepare_tmp_dir ();
+
+ do_test_fdopen_w ();
+ do_test_fdopen_r ();
+ do_test_fdopen_a ();
+
+ /* test r+ w+ a+ fdopen modes. */
+ do_test_fdopen_mode (O_RDWR, "r+");
+ do_test_fdopen_mode (O_RDWR | O_CREAT | O_TRUNC, "w+");
+ do_test_fdopen_mode (O_RDWR | O_CREAT | O_APPEND, "a+");
+ xunlink (path_to_file);
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/stdio-common/tst-fread.c b/stdio-common/tst-fread.c
new file mode 100644
index 0000000..4d9a789
--- /dev/null
+++ b/stdio-common/tst-fread.c
@@ -0,0 +1,134 @@
+/* Test fread.
+ Copyright (C) 2024 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <support/check.h>
+#include <support/support.h>
+#include <support/temp_file.h>
+#include <support/test-driver.h>
+#include <support/xstdio.h>
+#include <support/xunistd.h>
+
+int
+do_test (void)
+{
+ char *temp_dir = support_create_temp_directory ("tst-fread");
+ char *file1 = xasprintf ("%s/file1", temp_dir);
+ support_write_file_string (file1, "file1");
+ add_temp_file (file1);
+ FILE *fp;
+ size_t ret;
+ char buf[1024];
+
+ verbose_printf ("test single-byte reads\n");
+ fp = xfopen (file1, "r");
+ memset (buf, 0, sizeof buf);
+ ret = fread (buf, 1, 2, fp);
+ TEST_COMPARE (ret, 2);
+ TEST_COMPARE (buf[0], 'f');
+ TEST_COMPARE (buf[1], 'i');
+ TEST_COMPARE (feof (fp), 0);
+ TEST_COMPARE (ftell (fp), 2);
+ memset (buf, 0, sizeof buf);
+ ret = fread (buf, 1, 3, fp);
+ TEST_COMPARE (ret, 3);
+ TEST_COMPARE (buf[0], 'l');
+ TEST_COMPARE (buf[1], 'e');
+ TEST_COMPARE (buf[2], '1');
+ TEST_COMPARE (ftell (fp), 5);
+ TEST_COMPARE (feof (fp), 0);
+ memset (buf, 0, sizeof buf);
+ ret = fread (buf, 1, 1, fp);
+ TEST_COMPARE (ret, 0);
+ TEST_COMPARE (!!feof (fp), 1);
+ TEST_COMPARE (ferror (fp), 0);
+ TEST_COMPARE (ftell (fp), 5);
+ xfclose (fp);
+
+ verbose_printf ("test single-byte reads, EOF part way through\n");
+ fp = xfopen (file1, "r");
+ memset (buf, 0, sizeof buf);
+ ret = fread (buf, 1, sizeof buf, fp);
+ TEST_COMPARE (ret, 5);
+ TEST_COMPARE (buf[0], 'f');
+ TEST_COMPARE (buf[1], 'i');
+ TEST_COMPARE (buf[2], 'l');
+ TEST_COMPARE (buf[3], 'e');
+ TEST_COMPARE (buf[4], '1');
+ TEST_COMPARE (!!feof (fp), 1);
+ TEST_COMPARE (ferror (fp), 0);
+ TEST_COMPARE (ftell (fp), 5);
+ xfclose (fp);
+
+ verbose_printf ("test multi-byte reads\n");
+ fp = xfopen (file1, "r");
+ memset (buf, 0, sizeof buf);
+ ret = fread (buf, 2, 2, fp);
+ TEST_COMPARE (ret, 2);
+ TEST_COMPARE (buf[0], 'f');
+ TEST_COMPARE (buf[1], 'i');
+ TEST_COMPARE (buf[2], 'l');
+ TEST_COMPARE (buf[3], 'e');
+ TEST_COMPARE (feof (fp), 0);
+ TEST_COMPARE (ftell (fp), 4);
+ memset (buf, 0, sizeof buf);
+ ret = fread (buf, 3, 3, fp);
+ TEST_COMPARE (ret, 0);
+ /* The bytes written for a partial element read are unspecified. */
+ TEST_COMPARE (!!feof (fp), 1);
+ TEST_COMPARE (ferror (fp), 0);
+ TEST_COMPARE (ftell (fp), 5);
+ xfclose (fp);
+
+ verbose_printf ("test read error\n");
+ fp = xfopen (file1, "r");
+ xclose (fileno (fp));
+ memset (buf, 0, sizeof buf);
+ ret = fread (buf, 1, sizeof buf, fp);
+ TEST_COMPARE (ret, 0);
+ TEST_COMPARE (feof (fp), 0);
+ TEST_COMPARE (!!ferror (fp), 1);
+ fclose (fp);
+
+ verbose_printf ("test zero size\n");
+ fp = xfopen (file1, "r");
+ ret = fread (buf, 0, SIZE_MAX, fp);
+ TEST_COMPARE (ret, 0);
+ TEST_COMPARE (feof (fp), 0);
+ TEST_COMPARE (ferror (fp), 0);
+ TEST_COMPARE (ftell (fp), 0);
+ xfclose (fp);
+
+ verbose_printf ("test zero items\n");
+ fp = xfopen (file1, "r");
+ ret = fread (buf, SIZE_MAX, 0, fp);
+ TEST_COMPARE (ret, 0);
+ TEST_COMPARE (feof (fp), 0);
+ TEST_COMPARE (ferror (fp), 0);
+ TEST_COMPARE (ftell (fp), 0);
+ xfclose (fp);
+
+ free (temp_dir);
+ free (file1);
+ return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/stdlib/gen-tst-strtod-round.c b/stdlib/gen-tst-strtod-round.c
index e48bf4d..7ce735f 100644
--- a/stdlib/gen-tst-strtod-round.c
+++ b/stdlib/gen-tst-strtod-round.c
@@ -46,6 +46,7 @@ static int
string_to_fp (mpfr_t f, const char *s, mpfr_rnd_t rnd)
{
mpfr_clear_overflow ();
+ mpfr_clear_underflow ();
#ifdef WORKAROUND
mpfr_t f2;
mpfr_init2 (f2, 100000);
@@ -53,12 +54,16 @@ string_to_fp (mpfr_t f, const char *s, mpfr_rnd_t rnd)
int r = mpfr_set (f, f2, rnd);
r |= mpfr_subnormalize (f, r, rnd);
mpfr_clear (f2);
- return r0 | r;
+ r |= r0;
#else
int r = mpfr_strtofr (f, s, NULL, 0, rnd);
r |= mpfr_subnormalize (f, r, rnd);
- return r;
#endif
+ if (r == 0)
+ /* The MPFR underflow flag is set for exact subnormal results,
+ which is not wanted here. */
+ mpfr_clear_underflow ();
+ return r;
}
void
@@ -70,6 +75,21 @@ print_fp (FILE *fout, mpfr_t f, const char *suffix)
mpfr_fprintf (fout, "\t%Ra%s", f, suffix);
}
+static const char *
+suffix_to_print (bool overflow, bool underflow, bool underflow_before_rounding,
+ bool with_comma)
+{
+ if (overflow)
+ return with_comma ? ", true, false,\n" : ", true, false";
+ if (underflow)
+ return with_comma ? ", false, true,\n" : ", false, true";
+ if (underflow_before_rounding)
+ return (with_comma
+ ? ", false, !TININESS_AFTER_ROUNDING,\n"
+ : ", false, !TININESS_AFTER_ROUNDING");
+ return with_comma ? ", false, false,\n" : ", false, false";
+}
+
static void
round_str (FILE *fout, const char *s, int prec, int emin, int emax,
bool ibm_ld)
@@ -80,8 +100,11 @@ round_str (FILE *fout, const char *s, int prec, int emin, int emax,
mpfr_set_emin (emin);
mpfr_set_emax (emax);
mpfr_init (f);
+ string_to_fp (f, s, MPFR_RNDZ);
+ bool underflow_before_rounding = mpfr_underflow_p () != 0;
int r = string_to_fp (f, s, MPFR_RNDD);
bool overflow = mpfr_overflow_p () != 0;
+ bool underflow = mpfr_underflow_p () != 0;
if (ibm_ld)
{
assert (prec == 106 && emin == -1073 && emax == 1024);
@@ -97,19 +120,27 @@ round_str (FILE *fout, const char *s, int prec, int emin, int emax,
}
}
mpfr_fprintf (fout, "\t%s,\n", r ? "false" : "true");
- print_fp (fout, f, overflow ? ", true,\n" : ", false,\n");
+ print_fp (fout, f,
+ suffix_to_print (overflow, underflow, underflow_before_rounding,
+ true));
string_to_fp (f, s, MPFR_RNDN);
overflow = (mpfr_overflow_p () != 0
|| (ibm_ld && mpfr_cmpabs (f, max_value) > 0));
- print_fp (fout, f, overflow ? ", true,\n" : ", false,\n");
+ print_fp (fout, f,
+ suffix_to_print (overflow, underflow, underflow_before_rounding,
+ true));
string_to_fp (f, s, MPFR_RNDZ);
overflow = (mpfr_overflow_p () != 0
|| (ibm_ld && mpfr_cmpabs (f, max_value) > 0));
- print_fp (fout, f, overflow ? ", true,\n" : ", false,\n");
+ print_fp (fout, f,
+ suffix_to_print (overflow, underflow, underflow_before_rounding,
+ true));
string_to_fp (f, s, MPFR_RNDU);
overflow = (mpfr_overflow_p () != 0
|| (ibm_ld && mpfr_cmpabs (f, max_value) > 0));
- print_fp (fout, f, overflow ? ", true" : ", false");
+ print_fp (fout, f,
+ suffix_to_print (overflow, underflow, underflow_before_rounding,
+ false));
mpfr_clear (f);
if (ibm_ld)
mpfr_clear (max_value);
diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c
index be515ce..beb97b3 100644
--- a/stdlib/strtod_l.c
+++ b/stdlib/strtod_l.c
@@ -222,6 +222,7 @@ round_and_return (mp_limb_t *retval, intmax_t exponent, int negative,
mp_size_t shift = MIN_EXP - 1 - exponent;
bool is_tiny = true;
+ bool old_half_bit = (round_limb & (((mp_limb_t) 1) << round_bit)) != 0;
more_bits |= (round_limb & ((((mp_limb_t) 1) << round_bit) - 1)) != 0;
if (shift == MANT_DIG)
@@ -292,6 +293,7 @@ round_and_return (mp_limb_t *retval, intmax_t exponent, int negative,
round_bit = shift - 1;
(void) __mpn_rshift (retval, retval, RETURN_LIMB_SIZE, shift);
}
+ more_bits |= old_half_bit;
/* This is a hook for the m68k long double format, where the
exponent bias is the same for normalized and denormalized
numbers. */
diff --git a/stdlib/strtod_nan_main.c b/stdlib/strtod_nan_main.c
index 4cb286d..39fb7e9 100644
--- a/stdlib/strtod_nan_main.c
+++ b/stdlib/strtod_nan_main.c
@@ -16,6 +16,7 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
+#include <errno.h>
#include <ieee754.h>
#include <locale.h>
#include <math.h>
@@ -50,7 +51,9 @@ STRTOD_NAN (const STRING_TYPE *str, STRING_TYPE **endptr, STRING_TYPE endc)
STRING_TYPE *endp;
unsigned long long int mant;
+ int save_errno = errno;
mant = STRTOULL (str, &endp, 0);
+ __set_errno (save_errno);
if (endp == cp)
SET_NAN_PAYLOAD (retval, mant);
diff --git a/stdlib/tst-strtod-round-data b/stdlib/tst-strtod-round-data
index 84ab705..9489fbc 100644
--- a/stdlib/tst-strtod-round-data
+++ b/stdlib/tst-strtod-round-data
@@ -265,3 +265,15 @@
1.000000000000000000000000000000000385185988877447170611195588516985463707620329643077639047987759113311767578125
1.0000000000000000000000000000000001925929944387235853055977942584927318538101648215388195239938795566558837890625
1.00000000000000000000000000000000009629649721936179265279889712924636592690508241076940976199693977832794189453125
+0x30000002222225p-1077
+0x0.7fffffffffffeap-1022
+0x0.7fffffffffffe9p-1022
+0x0.7ffffd4p-126
+0x0.7ffffffffffffffd4p-16382
+0x0.7ffffffffffffffd4p-16383
+0x0.7ffffffffffffffffffffffffffeap-16382
+0x0.7000004p-126
+0x0.70000000000002p-1022
+0x0.70000000000000004p-16382
+0x0.70000000000000004p-16383
+0x0.70000000000000000000000000002p-16382
diff --git a/stdlib/tst-strtod-round-data.h b/stdlib/tst-strtod-round-data.h
index 8899d15..ed50eb2 100644
--- a/stdlib/tst-strtod-round-data.h
+++ b/stdlib/tst-strtod-round-data.h
@@ -2,1852 +2,1852 @@
static const struct test tests[] = {
TEST ("3.518437208883201171875E+013",
false,
- 0x2p+44, false,
- 0x2p+44, false,
- 0x2p+44, false,
- 0x2.000004p+44, false,
- false,
- 0x2.0000000000002p+44, false,
- 0x2.0000000000004p+44, false,
- 0x2.0000000000002p+44, false,
- 0x2.0000000000004p+44, false,
- true,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- true,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- true,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- true,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false,
- 0x2.0000000000003p+44, false),
+ 0x2p+44, false, false,
+ 0x2p+44, false, false,
+ 0x2p+44, false, false,
+ 0x2.000004p+44, false, false,
+ false,
+ 0x2.0000000000002p+44, false, false,
+ 0x2.0000000000004p+44, false, false,
+ 0x2.0000000000002p+44, false, false,
+ 0x2.0000000000004p+44, false, false,
+ true,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ true,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ true,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ true,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false,
+ 0x2.0000000000003p+44, false, false),
TEST ("1.00000005960464477550",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.0000010000001p+0, false,
- false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000004p+0, false,
- false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000004p+0, false,
- false,
- 0x1.0000010000000002048242f2ffp+0, false,
- 0x1.0000010000000002048242f2ff8p+0, false,
- 0x1.0000010000000002048242f2ffp+0, false,
- 0x1.0000010000000002048242f2ff8p+0, false,
- false,
- 0x1.0000010000000002048242f2ff66p+0, false,
- 0x1.0000010000000002048242f2ff67p+0, false,
- 0x1.0000010000000002048242f2ff66p+0, false,
- 0x1.0000010000000002048242f2ff67p+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.0000010000001p+0, false, false,
+ false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000004p+0, false, false,
+ false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000004p+0, false, false,
+ false,
+ 0x1.0000010000000002048242f2ffp+0, false, false,
+ 0x1.0000010000000002048242f2ff8p+0, false, false,
+ 0x1.0000010000000002048242f2ffp+0, false, false,
+ 0x1.0000010000000002048242f2ff8p+0, false, false,
+ false,
+ 0x1.0000010000000002048242f2ff66p+0, false, false,
+ 0x1.0000010000000002048242f2ff67p+0, false, false,
+ 0x1.0000010000000002048242f2ff66p+0, false, false,
+ 0x1.0000010000000002048242f2ff67p+0, false, false),
TEST ("1.0000000596046447755",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.0000010000001p+0, false,
- false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000004p+0, false,
- false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000002p+0, false,
- 0x1.0000010000000004p+0, false,
- false,
- 0x1.0000010000000002048242f2ffp+0, false,
- 0x1.0000010000000002048242f2ff8p+0, false,
- 0x1.0000010000000002048242f2ffp+0, false,
- 0x1.0000010000000002048242f2ff8p+0, false,
- false,
- 0x1.0000010000000002048242f2ff66p+0, false,
- 0x1.0000010000000002048242f2ff67p+0, false,
- 0x1.0000010000000002048242f2ff66p+0, false,
- 0x1.0000010000000002048242f2ff67p+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.0000010000001p+0, false, false,
+ false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000004p+0, false, false,
+ false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000002p+0, false, false,
+ 0x1.0000010000000004p+0, false, false,
+ false,
+ 0x1.0000010000000002048242f2ffp+0, false, false,
+ 0x1.0000010000000002048242f2ff8p+0, false, false,
+ 0x1.0000010000000002048242f2ffp+0, false, false,
+ 0x1.0000010000000002048242f2ff8p+0, false, false,
+ false,
+ 0x1.0000010000000002048242f2ff66p+0, false, false,
+ 0x1.0000010000000002048242f2ff67p+0, false, false,
+ 0x1.0000010000000002048242f2ff66p+0, false, false,
+ 0x1.0000010000000002048242f2ff67p+0, false, false),
TEST ("1.000000059604644776",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.0000010000001p+0, false,
- false,
- 0x1.000001000000000ap+0, false,
- 0x1.000001000000000cp+0, false,
- 0x1.000001000000000ap+0, false,
- 0x1.000001000000000cp+0, false,
- false,
- 0x1.000001000000000ap+0, false,
- 0x1.000001000000000cp+0, false,
- 0x1.000001000000000ap+0, false,
- 0x1.000001000000000cp+0, false,
- false,
- 0x1.000001000000000b3db12bdc21p+0, false,
- 0x1.000001000000000b3db12bdc21p+0, false,
- 0x1.000001000000000b3db12bdc21p+0, false,
- 0x1.000001000000000b3db12bdc218p+0, false,
- false,
- 0x1.000001000000000b3db12bdc213cp+0, false,
- 0x1.000001000000000b3db12bdc213dp+0, false,
- 0x1.000001000000000b3db12bdc213cp+0, false,
- 0x1.000001000000000b3db12bdc213dp+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.0000010000001p+0, false, false,
+ false,
+ 0x1.000001000000000ap+0, false, false,
+ 0x1.000001000000000cp+0, false, false,
+ 0x1.000001000000000ap+0, false, false,
+ 0x1.000001000000000cp+0, false, false,
+ false,
+ 0x1.000001000000000ap+0, false, false,
+ 0x1.000001000000000cp+0, false, false,
+ 0x1.000001000000000ap+0, false, false,
+ 0x1.000001000000000cp+0, false, false,
+ false,
+ 0x1.000001000000000b3db12bdc21p+0, false, false,
+ 0x1.000001000000000b3db12bdc21p+0, false, false,
+ 0x1.000001000000000b3db12bdc21p+0, false, false,
+ 0x1.000001000000000b3db12bdc218p+0, false, false,
+ false,
+ 0x1.000001000000000b3db12bdc213cp+0, false, false,
+ 0x1.000001000000000b3db12bdc213dp+0, false, false,
+ 0x1.000001000000000b3db12bdc213cp+0, false, false,
+ 0x1.000001000000000b3db12bdc213dp+0, false, false),
TEST ("1.000000059604644775",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000000fffffffp+0, false,
- 0x1.000001p+0, false,
- 0x1.000000fffffffp+0, false,
- 0x1.000001p+0, false,
- false,
- 0x1.000000fffffffff8p+0, false,
- 0x1.000000fffffffff8p+0, false,
- 0x1.000000fffffffff8p+0, false,
- 0x1.000000fffffffffap+0, false,
- false,
- 0x1.000000fffffffff8p+0, false,
- 0x1.000000fffffffff8p+0, false,
- 0x1.000000fffffffff8p+0, false,
- 0x1.000000fffffffffap+0, false,
- false,
- 0x1.000000fffffffff8cb535a09dd8p+0, false,
- 0x1.000000fffffffff8cb535a09dd8p+0, false,
- 0x1.000000fffffffff8cb535a09dd8p+0, false,
- 0x1.000000fffffffff8cb535a09dep+0, false,
- false,
- 0x1.000000fffffffff8cb535a09dd9p+0, false,
- 0x1.000000fffffffff8cb535a09dd91p+0, false,
- 0x1.000000fffffffff8cb535a09dd9p+0, false,
- 0x1.000000fffffffff8cb535a09dd91p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000000fffffffp+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000000fffffffp+0, false, false,
+ 0x1.000001p+0, false, false,
+ false,
+ 0x1.000000fffffffff8p+0, false, false,
+ 0x1.000000fffffffff8p+0, false, false,
+ 0x1.000000fffffffff8p+0, false, false,
+ 0x1.000000fffffffffap+0, false, false,
+ false,
+ 0x1.000000fffffffff8p+0, false, false,
+ 0x1.000000fffffffff8p+0, false, false,
+ 0x1.000000fffffffff8p+0, false, false,
+ 0x1.000000fffffffffap+0, false, false,
+ false,
+ 0x1.000000fffffffff8cb535a09dd8p+0, false, false,
+ 0x1.000000fffffffff8cb535a09dd8p+0, false, false,
+ 0x1.000000fffffffff8cb535a09dd8p+0, false, false,
+ 0x1.000000fffffffff8cb535a09dep+0, false, false,
+ false,
+ 0x1.000000fffffffff8cb535a09dd9p+0, false, false,
+ 0x1.000000fffffffff8cb535a09dd91p+0, false, false,
+ 0x1.000000fffffffff8cb535a09dd9p+0, false, false,
+ 0x1.000000fffffffff8cb535a09dd91p+0, false, false),
TEST ("1.00000005960464478",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.0000010000001p+0, false,
- false,
- 0x1.0000010000000054p+0, false,
- 0x1.0000010000000056p+0, false,
- 0x1.0000010000000054p+0, false,
- 0x1.0000010000000056p+0, false,
- false,
- 0x1.0000010000000054p+0, false,
- 0x1.0000010000000056p+0, false,
- 0x1.0000010000000054p+0, false,
- 0x1.0000010000000056p+0, false,
- false,
- 0x1.0000010000000055072873252f8p+0, false,
- 0x1.0000010000000055072873253p+0, false,
- 0x1.0000010000000055072873252f8p+0, false,
- 0x1.0000010000000055072873253p+0, false,
- false,
- 0x1.0000010000000055072873252febp+0, false,
- 0x1.0000010000000055072873252febp+0, false,
- 0x1.0000010000000055072873252febp+0, false,
- 0x1.0000010000000055072873252fecp+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.0000010000001p+0, false, false,
+ false,
+ 0x1.0000010000000054p+0, false, false,
+ 0x1.0000010000000056p+0, false, false,
+ 0x1.0000010000000054p+0, false, false,
+ 0x1.0000010000000056p+0, false, false,
+ false,
+ 0x1.0000010000000054p+0, false, false,
+ 0x1.0000010000000056p+0, false, false,
+ 0x1.0000010000000054p+0, false, false,
+ 0x1.0000010000000056p+0, false, false,
+ false,
+ 0x1.0000010000000055072873252f8p+0, false, false,
+ 0x1.0000010000000055072873253p+0, false, false,
+ 0x1.0000010000000055072873252f8p+0, false, false,
+ 0x1.0000010000000055072873253p+0, false, false,
+ false,
+ 0x1.0000010000000055072873252febp+0, false, false,
+ 0x1.0000010000000055072873252febp+0, false, false,
+ 0x1.0000010000000055072873252febp+0, false, false,
+ 0x1.0000010000000055072873252fecp+0, false, false),
TEST ("1.0000000596046448",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.0000010000001p+0, false,
- false,
- 0x1.00000100000001c4p+0, false,
- 0x1.00000100000001c6p+0, false,
- 0x1.00000100000001c4p+0, false,
- 0x1.00000100000001c6p+0, false,
- false,
- 0x1.00000100000001c4p+0, false,
- 0x1.00000100000001c6p+0, false,
- 0x1.00000100000001c4p+0, false,
- 0x1.00000100000001c6p+0, false,
- false,
- 0x1.00000100000001c5f67cd79279p+0, false,
- 0x1.00000100000001c5f67cd792798p+0, false,
- 0x1.00000100000001c5f67cd79279p+0, false,
- 0x1.00000100000001c5f67cd792798p+0, false,
- false,
- 0x1.00000100000001c5f67cd7927953p+0, false,
- 0x1.00000100000001c5f67cd7927954p+0, false,
- 0x1.00000100000001c5f67cd7927953p+0, false,
- 0x1.00000100000001c5f67cd7927954p+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.0000010000001p+0, false, false,
+ false,
+ 0x1.00000100000001c4p+0, false, false,
+ 0x1.00000100000001c6p+0, false, false,
+ 0x1.00000100000001c4p+0, false, false,
+ 0x1.00000100000001c6p+0, false, false,
+ false,
+ 0x1.00000100000001c4p+0, false, false,
+ 0x1.00000100000001c6p+0, false, false,
+ 0x1.00000100000001c4p+0, false, false,
+ 0x1.00000100000001c6p+0, false, false,
+ false,
+ 0x1.00000100000001c5f67cd79279p+0, false, false,
+ 0x1.00000100000001c5f67cd792798p+0, false, false,
+ 0x1.00000100000001c5f67cd79279p+0, false, false,
+ 0x1.00000100000001c5f67cd792798p+0, false, false,
+ false,
+ 0x1.00000100000001c5f67cd7927953p+0, false, false,
+ 0x1.00000100000001c5f67cd7927954p+0, false, false,
+ 0x1.00000100000001c5f67cd7927953p+0, false, false,
+ 0x1.00000100000001c5f67cd7927954p+0, false, false),
TEST ("1.000000059604645",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.0000010000001p+0, false,
- 0x1.0000010000001p+0, false,
- 0x1.0000010000001p+0, false,
- 0x1.0000010000002p+0, false,
- false,
- 0x1.000001000000102ep+0, false,
- 0x1.000001000000103p+0, false,
- 0x1.000001000000102ep+0, false,
- 0x1.000001000000103p+0, false,
- false,
- 0x1.000001000000102ep+0, false,
- 0x1.000001000000103p+0, false,
- 0x1.000001000000102ep+0, false,
- 0x1.000001000000103p+0, false,
- false,
- 0x1.000001000000102f4fc8c3d757p+0, false,
- 0x1.000001000000102f4fc8c3d7578p+0, false,
- 0x1.000001000000102f4fc8c3d757p+0, false,
- 0x1.000001000000102f4fc8c3d7578p+0, false,
- false,
- 0x1.000001000000102f4fc8c3d75769p+0, false,
- 0x1.000001000000102f4fc8c3d75769p+0, false,
- 0x1.000001000000102f4fc8c3d75769p+0, false,
- 0x1.000001000000102f4fc8c3d7576ap+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.0000010000001p+0, false, false,
+ 0x1.0000010000001p+0, false, false,
+ 0x1.0000010000001p+0, false, false,
+ 0x1.0000010000002p+0, false, false,
+ false,
+ 0x1.000001000000102ep+0, false, false,
+ 0x1.000001000000103p+0, false, false,
+ 0x1.000001000000102ep+0, false, false,
+ 0x1.000001000000103p+0, false, false,
+ false,
+ 0x1.000001000000102ep+0, false, false,
+ 0x1.000001000000103p+0, false, false,
+ 0x1.000001000000102ep+0, false, false,
+ 0x1.000001000000103p+0, false, false,
+ false,
+ 0x1.000001000000102f4fc8c3d757p+0, false, false,
+ 0x1.000001000000102f4fc8c3d7578p+0, false, false,
+ 0x1.000001000000102f4fc8c3d757p+0, false, false,
+ 0x1.000001000000102f4fc8c3d7578p+0, false, false,
+ false,
+ 0x1.000001000000102f4fc8c3d75769p+0, false, false,
+ 0x1.000001000000102f4fc8c3d75769p+0, false, false,
+ 0x1.000001000000102f4fc8c3d75769p+0, false, false,
+ 0x1.000001000000102f4fc8c3d7576ap+0, false, false),
TEST ("1.00000005960464",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000000fffffeap+0, false,
- 0x1.000000fffffeap+0, false,
- 0x1.000000fffffeap+0, false,
- 0x1.000000fffffebp+0, false,
- false,
- 0x1.000000fffffea7e4p+0, false,
- 0x1.000000fffffea7e6p+0, false,
- 0x1.000000fffffea7e4p+0, false,
- 0x1.000000fffffea7e6p+0, false,
- false,
- 0x1.000000fffffea7e4p+0, false,
- 0x1.000000fffffea7e6p+0, false,
- 0x1.000000fffffea7e4p+0, false,
- 0x1.000000fffffea7e6p+0, false,
- false,
- 0x1.000000fffffea7e5975eb11da7p+0, false,
- 0x1.000000fffffea7e5975eb11da78p+0, false,
- 0x1.000000fffffea7e5975eb11da7p+0, false,
- 0x1.000000fffffea7e5975eb11da78p+0, false,
- false,
- 0x1.000000fffffea7e5975eb11da74ap+0, false,
- 0x1.000000fffffea7e5975eb11da74bp+0, false,
- 0x1.000000fffffea7e5975eb11da74ap+0, false,
- 0x1.000000fffffea7e5975eb11da74bp+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000000fffffeap+0, false, false,
+ 0x1.000000fffffeap+0, false, false,
+ 0x1.000000fffffeap+0, false, false,
+ 0x1.000000fffffebp+0, false, false,
+ false,
+ 0x1.000000fffffea7e4p+0, false, false,
+ 0x1.000000fffffea7e6p+0, false, false,
+ 0x1.000000fffffea7e4p+0, false, false,
+ 0x1.000000fffffea7e6p+0, false, false,
+ false,
+ 0x1.000000fffffea7e4p+0, false, false,
+ 0x1.000000fffffea7e6p+0, false, false,
+ 0x1.000000fffffea7e4p+0, false, false,
+ 0x1.000000fffffea7e6p+0, false, false,
+ false,
+ 0x1.000000fffffea7e5975eb11da7p+0, false, false,
+ 0x1.000000fffffea7e5975eb11da78p+0, false, false,
+ 0x1.000000fffffea7e5975eb11da7p+0, false, false,
+ 0x1.000000fffffea7e5975eb11da78p+0, false, false,
+ false,
+ 0x1.000000fffffea7e5975eb11da74ap+0, false, false,
+ 0x1.000000fffffea7e5975eb11da74bp+0, false, false,
+ 0x1.000000fffffea7e5975eb11da74ap+0, false, false,
+ 0x1.000000fffffea7e5975eb11da74bp+0, false, false),
TEST ("1.0000000596046",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000000fffff36p+0, false,
- 0x1.000000fffff36p+0, false,
- 0x1.000000fffff36p+0, false,
- 0x1.000000fffff37p+0, false,
- false,
- 0x1.000000fffff36596p+0, false,
- 0x1.000000fffff36598p+0, false,
- 0x1.000000fffff36596p+0, false,
- 0x1.000000fffff36598p+0, false,
- false,
- 0x1.000000fffff36596p+0, false,
- 0x1.000000fffff36598p+0, false,
- 0x1.000000fffff36596p+0, false,
- 0x1.000000fffff36598p+0, false,
- false,
- 0x1.000000fffff36597d40e1b5026p+0, false,
- 0x1.000000fffff36597d40e1b50268p+0, false,
- 0x1.000000fffff36597d40e1b5026p+0, false,
- 0x1.000000fffff36597d40e1b50268p+0, false,
- false,
- 0x1.000000fffff36597d40e1b502655p+0, false,
- 0x1.000000fffff36597d40e1b502656p+0, false,
- 0x1.000000fffff36597d40e1b502655p+0, false,
- 0x1.000000fffff36597d40e1b502656p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000000fffff36p+0, false, false,
+ 0x1.000000fffff36p+0, false, false,
+ 0x1.000000fffff36p+0, false, false,
+ 0x1.000000fffff37p+0, false, false,
+ false,
+ 0x1.000000fffff36596p+0, false, false,
+ 0x1.000000fffff36598p+0, false, false,
+ 0x1.000000fffff36596p+0, false, false,
+ 0x1.000000fffff36598p+0, false, false,
+ false,
+ 0x1.000000fffff36596p+0, false, false,
+ 0x1.000000fffff36598p+0, false, false,
+ 0x1.000000fffff36596p+0, false, false,
+ 0x1.000000fffff36598p+0, false, false,
+ false,
+ 0x1.000000fffff36597d40e1b5026p+0, false, false,
+ 0x1.000000fffff36597d40e1b50268p+0, false, false,
+ 0x1.000000fffff36597d40e1b5026p+0, false, false,
+ 0x1.000000fffff36597d40e1b50268p+0, false, false,
+ false,
+ 0x1.000000fffff36597d40e1b502655p+0, false, false,
+ 0x1.000000fffff36597d40e1b502656p+0, false, false,
+ 0x1.000000fffff36597d40e1b502655p+0, false, false,
+ 0x1.000000fffff36597d40e1b502656p+0, false, false),
TEST ("1.000000059605",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000001000063fp+0, false,
- 0x1.000001000064p+0, false,
- 0x1.000001000063fp+0, false,
- 0x1.000001000064p+0, false,
- false,
- 0x1.000001000063fcap+0, false,
- 0x1.000001000063fca2p+0, false,
- 0x1.000001000063fcap+0, false,
- 0x1.000001000063fca2p+0, false,
- false,
- 0x1.000001000063fcap+0, false,
- 0x1.000001000063fca2p+0, false,
- 0x1.000001000063fcap+0, false,
- 0x1.000001000063fca2p+0, false,
- false,
- 0x1.000001000063fca17533f5572f8p+0, false,
- 0x1.000001000063fca17533f5573p+0, false,
- 0x1.000001000063fca17533f5572f8p+0, false,
- 0x1.000001000063fca17533f5573p+0, false,
- false,
- 0x1.000001000063fca17533f5572fe9p+0, false,
- 0x1.000001000063fca17533f5572feap+0, false,
- 0x1.000001000063fca17533f5572fe9p+0, false,
- 0x1.000001000063fca17533f5572feap+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000001000063fp+0, false, false,
+ 0x1.000001000064p+0, false, false,
+ 0x1.000001000063fp+0, false, false,
+ 0x1.000001000064p+0, false, false,
+ false,
+ 0x1.000001000063fcap+0, false, false,
+ 0x1.000001000063fca2p+0, false, false,
+ 0x1.000001000063fcap+0, false, false,
+ 0x1.000001000063fca2p+0, false, false,
+ false,
+ 0x1.000001000063fcap+0, false, false,
+ 0x1.000001000063fca2p+0, false, false,
+ 0x1.000001000063fcap+0, false, false,
+ 0x1.000001000063fca2p+0, false, false,
+ false,
+ 0x1.000001000063fca17533f5572f8p+0, false, false,
+ 0x1.000001000063fca17533f5573p+0, false, false,
+ 0x1.000001000063fca17533f5572f8p+0, false, false,
+ 0x1.000001000063fca17533f5573p+0, false, false,
+ false,
+ 0x1.000001000063fca17533f5572fe9p+0, false, false,
+ 0x1.000001000063fca17533f5572feap+0, false, false,
+ 0x1.000001000063fca17533f5572fe9p+0, false, false,
+ 0x1.000001000063fca17533f5572feap+0, false, false),
TEST ("1.00000005960",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000000fffae49p+0, false,
- 0x1.000000fffae4ap+0, false,
- 0x1.000000fffae49p+0, false,
- 0x1.000000fffae4ap+0, false,
- false,
- 0x1.000000fffae49ca8p+0, false,
- 0x1.000000fffae49caap+0, false,
- 0x1.000000fffae49ca8p+0, false,
- 0x1.000000fffae49caap+0, false,
- false,
- 0x1.000000fffae49ca8p+0, false,
- 0x1.000000fffae49caap+0, false,
- 0x1.000000fffae49ca8p+0, false,
- 0x1.000000fffae49caap+0, false,
- false,
- 0x1.000000fffae49ca916dacfff38p+0, false,
- 0x1.000000fffae49ca916dacfff38p+0, false,
- 0x1.000000fffae49ca916dacfff38p+0, false,
- 0x1.000000fffae49ca916dacfff388p+0, false,
- false,
- 0x1.000000fffae49ca916dacfff382dp+0, false,
- 0x1.000000fffae49ca916dacfff382dp+0, false,
- 0x1.000000fffae49ca916dacfff382dp+0, false,
- 0x1.000000fffae49ca916dacfff382ep+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000000fffae49p+0, false, false,
+ 0x1.000000fffae4ap+0, false, false,
+ 0x1.000000fffae49p+0, false, false,
+ 0x1.000000fffae4ap+0, false, false,
+ false,
+ 0x1.000000fffae49ca8p+0, false, false,
+ 0x1.000000fffae49caap+0, false, false,
+ 0x1.000000fffae49ca8p+0, false, false,
+ 0x1.000000fffae49caap+0, false, false,
+ false,
+ 0x1.000000fffae49ca8p+0, false, false,
+ 0x1.000000fffae49caap+0, false, false,
+ 0x1.000000fffae49ca8p+0, false, false,
+ 0x1.000000fffae49caap+0, false, false,
+ false,
+ 0x1.000000fffae49ca916dacfff38p+0, false, false,
+ 0x1.000000fffae49ca916dacfff38p+0, false, false,
+ 0x1.000000fffae49ca916dacfff38p+0, false, false,
+ 0x1.000000fffae49ca916dacfff388p+0, false, false,
+ false,
+ 0x1.000000fffae49ca916dacfff382dp+0, false, false,
+ 0x1.000000fffae49ca916dacfff382dp+0, false, false,
+ 0x1.000000fffae49ca916dacfff382dp+0, false, false,
+ 0x1.000000fffae49ca916dacfff382ep+0, false, false),
TEST ("1.0000000596",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000000fffae49p+0, false,
- 0x1.000000fffae4ap+0, false,
- 0x1.000000fffae49p+0, false,
- 0x1.000000fffae4ap+0, false,
- false,
- 0x1.000000fffae49ca8p+0, false,
- 0x1.000000fffae49caap+0, false,
- 0x1.000000fffae49ca8p+0, false,
- 0x1.000000fffae49caap+0, false,
- false,
- 0x1.000000fffae49ca8p+0, false,
- 0x1.000000fffae49caap+0, false,
- 0x1.000000fffae49ca8p+0, false,
- 0x1.000000fffae49caap+0, false,
- false,
- 0x1.000000fffae49ca916dacfff38p+0, false,
- 0x1.000000fffae49ca916dacfff38p+0, false,
- 0x1.000000fffae49ca916dacfff38p+0, false,
- 0x1.000000fffae49ca916dacfff388p+0, false,
- false,
- 0x1.000000fffae49ca916dacfff382dp+0, false,
- 0x1.000000fffae49ca916dacfff382dp+0, false,
- 0x1.000000fffae49ca916dacfff382dp+0, false,
- 0x1.000000fffae49ca916dacfff382ep+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000000fffae49p+0, false, false,
+ 0x1.000000fffae4ap+0, false, false,
+ 0x1.000000fffae49p+0, false, false,
+ 0x1.000000fffae4ap+0, false, false,
+ false,
+ 0x1.000000fffae49ca8p+0, false, false,
+ 0x1.000000fffae49caap+0, false, false,
+ 0x1.000000fffae49ca8p+0, false, false,
+ 0x1.000000fffae49caap+0, false, false,
+ false,
+ 0x1.000000fffae49ca8p+0, false, false,
+ 0x1.000000fffae49caap+0, false, false,
+ 0x1.000000fffae49ca8p+0, false, false,
+ 0x1.000000fffae49caap+0, false, false,
+ false,
+ 0x1.000000fffae49ca916dacfff38p+0, false, false,
+ 0x1.000000fffae49ca916dacfff38p+0, false, false,
+ 0x1.000000fffae49ca916dacfff38p+0, false, false,
+ 0x1.000000fffae49ca916dacfff388p+0, false, false,
+ false,
+ 0x1.000000fffae49ca916dacfff382dp+0, false, false,
+ 0x1.000000fffae49ca916dacfff382dp+0, false, false,
+ 0x1.000000fffae49ca916dacfff382dp+0, false, false,
+ 0x1.000000fffae49ca916dacfff382ep+0, false, false),
TEST ("1.000000060",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.00000101b2b29p+0, false,
- 0x1.00000101b2b2ap+0, false,
- 0x1.00000101b2b29p+0, false,
- 0x1.00000101b2b2ap+0, false,
- false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a48p+0, false,
- false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a48p+0, false,
- false,
- 0x1.00000101b2b29a4692b67b7ca3p+0, false,
- 0x1.00000101b2b29a4692b67b7ca3p+0, false,
- 0x1.00000101b2b29a4692b67b7ca3p+0, false,
- 0x1.00000101b2b29a4692b67b7ca38p+0, false,
- false,
- 0x1.00000101b2b29a4692b67b7ca313p+0, false,
- 0x1.00000101b2b29a4692b67b7ca314p+0, false,
- 0x1.00000101b2b29a4692b67b7ca313p+0, false,
- 0x1.00000101b2b29a4692b67b7ca314p+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.00000101b2b29p+0, false, false,
+ 0x1.00000101b2b2ap+0, false, false,
+ 0x1.00000101b2b29p+0, false, false,
+ 0x1.00000101b2b2ap+0, false, false,
+ false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a48p+0, false, false,
+ false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a48p+0, false, false,
+ false,
+ 0x1.00000101b2b29a4692b67b7ca3p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca3p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca3p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca38p+0, false, false,
+ false,
+ 0x1.00000101b2b29a4692b67b7ca313p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca314p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca313p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca314p+0, false, false),
TEST ("1.00000006",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.00000101b2b29p+0, false,
- 0x1.00000101b2b2ap+0, false,
- 0x1.00000101b2b29p+0, false,
- 0x1.00000101b2b2ap+0, false,
- false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a48p+0, false,
- false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a46p+0, false,
- 0x1.00000101b2b29a48p+0, false,
- false,
- 0x1.00000101b2b29a4692b67b7ca3p+0, false,
- 0x1.00000101b2b29a4692b67b7ca3p+0, false,
- 0x1.00000101b2b29a4692b67b7ca3p+0, false,
- 0x1.00000101b2b29a4692b67b7ca38p+0, false,
- false,
- 0x1.00000101b2b29a4692b67b7ca313p+0, false,
- 0x1.00000101b2b29a4692b67b7ca314p+0, false,
- 0x1.00000101b2b29a4692b67b7ca313p+0, false,
- 0x1.00000101b2b29a4692b67b7ca314p+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.00000101b2b29p+0, false, false,
+ 0x1.00000101b2b2ap+0, false, false,
+ 0x1.00000101b2b29p+0, false, false,
+ 0x1.00000101b2b2ap+0, false, false,
+ false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a48p+0, false, false,
+ false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a46p+0, false, false,
+ 0x1.00000101b2b29a48p+0, false, false,
+ false,
+ 0x1.00000101b2b29a4692b67b7ca3p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca3p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca3p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca38p+0, false, false,
+ false,
+ 0x1.00000101b2b29a4692b67b7ca313p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca314p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca313p+0, false, false,
+ 0x1.00000101b2b29a4692b67b7ca314p+0, false, false),
TEST ("1.0000001",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000001ad7f29ap+0, false,
- 0x1.000001ad7f29bp+0, false,
- 0x1.000001ad7f29ap+0, false,
- 0x1.000001ad7f29bp+0, false,
- false,
- 0x1.000001ad7f29abcap+0, false,
- 0x1.000001ad7f29abcap+0, false,
- 0x1.000001ad7f29abcap+0, false,
- 0x1.000001ad7f29abccp+0, false,
- false,
- 0x1.000001ad7f29abcap+0, false,
- 0x1.000001ad7f29abcap+0, false,
- 0x1.000001ad7f29abcap+0, false,
- 0x1.000001ad7f29abccp+0, false,
- false,
- 0x1.000001ad7f29abcaf485787a65p+0, false,
- 0x1.000001ad7f29abcaf485787a65p+0, false,
- 0x1.000001ad7f29abcaf485787a65p+0, false,
- 0x1.000001ad7f29abcaf485787a658p+0, false,
- false,
- 0x1.000001ad7f29abcaf485787a652p+0, false,
- 0x1.000001ad7f29abcaf485787a6521p+0, false,
- 0x1.000001ad7f29abcaf485787a652p+0, false,
- 0x1.000001ad7f29abcaf485787a6521p+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000001ad7f29ap+0, false, false,
+ 0x1.000001ad7f29bp+0, false, false,
+ 0x1.000001ad7f29ap+0, false, false,
+ 0x1.000001ad7f29bp+0, false, false,
+ false,
+ 0x1.000001ad7f29abcap+0, false, false,
+ 0x1.000001ad7f29abcap+0, false, false,
+ 0x1.000001ad7f29abcap+0, false, false,
+ 0x1.000001ad7f29abccp+0, false, false,
+ false,
+ 0x1.000001ad7f29abcap+0, false, false,
+ 0x1.000001ad7f29abcap+0, false, false,
+ 0x1.000001ad7f29abcap+0, false, false,
+ 0x1.000001ad7f29abccp+0, false, false,
+ false,
+ 0x1.000001ad7f29abcaf485787a65p+0, false, false,
+ 0x1.000001ad7f29abcaf485787a65p+0, false, false,
+ 0x1.000001ad7f29abcaf485787a65p+0, false, false,
+ 0x1.000001ad7f29abcaf485787a658p+0, false, false,
+ false,
+ 0x1.000001ad7f29abcaf485787a652p+0, false, false,
+ 0x1.000001ad7f29abcaf485787a6521p+0, false, false,
+ 0x1.000001ad7f29abcaf485787a652p+0, false, false,
+ 0x1.000001ad7f29abcaf485787a6521p+0, false, false),
TEST ("1.000000",
true,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- true,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- true,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- true,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- true,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- true,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ true,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ true,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ true,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ true,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ true,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false),
TEST ("1.00000000000000011113",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1.00000000000008p+0, false,
- 0x1.0000000000000802p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.0000000000000802p+0, false,
- false,
- 0x1.00000000000008p+0, false,
- 0x1.0000000000000802p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.0000000000000802p+0, false,
- false,
- 0x1.0000000000000801fc96557232p+0, false,
- 0x1.0000000000000801fc96557232p+0, false,
- 0x1.0000000000000801fc96557232p+0, false,
- 0x1.0000000000000801fc965572328p+0, false,
- false,
- 0x1.0000000000000801fc9655723222p+0, false,
- 0x1.0000000000000801fc9655723222p+0, false,
- 0x1.0000000000000801fc9655723222p+0, false,
- 0x1.0000000000000801fc9655723223p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.0000000000000802p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.0000000000000802p+0, false, false,
+ false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.0000000000000802p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.0000000000000802p+0, false, false,
+ false,
+ 0x1.0000000000000801fc96557232p+0, false, false,
+ 0x1.0000000000000801fc96557232p+0, false, false,
+ 0x1.0000000000000801fc96557232p+0, false, false,
+ 0x1.0000000000000801fc965572328p+0, false, false,
+ false,
+ 0x1.0000000000000801fc9655723222p+0, false, false,
+ 0x1.0000000000000801fc9655723222p+0, false, false,
+ 0x1.0000000000000801fc9655723222p+0, false, false,
+ 0x1.0000000000000801fc9655723223p+0, false, false),
TEST ("1.00000000000000011103",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.0000000000000802p+0, false,
- false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.0000000000000802p+0, false,
- false,
- 0x1.00000000000008002459c076c48p+0, false,
- 0x1.00000000000008002459c076c5p+0, false,
- 0x1.00000000000008002459c076c48p+0, false,
- 0x1.00000000000008002459c076c5p+0, false,
- false,
- 0x1.00000000000008002459c076c4f7p+0, false,
- 0x1.00000000000008002459c076c4f8p+0, false,
- 0x1.00000000000008002459c076c4f7p+0, false,
- 0x1.00000000000008002459c076c4f8p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.0000000000000802p+0, false, false,
+ false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.0000000000000802p+0, false, false,
+ false,
+ 0x1.00000000000008002459c076c48p+0, false, false,
+ 0x1.00000000000008002459c076c5p+0, false, false,
+ 0x1.00000000000008002459c076c48p+0, false, false,
+ 0x1.00000000000008002459c076c5p+0, false, false,
+ false,
+ 0x1.00000000000008002459c076c4f7p+0, false, false,
+ 0x1.00000000000008002459c076c4f8p+0, false, false,
+ 0x1.00000000000008002459c076c4f7p+0, false, false,
+ 0x1.00000000000008002459c076c4f8p+0, false, false),
TEST ("1.00000000000000011102",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- false,
- 0x1.00000000000007fff5207e5dap+0, false,
- 0x1.00000000000007fff5207e5da08p+0, false,
- 0x1.00000000000007fff5207e5dap+0, false,
- 0x1.00000000000007fff5207e5da08p+0, false,
- false,
- 0x1.00000000000007fff5207e5da073p+0, false,
- 0x1.00000000000007fff5207e5da073p+0, false,
- 0x1.00000000000007fff5207e5da073p+0, false,
- 0x1.00000000000007fff5207e5da074p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ false,
+ 0x1.00000000000007fff5207e5dap+0, false, false,
+ 0x1.00000000000007fff5207e5da08p+0, false, false,
+ 0x1.00000000000007fff5207e5dap+0, false, false,
+ 0x1.00000000000007fff5207e5da08p+0, false, false,
+ false,
+ 0x1.00000000000007fff5207e5da073p+0, false, false,
+ 0x1.00000000000007fff5207e5da073p+0, false, false,
+ 0x1.00000000000007fff5207e5da073p+0, false, false,
+ 0x1.00000000000007fff5207e5da074p+0, false, false),
TEST ("1.00000000000000011101",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- false,
- 0x1.00000000000007ffc5e73c447b8p+0, false,
- 0x1.00000000000007ffc5e73c447cp+0, false,
- 0x1.00000000000007ffc5e73c447b8p+0, false,
- 0x1.00000000000007ffc5e73c447cp+0, false,
- false,
- 0x1.00000000000007ffc5e73c447befp+0, false,
- 0x1.00000000000007ffc5e73c447befp+0, false,
- 0x1.00000000000007ffc5e73c447befp+0, false,
- 0x1.00000000000007ffc5e73c447bfp+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ false,
+ 0x1.00000000000007ffc5e73c447b8p+0, false, false,
+ 0x1.00000000000007ffc5e73c447cp+0, false, false,
+ 0x1.00000000000007ffc5e73c447b8p+0, false, false,
+ 0x1.00000000000007ffc5e73c447cp+0, false, false,
+ false,
+ 0x1.00000000000007ffc5e73c447befp+0, false, false,
+ 0x1.00000000000007ffc5e73c447befp+0, false, false,
+ 0x1.00000000000007ffc5e73c447befp+0, false, false,
+ 0x1.00000000000007ffc5e73c447bfp+0, false, false),
TEST ("1.0000000000000001111",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1.00000000000008p+0, false,
- 0x1.0000000000000802p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.0000000000000802p+0, false,
- false,
- 0x1.00000000000008p+0, false,
- 0x1.0000000000000802p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.0000000000000802p+0, false,
- false,
- 0x1.00000000000008016eea8f26c48p+0, false,
- 0x1.00000000000008016eea8f26c48p+0, false,
- 0x1.00000000000008016eea8f26c48p+0, false,
- 0x1.00000000000008016eea8f26c5p+0, false,
- false,
- 0x1.00000000000008016eea8f26c495p+0, false,
- 0x1.00000000000008016eea8f26c496p+0, false,
- 0x1.00000000000008016eea8f26c495p+0, false,
- 0x1.00000000000008016eea8f26c496p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.0000000000000802p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.0000000000000802p+0, false, false,
+ false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.0000000000000802p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.0000000000000802p+0, false, false,
+ false,
+ 0x1.00000000000008016eea8f26c48p+0, false, false,
+ 0x1.00000000000008016eea8f26c48p+0, false, false,
+ 0x1.00000000000008016eea8f26c48p+0, false, false,
+ 0x1.00000000000008016eea8f26c5p+0, false, false,
+ false,
+ 0x1.00000000000008016eea8f26c495p+0, false, false,
+ 0x1.00000000000008016eea8f26c496p+0, false, false,
+ 0x1.00000000000008016eea8f26c495p+0, false, false,
+ 0x1.00000000000008016eea8f26c496p+0, false, false),
TEST ("1.000000000000000111",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000007fep+0, false,
- 0x1.00000000000008p+0, false,
- false,
- 0x1.00000000000007ff96adfa2b57p+0, false,
- 0x1.00000000000007ff96adfa2b578p+0, false,
- 0x1.00000000000007ff96adfa2b57p+0, false,
- 0x1.00000000000007ff96adfa2b578p+0, false,
- false,
- 0x1.00000000000007ff96adfa2b576ap+0, false,
- 0x1.00000000000007ff96adfa2b576bp+0, false,
- 0x1.00000000000007ff96adfa2b576ap+0, false,
- 0x1.00000000000007ff96adfa2b576bp+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000007fep+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ false,
+ 0x1.00000000000007ff96adfa2b57p+0, false, false,
+ 0x1.00000000000007ff96adfa2b578p+0, false, false,
+ 0x1.00000000000007ff96adfa2b57p+0, false, false,
+ 0x1.00000000000007ff96adfa2b578p+0, false, false,
+ false,
+ 0x1.00000000000007ff96adfa2b576ap+0, false, false,
+ 0x1.00000000000007ff96adfa2b576bp+0, false, false,
+ 0x1.00000000000007ff96adfa2b576ap+0, false, false,
+ 0x1.00000000000007ff96adfa2b576bp+0, false, false),
TEST ("1.00000000000000011",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1.00000000000007ecp+0, false,
- 0x1.00000000000007eep+0, false,
- 0x1.00000000000007ecp+0, false,
- 0x1.00000000000007eep+0, false,
- false,
- 0x1.00000000000007ecp+0, false,
- 0x1.00000000000007eep+0, false,
- 0x1.00000000000007ecp+0, false,
- 0x1.00000000000007eep+0, false,
- false,
- 0x1.00000000000007ed24502859138p+0, false,
- 0x1.00000000000007ed24502859138p+0, false,
- 0x1.00000000000007ed24502859138p+0, false,
- 0x1.00000000000007ed2450285914p+0, false,
- false,
- 0x1.00000000000007ed2450285913bfp+0, false,
- 0x1.00000000000007ed2450285913bfp+0, false,
- 0x1.00000000000007ed2450285913bfp+0, false,
- 0x1.00000000000007ed2450285913cp+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1.00000000000007ecp+0, false, false,
+ 0x1.00000000000007eep+0, false, false,
+ 0x1.00000000000007ecp+0, false, false,
+ 0x1.00000000000007eep+0, false, false,
+ false,
+ 0x1.00000000000007ecp+0, false, false,
+ 0x1.00000000000007eep+0, false, false,
+ 0x1.00000000000007ecp+0, false, false,
+ 0x1.00000000000007eep+0, false, false,
+ false,
+ 0x1.00000000000007ed24502859138p+0, false, false,
+ 0x1.00000000000007ed24502859138p+0, false, false,
+ 0x1.00000000000007ed24502859138p+0, false, false,
+ 0x1.00000000000007ed2450285914p+0, false, false,
+ false,
+ 0x1.00000000000007ed2450285913bfp+0, false, false,
+ 0x1.00000000000007ed2450285913bfp+0, false, false,
+ 0x1.00000000000007ed2450285913bfp+0, false, false,
+ 0x1.00000000000007ed2450285913cp+0, false, false),
TEST ("1.0000000000000001",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1.0000000000000734p+0, false,
- 0x1.0000000000000734p+0, false,
- 0x1.0000000000000734p+0, false,
- 0x1.0000000000000736p+0, false,
- false,
- 0x1.0000000000000734p+0, false,
- 0x1.0000000000000734p+0, false,
- 0x1.0000000000000734p+0, false,
- 0x1.0000000000000736p+0, false,
- false,
- 0x1.0000000000000734aca5f6226fp+0, false,
- 0x1.0000000000000734aca5f6226fp+0, false,
- 0x1.0000000000000734aca5f6226fp+0, false,
- 0x1.0000000000000734aca5f6226f8p+0, false,
- false,
- 0x1.0000000000000734aca5f6226f0ap+0, false,
- 0x1.0000000000000734aca5f6226f0bp+0, false,
- 0x1.0000000000000734aca5f6226f0ap+0, false,
- 0x1.0000000000000734aca5f6226f0bp+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1.0000000000000734p+0, false, false,
+ 0x1.0000000000000734p+0, false, false,
+ 0x1.0000000000000734p+0, false, false,
+ 0x1.0000000000000736p+0, false, false,
+ false,
+ 0x1.0000000000000734p+0, false, false,
+ 0x1.0000000000000734p+0, false, false,
+ 0x1.0000000000000734p+0, false, false,
+ 0x1.0000000000000736p+0, false, false,
+ false,
+ 0x1.0000000000000734aca5f6226fp+0, false, false,
+ 0x1.0000000000000734aca5f6226fp+0, false, false,
+ 0x1.0000000000000734aca5f6226fp+0, false, false,
+ 0x1.0000000000000734aca5f6226f8p+0, false, false,
+ false,
+ 0x1.0000000000000734aca5f6226f0ap+0, false, false,
+ 0x1.0000000000000734aca5f6226f0bp+0, false, false,
+ 0x1.0000000000000734aca5f6226f0ap+0, false, false,
+ 0x1.0000000000000734aca5f6226f0bp+0, false, false),
TEST ("3929201589819414e-25",
false,
- 0x1.b0053p-32, false,
- 0x1.b00532p-32, false,
- 0x1.b0053p-32, false,
- 0x1.b00532p-32, false,
- false,
- 0x1.b005314e2421ep-32, false,
- 0x1.b005314e2421ep-32, false,
- 0x1.b005314e2421ep-32, false,
- 0x1.b005314e2421fp-32, false,
- false,
- 0x1.b005314e2421e7fep-32, false,
- 0x1.b005314e2421e8p-32, false,
- 0x1.b005314e2421e7fep-32, false,
- 0x1.b005314e2421e8p-32, false,
- false,
- 0x1.b005314e2421e7fep-32, false,
- 0x1.b005314e2421e8p-32, false,
- 0x1.b005314e2421e7fep-32, false,
- 0x1.b005314e2421e8p-32, false,
- false,
- 0x1.b005314e2421e7ffb472840c5ap-32, false,
- 0x1.b005314e2421e7ffb472840c5a8p-32, false,
- 0x1.b005314e2421e7ffb472840c5ap-32, false,
- 0x1.b005314e2421e7ffb472840c5a8p-32, false,
- false,
- 0x1.b005314e2421e7ffb472840c5a6ep-32, false,
- 0x1.b005314e2421e7ffb472840c5a6fp-32, false,
- 0x1.b005314e2421e7ffb472840c5a6ep-32, false,
- 0x1.b005314e2421e7ffb472840c5a6fp-32, false),
+ 0x1.b0053p-32, false, false,
+ 0x1.b00532p-32, false, false,
+ 0x1.b0053p-32, false, false,
+ 0x1.b00532p-32, false, false,
+ false,
+ 0x1.b005314e2421ep-32, false, false,
+ 0x1.b005314e2421ep-32, false, false,
+ 0x1.b005314e2421ep-32, false, false,
+ 0x1.b005314e2421fp-32, false, false,
+ false,
+ 0x1.b005314e2421e7fep-32, false, false,
+ 0x1.b005314e2421e8p-32, false, false,
+ 0x1.b005314e2421e7fep-32, false, false,
+ 0x1.b005314e2421e8p-32, false, false,
+ false,
+ 0x1.b005314e2421e7fep-32, false, false,
+ 0x1.b005314e2421e8p-32, false, false,
+ 0x1.b005314e2421e7fep-32, false, false,
+ 0x1.b005314e2421e8p-32, false, false,
+ false,
+ 0x1.b005314e2421e7ffb472840c5ap-32, false, false,
+ 0x1.b005314e2421e7ffb472840c5a8p-32, false, false,
+ 0x1.b005314e2421e7ffb472840c5ap-32, false, false,
+ 0x1.b005314e2421e7ffb472840c5a8p-32, false, false,
+ false,
+ 0x1.b005314e2421e7ffb472840c5a6ep-32, false, false,
+ 0x1.b005314e2421e7ffb472840c5a6fp-32, false, false,
+ 0x1.b005314e2421e7ffb472840c5a6ep-32, false, false,
+ 0x1.b005314e2421e7ffb472840c5a6fp-32, false, false),
TEST ("0.0000000000000000000000000000000000000000000021019476964872"
"256063855943749348741969203929128147736576356024258346866240"
"28790902229957282543182373046875",
false,
- 0x8p-152, false,
- 0x1p-148, false,
- 0x8p-152, false,
- 0x1p-148, false,
- true,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- true,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- true,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- true,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- true,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false),
+ 0x8p-152, false, true,
+ 0x1p-148, false, true,
+ 0x8p-152, false, true,
+ 0x1p-148, false, true,
+ true,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ true,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ true,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ true,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ true,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false),
TEST ("1.00000005960464477539062499",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000000fffffffp+0, false,
- 0x1.000001p+0, false,
- 0x1.000000fffffffp+0, false,
- 0x1.000001p+0, false,
- false,
- 0x1.000000fffffffffep+0, false,
- 0x1.000001p+0, false,
- 0x1.000000fffffffffep+0, false,
- 0x1.000001p+0, false,
- false,
- 0x1.000000fffffffffep+0, false,
- 0x1.000001p+0, false,
- 0x1.000000fffffffffep+0, false,
- 0x1.000001p+0, false,
- false,
- 0x1.000000fffffffffffffffce7b78p+0, false,
- 0x1.000000fffffffffffffffce7b8p+0, false,
- 0x1.000000fffffffffffffffce7b78p+0, false,
- 0x1.000000fffffffffffffffce7b8p+0, false,
- false,
- 0x1.000000fffffffffffffffce7b7e7p+0, false,
- 0x1.000000fffffffffffffffce7b7e7p+0, false,
- 0x1.000000fffffffffffffffce7b7e7p+0, false,
- 0x1.000000fffffffffffffffce7b7e8p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000000fffffffp+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000000fffffffp+0, false, false,
+ 0x1.000001p+0, false, false,
+ false,
+ 0x1.000000fffffffffep+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000000fffffffffep+0, false, false,
+ 0x1.000001p+0, false, false,
+ false,
+ 0x1.000000fffffffffep+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000000fffffffffep+0, false, false,
+ 0x1.000001p+0, false, false,
+ false,
+ 0x1.000000fffffffffffffffce7b78p+0, false, false,
+ 0x1.000000fffffffffffffffce7b8p+0, false, false,
+ 0x1.000000fffffffffffffffce7b78p+0, false, false,
+ 0x1.000000fffffffffffffffce7b8p+0, false, false,
+ false,
+ 0x1.000000fffffffffffffffce7b7e7p+0, false, false,
+ 0x1.000000fffffffffffffffce7b7e7p+0, false, false,
+ 0x1.000000fffffffffffffffce7b7e7p+0, false, false,
+ 0x1.000000fffffffffffffffce7b7e8p+0, false, false),
TEST ("1.000000059604644775390625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- true,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- true,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- true,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- true,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ true,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ true,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ true,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ true,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false),
TEST ("1.00000005960464477539062501",
false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.0000010000001p+0, false,
- false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.0000010000000002p+0, false,
- false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.000001p+0, false,
- 0x1.0000010000000002p+0, false,
- false,
- 0x1.00000100000000000000031848p+0, false,
- 0x1.00000100000000000000031848p+0, false,
- 0x1.00000100000000000000031848p+0, false,
- 0x1.000001000000000000000318488p+0, false,
- false,
- 0x1.0000010000000000000003184818p+0, false,
- 0x1.0000010000000000000003184819p+0, false,
- 0x1.0000010000000000000003184818p+0, false,
- 0x1.0000010000000000000003184819p+0, false),
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.0000010000001p+0, false, false,
+ false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.0000010000000002p+0, false, false,
+ false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.000001p+0, false, false,
+ 0x1.0000010000000002p+0, false, false,
+ false,
+ 0x1.00000100000000000000031848p+0, false, false,
+ 0x1.00000100000000000000031848p+0, false, false,
+ 0x1.00000100000000000000031848p+0, false, false,
+ 0x1.000001000000000000000318488p+0, false, false,
+ false,
+ 0x1.0000010000000000000003184818p+0, false, false,
+ 0x1.0000010000000000000003184819p+0, false, false,
+ 0x1.0000010000000000000003184818p+0, false, false,
+ 0x1.0000010000000000000003184819p+0, false, false),
TEST ("1.00000011920928955078125",
true,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false),
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false),
TEST ("1.00000017881393432617187499",
false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000002p+0, false,
- 0x1.000004p+0, false,
- false,
- 0x1.000002fffffffp+0, false,
- 0x1.000003p+0, false,
- 0x1.000002fffffffp+0, false,
- 0x1.000003p+0, false,
- false,
- 0x1.000002fffffffffep+0, false,
- 0x1.000003p+0, false,
- 0x1.000002fffffffffep+0, false,
- 0x1.000003p+0, false,
- false,
- 0x1.000002fffffffffep+0, false,
- 0x1.000003p+0, false,
- 0x1.000002fffffffffep+0, false,
- 0x1.000003p+0, false,
- false,
- 0x1.000002fffffffffffffffce7b78p+0, false,
- 0x1.000002fffffffffffffffce7b8p+0, false,
- 0x1.000002fffffffffffffffce7b78p+0, false,
- 0x1.000002fffffffffffffffce7b8p+0, false,
- false,
- 0x1.000002fffffffffffffffce7b7e7p+0, false,
- 0x1.000002fffffffffffffffce7b7e7p+0, false,
- 0x1.000002fffffffffffffffce7b7e7p+0, false,
- 0x1.000002fffffffffffffffce7b7e8p+0, false),
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000004p+0, false, false,
+ false,
+ 0x1.000002fffffffp+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000002fffffffp+0, false, false,
+ 0x1.000003p+0, false, false,
+ false,
+ 0x1.000002fffffffffep+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000002fffffffffep+0, false, false,
+ 0x1.000003p+0, false, false,
+ false,
+ 0x1.000002fffffffffep+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000002fffffffffep+0, false, false,
+ 0x1.000003p+0, false, false,
+ false,
+ 0x1.000002fffffffffffffffce7b78p+0, false, false,
+ 0x1.000002fffffffffffffffce7b8p+0, false, false,
+ 0x1.000002fffffffffffffffce7b78p+0, false, false,
+ 0x1.000002fffffffffffffffce7b8p+0, false, false,
+ false,
+ 0x1.000002fffffffffffffffce7b7e7p+0, false, false,
+ 0x1.000002fffffffffffffffce7b7e7p+0, false, false,
+ 0x1.000002fffffffffffffffce7b7e7p+0, false, false,
+ 0x1.000002fffffffffffffffce7b7e8p+0, false, false),
TEST ("1.000000178813934326171875",
false,
- 0x1.000002p+0, false,
- 0x1.000004p+0, false,
- 0x1.000002p+0, false,
- 0x1.000004p+0, false,
- true,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- true,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- true,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- true,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- true,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false),
+ 0x1.000002p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000004p+0, false, false,
+ true,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ true,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ true,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ true,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ true,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false),
TEST ("1.00000017881393432617187501",
false,
- 0x1.000002p+0, false,
- 0x1.000004p+0, false,
- 0x1.000002p+0, false,
- 0x1.000004p+0, false,
- false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.0000030000001p+0, false,
- false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.0000030000000002p+0, false,
- false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.000003p+0, false,
- 0x1.0000030000000002p+0, false,
- false,
- 0x1.00000300000000000000031848p+0, false,
- 0x1.00000300000000000000031848p+0, false,
- 0x1.00000300000000000000031848p+0, false,
- 0x1.000003000000000000000318488p+0, false,
- false,
- 0x1.0000030000000000000003184818p+0, false,
- 0x1.0000030000000000000003184819p+0, false,
- 0x1.0000030000000000000003184818p+0, false,
- 0x1.0000030000000000000003184819p+0, false),
+ 0x1.000002p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000002p+0, false, false,
+ 0x1.000004p+0, false, false,
+ false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.0000030000001p+0, false, false,
+ false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.0000030000000002p+0, false, false,
+ false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.000003p+0, false, false,
+ 0x1.0000030000000002p+0, false, false,
+ false,
+ 0x1.00000300000000000000031848p+0, false, false,
+ 0x1.00000300000000000000031848p+0, false, false,
+ 0x1.00000300000000000000031848p+0, false, false,
+ 0x1.000003000000000000000318488p+0, false, false,
+ false,
+ 0x1.0000030000000000000003184818p+0, false, false,
+ 0x1.0000030000000000000003184819p+0, false, false,
+ 0x1.0000030000000000000003184818p+0, false, false,
+ 0x1.0000030000000000000003184819p+0, false, false),
TEST ("1.0000002384185791015625",
true,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- true,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- true,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- true,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- true,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- true,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false,
- 0x1.000004p+0, false),
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ true,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ true,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ true,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ true,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ true,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false,
+ 0x1.000004p+0, false, false),
TEST ("1.08420217248550443400745280086994171142578125e-19",
true,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- true,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- true,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- true,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- true,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- true,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false),
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ true,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ true,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ true,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ true,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ true,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false),
TEST ("1.0842022371089897897127399001987457793916291848290711641311"
"645507812499e-19",
false,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2.000004p-64, false,
- false,
- 0x2.000001ffffffep-64, false,
- 0x2.000002p-64, false,
- 0x2.000001ffffffep-64, false,
- 0x2.000002p-64, false,
- false,
- 0x2.000001fffffffffcp-64, false,
- 0x2.000002p-64, false,
- 0x2.000001fffffffffcp-64, false,
- 0x2.000002p-64, false,
- false,
- 0x2.000001fffffffffcp-64, false,
- 0x2.000002p-64, false,
- 0x2.000001fffffffffcp-64, false,
- 0x2.000002p-64, false,
- false,
- 0x2.000001ffffffffffffffffffffp-64, false,
- 0x2.000002p-64, false,
- 0x2.000001ffffffffffffffffffffp-64, false,
- 0x2.000002p-64, false,
- false,
- 0x2.000001fffffffffffffffffffffep-64, false,
- 0x2.000002p-64, false,
- 0x2.000001fffffffffffffffffffffep-64, false,
- 0x2.000002p-64, false),
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2.000004p-64, false, false,
+ false,
+ 0x2.000001ffffffep-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000001ffffffep-64, false, false,
+ 0x2.000002p-64, false, false,
+ false,
+ 0x2.000001fffffffffcp-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000001fffffffffcp-64, false, false,
+ 0x2.000002p-64, false, false,
+ false,
+ 0x2.000001fffffffffcp-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000001fffffffffcp-64, false, false,
+ 0x2.000002p-64, false, false,
+ false,
+ 0x2.000001ffffffffffffffffffffp-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000001ffffffffffffffffffffp-64, false, false,
+ 0x2.000002p-64, false, false,
+ false,
+ 0x2.000001fffffffffffffffffffffep-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000001fffffffffffffffffffffep-64, false, false,
+ 0x2.000002p-64, false, false),
TEST ("1.0842022371089897897127399001987457793916291848290711641311"
"6455078125e-19",
false,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2p-64, false,
- 0x2.000004p-64, false,
- true,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- true,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- true,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- true,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- true,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false),
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2.000004p-64, false, false,
+ true,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ true,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ true,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ true,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ true,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false),
TEST ("1.0842022371089897897127399001987457793916291848290711641311"
"645507812501e-19",
false,
- 0x2p-64, false,
- 0x2.000004p-64, false,
- 0x2p-64, false,
- 0x2.000004p-64, false,
- false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.0000020000002p-64, false,
- false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.0000020000000004p-64, false,
- false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.0000020000000004p-64, false,
- false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.00000200000000000000000001p-64, false,
- false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.000002p-64, false,
- 0x2.0000020000000000000000000002p-64, false),
+ 0x2p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2p-64, false, false,
+ 0x2.000004p-64, false, false,
+ false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.0000020000002p-64, false, false,
+ false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.0000020000000004p-64, false, false,
+ false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.0000020000000004p-64, false, false,
+ false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.00000200000000000000000001p-64, false, false,
+ false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.000002p-64, false, false,
+ 0x2.0000020000000000000000000002p-64, false, false),
TEST ("1.0842023017324751454180269995275498473574771196581423282623"
"291015625e-19",
true,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- true,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- true,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- true,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- true,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- true,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false),
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ true,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ true,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ true,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ true,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ true,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false),
TEST ("1.0842023663559605011233140988563539153233250544872134923934"
"936523437499e-19",
false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000004p-64, false,
- 0x2.000008p-64, false,
- false,
- 0x2.000005ffffffep-64, false,
- 0x2.000006p-64, false,
- 0x2.000005ffffffep-64, false,
- 0x2.000006p-64, false,
- false,
- 0x2.000005fffffffffcp-64, false,
- 0x2.000006p-64, false,
- 0x2.000005fffffffffcp-64, false,
- 0x2.000006p-64, false,
- false,
- 0x2.000005fffffffffcp-64, false,
- 0x2.000006p-64, false,
- 0x2.000005fffffffffcp-64, false,
- 0x2.000006p-64, false,
- false,
- 0x2.000005ffffffffffffffffffffp-64, false,
- 0x2.000006p-64, false,
- 0x2.000005ffffffffffffffffffffp-64, false,
- 0x2.000006p-64, false,
- false,
- 0x2.000005fffffffffffffffffffffep-64, false,
- 0x2.000006p-64, false,
- 0x2.000005fffffffffffffffffffffep-64, false,
- 0x2.000006p-64, false),
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000008p-64, false, false,
+ false,
+ 0x2.000005ffffffep-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000005ffffffep-64, false, false,
+ 0x2.000006p-64, false, false,
+ false,
+ 0x2.000005fffffffffcp-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000005fffffffffcp-64, false, false,
+ 0x2.000006p-64, false, false,
+ false,
+ 0x2.000005fffffffffcp-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000005fffffffffcp-64, false, false,
+ 0x2.000006p-64, false, false,
+ false,
+ 0x2.000005ffffffffffffffffffffp-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000005ffffffffffffffffffffp-64, false, false,
+ 0x2.000006p-64, false, false,
+ false,
+ 0x2.000005fffffffffffffffffffffep-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000005fffffffffffffffffffffep-64, false, false,
+ 0x2.000006p-64, false, false),
TEST ("1.0842023663559605011233140988563539153233250544872134923934"
"9365234375e-19",
false,
- 0x2.000004p-64, false,
- 0x2.000008p-64, false,
- 0x2.000004p-64, false,
- 0x2.000008p-64, false,
- true,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- true,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- true,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- true,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- true,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false),
+ 0x2.000004p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000008p-64, false, false,
+ true,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ true,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ true,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ true,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ true,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false),
TEST ("1.0842023663559605011233140988563539153233250544872134923934"
"936523437501e-19",
false,
- 0x2.000004p-64, false,
- 0x2.000008p-64, false,
- 0x2.000004p-64, false,
- 0x2.000008p-64, false,
- false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.0000060000002p-64, false,
- false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.0000060000000004p-64, false,
- false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.0000060000000004p-64, false,
- false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.00000600000000000000000001p-64, false,
- false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.000006p-64, false,
- 0x2.0000060000000000000000000002p-64, false),
+ 0x2.000004p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000004p-64, false, false,
+ 0x2.000008p-64, false, false,
+ false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.0000060000002p-64, false, false,
+ false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.0000060000000004p-64, false, false,
+ false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.0000060000000004p-64, false, false,
+ false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.00000600000000000000000001p-64, false, false,
+ false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.000006p-64, false, false,
+ 0x2.0000060000000000000000000002p-64, false, false),
TEST ("1.0842024309794458568286011981851579832891729893162846565246"
"58203125e-19",
true,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- true,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- true,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- true,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- true,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- true,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false,
- 0x2.000008p-64, false),
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ true,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ true,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ true,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ true,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ true,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false,
+ 0x2.000008p-64, false, false),
TEST ("7.5231638452626400509999138382223723380394595633413601376560"
"1092018187046051025390625e-37",
true,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- true,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- true,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- true,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- true,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- true,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false),
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ true,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ true,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ true,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ true,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ true,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false),
TEST ("7.5231642936781486349413765338158389908126215730251815381410"
"578824437213052434003657253924757242202758789062499e-37",
false,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1.000002p-120, false,
- false,
- 0x1.000000fffffffp-120, false,
- 0x1.000001p-120, false,
- 0x1.000000fffffffp-120, false,
- 0x1.000001p-120, false,
- false,
- 0x1.000000fffffffffep-120, false,
- 0x1.000001p-120, false,
- 0x1.000000fffffffffep-120, false,
- 0x1.000001p-120, false,
- false,
- 0x1.000000fffffffffep-120, false,
- 0x1.000001p-120, false,
- 0x1.000000fffffffffep-120, false,
- 0x1.000001p-120, false,
- false,
- 0x1.000000ffffffffffffffffffff8p-120, false,
- 0x1.000001p-120, false,
- 0x1.000000ffffffffffffffffffff8p-120, false,
- 0x1.000001p-120, false,
- false,
- 0x1.000000ffffffffffffffffffffffp-120, false,
- 0x1.000001p-120, false,
- 0x1.000000ffffffffffffffffffffffp-120, false,
- 0x1.000001p-120, false),
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1.000002p-120, false, false,
+ false,
+ 0x1.000000fffffffp-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000000fffffffp-120, false, false,
+ 0x1.000001p-120, false, false,
+ false,
+ 0x1.000000fffffffffep-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000000fffffffffep-120, false, false,
+ 0x1.000001p-120, false, false,
+ false,
+ 0x1.000000fffffffffep-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000000fffffffffep-120, false, false,
+ 0x1.000001p-120, false, false,
+ false,
+ 0x1.000000ffffffffffffffffffff8p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000000ffffffffffffffffffff8p-120, false, false,
+ 0x1.000001p-120, false, false,
+ false,
+ 0x1.000000ffffffffffffffffffffffp-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000000ffffffffffffffffffffffp-120, false, false,
+ 0x1.000001p-120, false, false),
TEST ("7.5231642936781486349413765338158389908126215730251815381410"
"5788244372130524340036572539247572422027587890625e-37",
false,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1p-120, false,
- 0x1.000002p-120, false,
- true,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- true,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- true,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- true,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- true,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false),
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1.000002p-120, false, false,
+ true,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ true,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ true,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ true,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ true,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false),
TEST ("7.5231642936781486349413765338158389908126215730251815381410"
"578824437213052434003657253924757242202758789062501e-37",
false,
- 0x1p-120, false,
- 0x1.000002p-120, false,
- 0x1p-120, false,
- 0x1.000002p-120, false,
- false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.0000010000001p-120, false,
- false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.0000010000000002p-120, false,
- false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.0000010000000002p-120, false,
- false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001000000000000000000008p-120, false,
- false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.000001p-120, false,
- 0x1.0000010000000000000000000001p-120, false),
+ 0x1p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1p-120, false, false,
+ 0x1.000002p-120, false, false,
+ false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.0000010000001p-120, false, false,
+ false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.0000010000000002p-120, false, false,
+ false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.0000010000000002p-120, false, false,
+ false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001000000000000000000008p-120, false, false,
+ false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.000001p-120, false, false,
+ 0x1.0000010000000000000000000001p-120, false, false),
TEST ("7.5231647420936572188828392294093056435857835827090029386261"
"048447055721499765468252007849514484405517578125e-37",
true,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- true,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- true,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- true,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- true,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- true,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false),
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ true,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ true,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ true,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ true,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ true,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false),
TEST ("7.5231651905091658028243019250027722963589455923928243391111"
"518069674229947096932846761774271726608276367187499e-37",
false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000002p-120, false,
- 0x1.000004p-120, false,
- false,
- 0x1.000002fffffffp-120, false,
- 0x1.000003p-120, false,
- 0x1.000002fffffffp-120, false,
- 0x1.000003p-120, false,
- false,
- 0x1.000002fffffffffep-120, false,
- 0x1.000003p-120, false,
- 0x1.000002fffffffffep-120, false,
- 0x1.000003p-120, false,
- false,
- 0x1.000002fffffffffep-120, false,
- 0x1.000003p-120, false,
- 0x1.000002fffffffffep-120, false,
- 0x1.000003p-120, false,
- false,
- 0x1.000002ffffffffffffffffffff8p-120, false,
- 0x1.000003p-120, false,
- 0x1.000002ffffffffffffffffffff8p-120, false,
- 0x1.000003p-120, false,
- false,
- 0x1.000002ffffffffffffffffffffffp-120, false,
- 0x1.000003p-120, false,
- 0x1.000002ffffffffffffffffffffffp-120, false,
- 0x1.000003p-120, false),
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000004p-120, false, false,
+ false,
+ 0x1.000002fffffffp-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000002fffffffp-120, false, false,
+ 0x1.000003p-120, false, false,
+ false,
+ 0x1.000002fffffffffep-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000002fffffffffep-120, false, false,
+ 0x1.000003p-120, false, false,
+ false,
+ 0x1.000002fffffffffep-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000002fffffffffep-120, false, false,
+ 0x1.000003p-120, false, false,
+ false,
+ 0x1.000002ffffffffffffffffffff8p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000002ffffffffffffffffffff8p-120, false, false,
+ 0x1.000003p-120, false, false,
+ false,
+ 0x1.000002ffffffffffffffffffffffp-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000002ffffffffffffffffffffffp-120, false, false,
+ 0x1.000003p-120, false, false),
TEST ("7.5231651905091658028243019250027722963589455923928243391111"
"5180696742299470969328467617742717266082763671875e-37",
false,
- 0x1.000002p-120, false,
- 0x1.000004p-120, false,
- 0x1.000002p-120, false,
- 0x1.000004p-120, false,
- true,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- true,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- true,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- true,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- true,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false),
+ 0x1.000002p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000004p-120, false, false,
+ true,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ true,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ true,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ true,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ true,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false),
TEST ("7.5231651905091658028243019250027722963589455923928243391111"
"518069674229947096932846761774271726608276367187501e-37",
false,
- 0x1.000002p-120, false,
- 0x1.000004p-120, false,
- 0x1.000002p-120, false,
- 0x1.000004p-120, false,
- false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.0000030000001p-120, false,
- false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.0000030000000002p-120, false,
- false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.0000030000000002p-120, false,
- false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003000000000000000000008p-120, false,
- false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.000003p-120, false,
- 0x1.0000030000000000000000000001p-120, false),
+ 0x1.000002p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000002p-120, false, false,
+ 0x1.000004p-120, false, false,
+ false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.0000030000001p-120, false, false,
+ false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.0000030000000002p-120, false, false,
+ false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.0000030000000002p-120, false, false,
+ false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003000000000000000000008p-120, false, false,
+ false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.000003p-120, false, false,
+ 0x1.0000030000000000000000000001p-120, false, false),
TEST ("7.5231656389246743867657646205962389491321076020766457395961"
"98769229273839442839744151569902896881103515625e-37",
true,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- true,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- true,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- true,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- true,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- true,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false,
- 0x1.000004p-120, false),
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ true,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ true,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ true,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ true,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ true,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false,
+ 0x1.000004p-120, false, false),
TEST ("340282356779733661637539395458142568447.999",
false,
- 0xf.fffffp+124, false,
- 0xf.fffffp+124, false,
- 0xf.fffffp+124, false,
- INF, true,
- false,
- 0xf.fffff7ffffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff7ffffff8p+124, false,
- 0xf.fffff8p+124, false,
- false,
- 0xf.fffff7fffffffffp+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff7fffffffffp+124, false,
- 0xf.fffff8p+124, false,
- false,
- 0xf.fffff7fffffffffp+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff7fffffffffp+124, false,
- 0xf.fffff8p+124, false,
- false,
- 0xf.fffff7fffffffffffffffffffcp+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff7fffffffffffffffffffcp+124, false,
- 0xf.fffff8p+124, false,
- false,
- 0xf.fffff7fffffffffffffffffffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff7fffffffffffffffffffff8p+124, false,
- 0xf.fffff8p+124, false),
+ 0xf.fffffp+124, false, false,
+ 0xf.fffffp+124, false, false,
+ 0xf.fffffp+124, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffff7ffffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff7ffffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ false,
+ 0xf.fffff7fffffffffp+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff7fffffffffp+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ false,
+ 0xf.fffff7fffffffffp+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff7fffffffffp+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ false,
+ 0xf.fffff7fffffffffffffffffffcp+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff7fffffffffffffffffffcp+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ false,
+ 0xf.fffff7fffffffffffffffffffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff7fffffffffffffffffffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false),
TEST ("340282356779733661637539395458142568448",
false,
- 0xf.fffffp+124, false,
- INF, true,
- 0xf.fffffp+124, false,
- INF, true,
- true,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- true,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- true,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- true,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- true,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false),
+ 0xf.fffffp+124, false, false,
+ INF, true, false,
+ 0xf.fffffp+124, false, false,
+ INF, true, false,
+ true,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ true,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ true,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ true,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ true,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false),
TEST ("340282356779733661637539395458142568448.001",
false,
- 0xf.fffffp+124, false,
- INF, true,
- 0xf.fffffp+124, false,
- INF, true,
- false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff80000008p+124, false,
- false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8000000001p+124, false,
- false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8000000001p+124, false,
- false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff800000000000000000004p+124, false,
- false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff8p+124, false,
- 0xf.fffff80000000000000000000008p+124, false),
+ 0xf.fffffp+124, false, false,
+ INF, true, false,
+ 0xf.fffffp+124, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff80000008p+124, false, false,
+ false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8000000001p+124, false, false,
+ false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8000000001p+124, false, false,
+ false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff800000000000000000004p+124, false, false,
+ false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff8p+124, false, false,
+ 0xf.fffff80000000000000000000008p+124, false, false),
TEST ("-340282356779733661637539395458142568447.999",
false,
- -INF, true,
- -0xf.fffffp+124, false,
- -0xf.fffffp+124, false,
- -0xf.fffffp+124, false,
- false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff7ffffff8p+124, false,
- -0xf.fffff7ffffff8p+124, false,
- false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff7fffffffffp+124, false,
- -0xf.fffff7fffffffffp+124, false,
- false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff7fffffffffp+124, false,
- -0xf.fffff7fffffffffp+124, false,
- false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff7fffffffffffffffffffcp+124, false,
- -0xf.fffff7fffffffffffffffffffcp+124, false,
- false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff7fffffffffffffffffffff8p+124, false,
- -0xf.fffff7fffffffffffffffffffff8p+124, false),
+ -INF, true, false,
+ -0xf.fffffp+124, false, false,
+ -0xf.fffffp+124, false, false,
+ -0xf.fffffp+124, false, false,
+ false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff7ffffff8p+124, false, false,
+ -0xf.fffff7ffffff8p+124, false, false,
+ false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff7fffffffffp+124, false, false,
+ -0xf.fffff7fffffffffp+124, false, false,
+ false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff7fffffffffp+124, false, false,
+ -0xf.fffff7fffffffffp+124, false, false,
+ false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff7fffffffffffffffffffcp+124, false, false,
+ -0xf.fffff7fffffffffffffffffffcp+124, false, false,
+ false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff7fffffffffffffffffffff8p+124, false, false,
+ -0xf.fffff7fffffffffffffffffffff8p+124, false, false),
TEST ("-340282356779733661637539395458142568448",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, false,
- -0xf.fffffp+124, false,
- true,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- true,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- true,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- true,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- true,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, false, false,
+ -0xf.fffffp+124, false, false,
+ true,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ true,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ true,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ true,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ true,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false),
TEST ("-340282356779733661637539395458142568448.001",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, false,
- -0xf.fffffp+124, false,
- false,
- -0xf.fffff80000008p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- false,
- -0xf.fffff8000000001p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- false,
- -0xf.fffff8000000001p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- false,
- -0xf.fffff800000000000000000004p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- false,
- -0xf.fffff80000000000000000000008p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false,
- -0xf.fffff8p+124, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, false, false,
+ -0xf.fffffp+124, false, false,
+ false,
+ -0xf.fffff80000008p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ false,
+ -0xf.fffff8000000001p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ false,
+ -0xf.fffff8000000001p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ false,
+ -0xf.fffff800000000000000000004p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ false,
+ -0xf.fffff80000000000000000000008p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false,
+ -0xf.fffff8p+124, false, false),
TEST ("179769313486231580793728971405303415079934132710037826936173"
"778980444968292764750946649017977587207096330286416692887910"
"946555547851940402630657488671505820681908902000708383676273"
@@ -1855,35 +1855,35 @@ static const struct test tests[] = {
"936475292719074168444365510704342711559699508093042880177904"
"174497791.999",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, false,
- 0xf.ffffffffffff8p+1020, false,
- 0xf.ffffffffffff8p+1020, false,
- INF, true,
- false,
- 0xf.ffffffffffffbffp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffbffp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- false,
- 0xf.ffffffffffffbffp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffbffp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- false,
- 0xf.ffffffffffffbffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, true,
- 0xf.ffffffffffffbffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, true,
- false,
- 0xf.ffffffffffffbffffffffffffff8p+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffbffffffffffffff8p+1020, false,
- 0xf.ffffffffffffcp+1020, false),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, false, false,
+ 0xf.ffffffffffff8p+1020, false, false,
+ 0xf.ffffffffffff8p+1020, false, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffffbffp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffbffp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ false,
+ 0xf.ffffffffffffbffp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffbffp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ false,
+ 0xf.ffffffffffffbffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, true, false,
+ 0xf.ffffffffffffbffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, true, false,
+ false,
+ 0xf.ffffffffffffbffffffffffffff8p+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffbffffffffffffff8p+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false),
TEST ("179769313486231580793728971405303415079934132710037826936173"
"778980444968292764750946649017977587207096330286416692887910"
"946555547851940402630657488671505820681908902000708383676273"
@@ -1891,35 +1891,35 @@ static const struct test tests[] = {
"936475292719074168444365510704342711559699508093042880177904"
"174497792",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, false,
- INF, true,
- 0xf.ffffffffffff8p+1020, false,
- INF, true,
- true,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- true,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- false,
- 0xf.ffffffffffffcp+1020, true,
- 0xf.ffffffffffffcp+1020, true,
- 0xf.ffffffffffffcp+1020, true,
- 0xf.ffffffffffffcp+1020, true,
- true,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, false, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, false, false,
+ INF, true, false,
+ true,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ true,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ false,
+ 0xf.ffffffffffffcp+1020, true, false,
+ 0xf.ffffffffffffcp+1020, true, false,
+ 0xf.ffffffffffffcp+1020, true, false,
+ 0xf.ffffffffffffcp+1020, true, false,
+ true,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false),
TEST ("179769313486231580793728971405303415079934132710037826936173"
"778980444968292764750946649017977587207096330286416692887910"
"946555547851940402630657488671505820681908902000708383676273"
@@ -1927,35 +1927,35 @@ static const struct test tests[] = {
"936475292719074168444365510704342711559699508093042880177904"
"174497792.001",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, false,
- INF, true,
- 0xf.ffffffffffff8p+1020, false,
- INF, true,
- false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffc01p+1020, false,
- false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffc01p+1020, false,
- false,
- 0xf.ffffffffffffcp+1020, true,
- 0xf.ffffffffffffcp+1020, true,
- 0xf.ffffffffffffcp+1020, true,
- 0xf.ffffffffffffc0000000000004p+1020, true,
- false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffcp+1020, false,
- 0xf.ffffffffffffc000000000000008p+1020, false),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, false, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, false, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffc01p+1020, false, false,
+ false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffc01p+1020, false, false,
+ false,
+ 0xf.ffffffffffffcp+1020, true, false,
+ 0xf.ffffffffffffcp+1020, true, false,
+ 0xf.ffffffffffffcp+1020, true, false,
+ 0xf.ffffffffffffc0000000000004p+1020, true, false,
+ false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffcp+1020, false, false,
+ 0xf.ffffffffffffc000000000000008p+1020, false, false),
TEST ("-17976931348623158079372897140530341507993413271003782693617"
"377898044496829276475094664901797758720709633028641669288791"
"094655554785194040263065748867150582068190890200070838367627"
@@ -1963,35 +1963,35 @@ static const struct test tests[] = {
"493647529271907416844436551070434271155969950809304288017790"
"4174497791.999",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -0xf.ffffffffffff8p+1020, false,
- -0xf.ffffffffffff8p+1020, false,
- -0xf.ffffffffffff8p+1020, false,
- false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffbffp+1020, false,
- -0xf.ffffffffffffbffp+1020, false,
- false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffbffp+1020, false,
- -0xf.ffffffffffffbffp+1020, false,
- false,
- -0xf.ffffffffffffcp+1020, true,
- -0xf.ffffffffffffcp+1020, true,
- -0xf.ffffffffffffbffffffffffffcp+1020, false,
- -0xf.ffffffffffffbffffffffffffcp+1020, false,
- false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffbffffffffffffff8p+1020, false,
- -0xf.ffffffffffffbffffffffffffff8p+1020, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, false, false,
+ -0xf.ffffffffffff8p+1020, false, false,
+ -0xf.ffffffffffff8p+1020, false, false,
+ false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffbffp+1020, false, false,
+ -0xf.ffffffffffffbffp+1020, false, false,
+ false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffbffp+1020, false, false,
+ -0xf.ffffffffffffbffp+1020, false, false,
+ false,
+ -0xf.ffffffffffffcp+1020, true, false,
+ -0xf.ffffffffffffcp+1020, true, false,
+ -0xf.ffffffffffffbffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffbffffffffffffcp+1020, false, false,
+ false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffbffffffffffffff8p+1020, false, false,
+ -0xf.ffffffffffffbffffffffffffff8p+1020, false, false),
TEST ("-17976931348623158079372897140530341507993413271003782693617"
"377898044496829276475094664901797758720709633028641669288791"
"094655554785194040263065748867150582068190890200070838367627"
@@ -1999,35 +1999,35 @@ static const struct test tests[] = {
"493647529271907416844436551070434271155969950809304288017790"
"4174497792",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.ffffffffffff8p+1020, false,
- -0xf.ffffffffffff8p+1020, false,
- true,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- true,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- false,
- -0xf.ffffffffffffcp+1020, true,
- -0xf.ffffffffffffcp+1020, true,
- -0xf.ffffffffffffcp+1020, true,
- -0xf.ffffffffffffcp+1020, true,
- true,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, false, false,
+ -0xf.ffffffffffff8p+1020, false, false,
+ true,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ true,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ false,
+ -0xf.ffffffffffffcp+1020, true, false,
+ -0xf.ffffffffffffcp+1020, true, false,
+ -0xf.ffffffffffffcp+1020, true, false,
+ -0xf.ffffffffffffcp+1020, true, false,
+ true,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false),
TEST ("-17976931348623158079372897140530341507993413271003782693617"
"377898044496829276475094664901797758720709633028641669288791"
"094655554785194040263065748867150582068190890200070838367627"
@@ -2035,35 +2035,35 @@ static const struct test tests[] = {
"493647529271907416844436551070434271155969950809304288017790"
"4174497792.001",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.ffffffffffff8p+1020, false,
- -0xf.ffffffffffff8p+1020, false,
- false,
- -0xf.ffffffffffffc01p+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- false,
- -0xf.ffffffffffffc01p+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- false,
- -0xf.ffffffffffffc0000000000004p+1020, true,
- -0xf.ffffffffffffcp+1020, true,
- -0xf.ffffffffffffcp+1020, true,
- -0xf.ffffffffffffcp+1020, true,
- false,
- -0xf.ffffffffffffc000000000000008p+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false,
- -0xf.ffffffffffffcp+1020, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, false, false,
+ -0xf.ffffffffffff8p+1020, false, false,
+ false,
+ -0xf.ffffffffffffc01p+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ false,
+ -0xf.ffffffffffffc01p+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ false,
+ -0xf.ffffffffffffc0000000000004p+1020, true, false,
+ -0xf.ffffffffffffcp+1020, true, false,
+ -0xf.ffffffffffffcp+1020, true, false,
+ -0xf.ffffffffffffcp+1020, true, false,
+ false,
+ -0xf.ffffffffffffc000000000000008p+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false,
+ -0xf.ffffffffffffcp+1020, false, false),
TEST ("118973149535723176505351158982948866796625400469556721895649"
"927756249918185172720476044944290457046138433056764616744328"
"666255526748948793023632513609765434237723241753648908036202"
@@ -2148,35 +2148,35 @@ static const struct test tests[] = {
"578031503869424406179027994752890226443351619365453243328968"
"8740976918527.999",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- 0xf.fffffffffffffffp+16380, false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- 0xf.fffffffffffffffp+16380, false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffff7fffffffffff8p+16380, false,
- 0xf.fffffffffffffff8p+16380, false,
- 0xf.fffffffffffffff7fffffffffff8p+16380, false,
- 0xf.fffffffffffffff8p+16380, false),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffff7fffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffff7fffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffff8p+16380, false, false),
TEST ("118973149535723176505351158982948866796625400469556721895649"
"927756249918185172720476044944290457046138433056764616744328"
"666255526748948793023632513609765434237723241753648908036202"
@@ -2261,35 +2261,35 @@ static const struct test tests[] = {
"578031503869424406179027994752890226443351619365453243328968"
"8740976918528",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- true,
- 0xf.fffffffffffffff8p+16380, false,
- 0xf.fffffffffffffff8p+16380, false,
- 0xf.fffffffffffffff8p+16380, false,
- 0xf.fffffffffffffff8p+16380, false),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ true,
+ 0xf.fffffffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffff8p+16380, false, false),
TEST ("118973149535723176505351158982948866796625400469556721895649"
"927756249918185172720476044944290457046138433056764616744328"
"666255526748948793023632513609765434237723241753648908036202"
@@ -2374,35 +2374,35 @@ static const struct test tests[] = {
"578031503869424406179027994752890226443351619365453243328968"
"8740976918528.001",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffff8p+16380, false,
- 0xf.fffffffffffffff8p+16380, false,
- 0xf.fffffffffffffff8p+16380, false,
- 0xf.fffffffffffffff8000000000008p+16380, false),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffff8000000000008p+16380, false, false),
TEST ("-11897314953572317650535115898294886679662540046955672189564"
"992775624991818517272047604494429045704613843305676461674432"
"866625552674894879302363251360976543423772324175364890803620"
@@ -2487,35 +2487,35 @@ static const struct test tests[] = {
"557803150386942440617902799475289022644335161936545324332896"
"88740976918527.999",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.ffffffffffff8p+1020, true,
- -0xf.ffffffffffff8p+1020, true,
- false,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- false,
- -0xf.fffffffffffffff8p+16380, false,
- -0xf.fffffffffffffff8p+16380, false,
- -0xf.fffffffffffffff7fffffffffff8p+16380, false,
- -0xf.fffffffffffffff7fffffffffff8p+16380, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ false,
+ -0xf.fffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffff7fffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffff7fffffffffff8p+16380, false, false),
TEST ("-11897314953572317650535115898294886679662540046955672189564"
"992775624991818517272047604494429045704613843305676461674432"
"866625552674894879302363251360976543423772324175364890803620"
@@ -2600,35 +2600,35 @@ static const struct test tests[] = {
"557803150386942440617902799475289022644335161936545324332896"
"88740976918528",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.ffffffffffff8p+1020, true,
- -0xf.ffffffffffff8p+1020, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- true,
- -0xf.fffffffffffffff8p+16380, false,
- -0xf.fffffffffffffff8p+16380, false,
- -0xf.fffffffffffffff8p+16380, false,
- -0xf.fffffffffffffff8p+16380, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ true,
+ -0xf.fffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffff8p+16380, false, false),
TEST ("-11897314953572317650535115898294886679662540046955672189564"
"992775624991818517272047604494429045704613843305676461674432"
"866625552674894879302363251360976543423772324175364890803620"
@@ -2713,35 +2713,35 @@ static const struct test tests[] = {
"557803150386942440617902799475289022644335161936545324332896"
"88740976918528.001",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.ffffffffffff8p+1020, true,
- -0xf.ffffffffffff8p+1020, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- false,
- -0xf.fffffffffffffff8000000000008p+16380, false,
- -0xf.fffffffffffffff8p+16380, false,
- -0xf.fffffffffffffff8p+16380, false,
- -0xf.fffffffffffffff8p+16380, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ false,
+ -0xf.fffffffffffffff8000000000008p+16380, false, false,
+ -0xf.fffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffff8p+16380, false, false),
TEST ("118973149535723176508575932662800707347995686986910214150118"
"685272271246896789803961473130416053705672050873552479421805"
"932646640744124594447361172514341324846716679654551308018400"
@@ -2826,35 +2826,35 @@ static const struct test tests[] = {
"972233447491583165728635513802591543441145939539353470970452"
"5536550715391.999",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffff8p+16380, false,
- 0xf.fffffffffffffffffffffffffff8p+16380, false,
- 0xf.fffffffffffffffffffffffffff8p+16380, false,
- INF, true),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ 0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ INF, true, false),
TEST ("118973149535723176508575932662800707347995686986910214150118"
"685272271246896789803961473130416053705672050873552479421805"
"932646640744124594447361172514341324846716679654551308018400"
@@ -2939,35 +2939,35 @@ static const struct test tests[] = {
"972233447491583165728635513802591543441145939539353470970452"
"5536550715392",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffff8p+16380, false,
- INF, true,
- 0xf.fffffffffffffffffffffffffff8p+16380, false,
- INF, true),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ INF, true, false),
TEST ("118973149535723176508575932662800707347995686986910214150118"
"685272271246896789803961473130416053705672050873552479421805"
"932646640744124594447361172514341324846716679654551308018400"
@@ -3052,35 +3052,35 @@ static const struct test tests[] = {
"972233447491583165728635513802591543441145939539353470970452"
"5536550715392.001",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffff8p+16380, false,
- INF, true,
- 0xf.fffffffffffffffffffffffffff8p+16380, false,
- INF, true),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ INF, true, false),
TEST ("-11897314953572317650857593266280070734799568698691021415011"
"868527227124689678980396147313041605370567205087355247942180"
"593264664074412459444736117251434132484671667965455130801840"
@@ -3165,35 +3165,35 @@ static const struct test tests[] = {
"097223344749158316572863551380259154344114593953935347097045"
"25536550715391.999",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.ffffffffffff8p+1020, true,
- -0xf.ffffffffffff8p+1020, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- false,
- -INF, true,
- -0xf.fffffffffffffffffffffffffff8p+16380, false,
- -0xf.fffffffffffffffffffffffffff8p+16380, false,
- -0xf.fffffffffffffffffffffffffff8p+16380, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffffffffffffffff8p+16380, false, false),
TEST ("-11897314953572317650857593266280070734799568698691021415011"
"868527227124689678980396147313041605370567205087355247942180"
"593264664074412459444736117251434132484671667965455130801840"
@@ -3278,35 +3278,35 @@ static const struct test tests[] = {
"097223344749158316572863551380259154344114593953935347097045"
"25536550715392",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.ffffffffffff8p+1020, true,
- -0xf.ffffffffffff8p+1020, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffff8p+16380, false,
- -0xf.fffffffffffffffffffffffffff8p+16380, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffffffffffffffff8p+16380, false, false),
TEST ("-11897314953572317650857593266280070734799568698691021415011"
"868527227124689678980396147313041605370567205087355247942180"
"593264664074412459444736117251434132484671667965455130801840"
@@ -3391,419 +3391,419 @@ static const struct test tests[] = {
"097223344749158316572863551380259154344114593953935347097045"
"25536550715392.001",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.ffffffffffff8p+1020, true,
- -0xf.ffffffffffff8p+1020, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffff8p+16380, false,
- -0xf.fffffffffffffffffffffffffff8p+16380, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffffffffffffffff8p+16380, false, false),
TEST ("2.1019476964872256063855943749348741969203929128147736576356"
"0242583468662402879090222995728254318237304687499e-45",
false,
- 0x8p-152, false,
- 0x8p-152, false,
- 0x8p-152, false,
- 0x1p-148, false,
- false,
- 0xb.ffffffffffff8p-152, false,
- 0xcp-152, false,
- 0xb.ffffffffffff8p-152, false,
- 0xcp-152, false,
- false,
- 0xb.fffffffffffffffp-152, false,
- 0xcp-152, false,
- 0xb.fffffffffffffffp-152, false,
- 0xcp-152, false,
- false,
- 0xb.fffffffffffffffp-152, false,
- 0xcp-152, false,
- 0xb.fffffffffffffffp-152, false,
- 0xcp-152, false,
- false,
- 0xb.fffffffffffffffffffffffffcp-152, false,
- 0xcp-152, false,
- 0xb.fffffffffffffffffffffffffcp-152, false,
- 0xcp-152, false,
- false,
- 0xb.fffffffffffffffffffffffffff8p-152, false,
- 0xcp-152, false,
- 0xb.fffffffffffffffffffffffffff8p-152, false,
- 0xcp-152, false),
+ 0x8p-152, false, true,
+ 0x8p-152, false, true,
+ 0x8p-152, false, true,
+ 0x1p-148, false, true,
+ false,
+ 0xb.ffffffffffff8p-152, false, false,
+ 0xcp-152, false, false,
+ 0xb.ffffffffffff8p-152, false, false,
+ 0xcp-152, false, false,
+ false,
+ 0xb.fffffffffffffffp-152, false, false,
+ 0xcp-152, false, false,
+ 0xb.fffffffffffffffp-152, false, false,
+ 0xcp-152, false, false,
+ false,
+ 0xb.fffffffffffffffp-152, false, false,
+ 0xcp-152, false, false,
+ 0xb.fffffffffffffffp-152, false, false,
+ 0xcp-152, false, false,
+ false,
+ 0xb.fffffffffffffffffffffffffcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xb.fffffffffffffffffffffffffcp-152, false, false,
+ 0xcp-152, false, false,
+ false,
+ 0xb.fffffffffffffffffffffffffff8p-152, false, false,
+ 0xcp-152, false, false,
+ 0xb.fffffffffffffffffffffffffff8p-152, false, false,
+ 0xcp-152, false, false),
TEST ("2.1019476964872256063855943749348741969203929128147736576356"
"02425834686624028790902229957282543182373046875e-45",
false,
- 0x8p-152, false,
- 0x1p-148, false,
- 0x8p-152, false,
- 0x1p-148, false,
- true,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- true,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- true,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- true,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- true,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false),
+ 0x8p-152, false, true,
+ 0x1p-148, false, true,
+ 0x8p-152, false, true,
+ 0x1p-148, false, true,
+ true,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ true,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ true,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ true,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ true,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false),
TEST ("2.1019476964872256063855943749348741969203929128147736576356"
"0242583468662402879090222995728254318237304687501e-45",
false,
- 0x8p-152, false,
- 0x1p-148, false,
- 0x8p-152, false,
- 0x1p-148, false,
- false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xc.0000000000008p-152, false,
- false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xc.000000000000001p-152, false,
- false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xc.000000000000001p-152, false,
- false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xc.00000000000000000000000004p-152, false,
- false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xcp-152, false,
- 0xc.0000000000000000000000000008p-152, false),
+ 0x8p-152, false, true,
+ 0x1p-148, false, true,
+ 0x8p-152, false, true,
+ 0x1p-148, false, true,
+ false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xc.0000000000008p-152, false, false,
+ false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xc.000000000000001p-152, false, false,
+ false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xc.000000000000001p-152, false, false,
+ false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xc.00000000000000000000000004p-152, false, false,
+ false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xcp-152, false, false,
+ 0xc.0000000000000000000000000008p-152, false, false),
TEST ("-2.101947696487225606385594374934874196920392912814773657635"
"60242583468662402879090222995728254318237304687499e-45",
false,
- -0x1p-148, false,
- -0x8p-152, false,
- -0x8p-152, false,
- -0x8p-152, false,
- false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xb.ffffffffffff8p-152, false,
- -0xb.ffffffffffff8p-152, false,
- false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xb.fffffffffffffffp-152, false,
- -0xb.fffffffffffffffp-152, false,
- false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xb.fffffffffffffffp-152, false,
- -0xb.fffffffffffffffp-152, false,
- false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xb.fffffffffffffffffffffffffcp-152, false,
- -0xb.fffffffffffffffffffffffffcp-152, false,
- false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xb.fffffffffffffffffffffffffff8p-152, false,
- -0xb.fffffffffffffffffffffffffff8p-152, false),
+ -0x1p-148, false, true,
+ -0x8p-152, false, true,
+ -0x8p-152, false, true,
+ -0x8p-152, false, true,
+ false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xb.ffffffffffff8p-152, false, false,
+ -0xb.ffffffffffff8p-152, false, false,
+ false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xb.fffffffffffffffp-152, false, false,
+ -0xb.fffffffffffffffp-152, false, false,
+ false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xb.fffffffffffffffp-152, false, false,
+ -0xb.fffffffffffffffp-152, false, false,
+ false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xb.fffffffffffffffffffffffffcp-152, false, false,
+ -0xb.fffffffffffffffffffffffffcp-152, false, false,
+ false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xb.fffffffffffffffffffffffffff8p-152, false, false,
+ -0xb.fffffffffffffffffffffffffff8p-152, false, false),
TEST ("-2.101947696487225606385594374934874196920392912814773657635"
"602425834686624028790902229957282543182373046875e-45",
false,
- -0x1p-148, false,
- -0x1p-148, false,
- -0x8p-152, false,
- -0x8p-152, false,
- true,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- true,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- true,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- true,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- true,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false),
+ -0x1p-148, false, true,
+ -0x1p-148, false, true,
+ -0x8p-152, false, true,
+ -0x8p-152, false, true,
+ true,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ true,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ true,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ true,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ true,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false),
TEST ("-2.101947696487225606385594374934874196920392912814773657635"
"60242583468662402879090222995728254318237304687501e-45",
false,
- -0x1p-148, false,
- -0x1p-148, false,
- -0x8p-152, false,
- -0x8p-152, false,
- false,
- -0xc.0000000000008p-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- false,
- -0xc.000000000000001p-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- false,
- -0xc.000000000000001p-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- false,
- -0xc.00000000000000000000000004p-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- false,
- -0xc.0000000000000000000000000008p-152, false,
- -0xcp-152, false,
- -0xcp-152, false,
- -0xcp-152, false),
+ -0x1p-148, false, true,
+ -0x1p-148, false, true,
+ -0x8p-152, false, true,
+ -0x8p-152, false, true,
+ false,
+ -0xc.0000000000008p-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ false,
+ -0xc.000000000000001p-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ false,
+ -0xc.000000000000001p-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ false,
+ -0xc.00000000000000000000000004p-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ false,
+ -0xc.0000000000000000000000000008p-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false,
+ -0xcp-152, false, false),
TEST ("3.5032461608120426773093239582247903282006548546912894293926"
"7070972447770671465150371659547090530395507812499e-45",
false,
- 0x1p-148, false,
- 0x1p-148, false,
- 0x1p-148, false,
- 0x1.8p-148, false,
- false,
- 0x1.3ffffffffffffp-148, false,
- 0x1.4p-148, false,
- 0x1.3ffffffffffffp-148, false,
- 0x1.4p-148, false,
- false,
- 0x1.3ffffffffffffffep-148, false,
- 0x1.4p-148, false,
- 0x1.3ffffffffffffffep-148, false,
- 0x1.4p-148, false,
- false,
- 0x1.3ffffffffffffffep-148, false,
- 0x1.4p-148, false,
- 0x1.3ffffffffffffffep-148, false,
- 0x1.4p-148, false,
- false,
- 0x1.3fffffffffffffffffffffffff8p-148, false,
- 0x1.4p-148, false,
- 0x1.3fffffffffffffffffffffffff8p-148, false,
- 0x1.4p-148, false,
- false,
- 0x1.3fffffffffffffffffffffffffffp-148, false,
- 0x1.4p-148, false,
- 0x1.3fffffffffffffffffffffffffffp-148, false,
- 0x1.4p-148, false),
+ 0x1p-148, false, true,
+ 0x1p-148, false, true,
+ 0x1p-148, false, true,
+ 0x1.8p-148, false, true,
+ false,
+ 0x1.3ffffffffffffp-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.3ffffffffffffp-148, false, false,
+ 0x1.4p-148, false, false,
+ false,
+ 0x1.3ffffffffffffffep-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.3ffffffffffffffep-148, false, false,
+ 0x1.4p-148, false, false,
+ false,
+ 0x1.3ffffffffffffffep-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.3ffffffffffffffep-148, false, false,
+ 0x1.4p-148, false, false,
+ false,
+ 0x1.3fffffffffffffffffffffffff8p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.3fffffffffffffffffffffffff8p-148, false, false,
+ 0x1.4p-148, false, false,
+ false,
+ 0x1.3fffffffffffffffffffffffffffp-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.3fffffffffffffffffffffffffffp-148, false, false,
+ 0x1.4p-148, false, false),
TEST ("3.5032461608120426773093239582247903282006548546912894293926"
"70709724477706714651503716595470905303955078125e-45",
false,
- 0x1p-148, false,
- 0x1p-148, false,
- 0x1p-148, false,
- 0x1.8p-148, false,
- true,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- true,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- true,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- true,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- true,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false),
+ 0x1p-148, false, true,
+ 0x1p-148, false, true,
+ 0x1p-148, false, true,
+ 0x1.8p-148, false, true,
+ true,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ true,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ true,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ true,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ true,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false),
TEST ("3.5032461608120426773093239582247903282006548546912894293926"
"7070972447770671465150371659547090530395507812501e-45",
false,
- 0x1p-148, false,
- 0x1.8p-148, false,
- 0x1p-148, false,
- 0x1.8p-148, false,
- false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4000000000001p-148, false,
- false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4000000000000002p-148, false,
- false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4000000000000002p-148, false,
- false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.400000000000000000000000008p-148, false,
- false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4p-148, false,
- 0x1.4000000000000000000000000001p-148, false),
+ 0x1p-148, false, true,
+ 0x1.8p-148, false, true,
+ 0x1p-148, false, true,
+ 0x1.8p-148, false, true,
+ false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4000000000001p-148, false, false,
+ false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4000000000000002p-148, false, false,
+ false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4000000000000002p-148, false, false,
+ false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.400000000000000000000000008p-148, false, false,
+ false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4p-148, false, false,
+ 0x1.4000000000000000000000000001p-148, false, false),
TEST ("-3.503246160812042677309323958224790328200654854691289429392"
"67070972447770671465150371659547090530395507812499e-45",
false,
- -0x1.8p-148, false,
- -0x1p-148, false,
- -0x1p-148, false,
- -0x1p-148, false,
- false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.3ffffffffffffp-148, false,
- -0x1.3ffffffffffffp-148, false,
- false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.3ffffffffffffffep-148, false,
- -0x1.3ffffffffffffffep-148, false,
- false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.3ffffffffffffffep-148, false,
- -0x1.3ffffffffffffffep-148, false,
- false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.3fffffffffffffffffffffffff8p-148, false,
- -0x1.3fffffffffffffffffffffffff8p-148, false,
- false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.3fffffffffffffffffffffffffffp-148, false,
- -0x1.3fffffffffffffffffffffffffffp-148, false),
+ -0x1.8p-148, false, true,
+ -0x1p-148, false, true,
+ -0x1p-148, false, true,
+ -0x1p-148, false, true,
+ false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.3ffffffffffffp-148, false, false,
+ -0x1.3ffffffffffffp-148, false, false,
+ false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.3ffffffffffffffep-148, false, false,
+ -0x1.3ffffffffffffffep-148, false, false,
+ false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.3ffffffffffffffep-148, false, false,
+ -0x1.3ffffffffffffffep-148, false, false,
+ false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.3fffffffffffffffffffffffff8p-148, false, false,
+ -0x1.3fffffffffffffffffffffffff8p-148, false, false,
+ false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.3fffffffffffffffffffffffffffp-148, false, false,
+ -0x1.3fffffffffffffffffffffffffffp-148, false, false),
TEST ("-3.503246160812042677309323958224790328200654854691289429392"
"670709724477706714651503716595470905303955078125e-45",
false,
- -0x1.8p-148, false,
- -0x1p-148, false,
- -0x1p-148, false,
- -0x1p-148, false,
- true,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- true,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- true,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- true,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- true,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false),
+ -0x1.8p-148, false, true,
+ -0x1p-148, false, true,
+ -0x1p-148, false, true,
+ -0x1p-148, false, true,
+ true,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ true,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ true,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ true,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ true,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false),
TEST ("-3.503246160812042677309323958224790328200654854691289429392"
"67070972447770671465150371659547090530395507812501e-45",
false,
- -0x1.8p-148, false,
- -0x1.8p-148, false,
- -0x1p-148, false,
- -0x1p-148, false,
- false,
- -0x1.4000000000001p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- false,
- -0x1.4000000000000002p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- false,
- -0x1.4000000000000002p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- false,
- -0x1.400000000000000000000000008p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- false,
- -0x1.4000000000000000000000000001p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false,
- -0x1.4p-148, false),
+ -0x1.8p-148, false, true,
+ -0x1.8p-148, false, true,
+ -0x1p-148, false, true,
+ -0x1p-148, false, true,
+ false,
+ -0x1.4000000000001p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ false,
+ -0x1.4000000000000002p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ false,
+ -0x1.4000000000000002p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ false,
+ -0x1.400000000000000000000000008p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ false,
+ -0x1.4000000000000000000000000001p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false,
+ -0x1.4p-148, false, false),
TEST ("7.4109846876186981626485318930233205854758970392148714663837"
"852375101326090531312779794975454245398856969484704316857659"
"638998506553390969459816219401617281718945106978546710679176"
@@ -3818,35 +3818,35 @@ static const struct test tests[] = {
"337560846003984904972149117463085539556354188641513168478436"
"31308023759629577398300170898437499e-324",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x4p-1076, false,
- 0x4p-1076, false,
- 0x4p-1076, false,
- 0x8p-1076, false,
- false,
- 0x5.fffffffffffffff8p-1076, false,
- 0x6p-1076, false,
- 0x5.fffffffffffffff8p-1076, false,
- 0x6p-1076, false,
- false,
- 0x5.fffffffffffffff8p-1076, false,
- 0x6p-1076, false,
- 0x5.fffffffffffffff8p-1076, false,
- 0x6p-1076, false,
- false,
- 0x4p-1076, false,
- 0x4p-1076, false,
- 0x4p-1076, false,
- 0x8p-1076, false,
- false,
- 0x5.fffffffffffffffffffffffffffcp-1076, false,
- 0x6p-1076, false,
- 0x5.fffffffffffffffffffffffffffcp-1076, false,
- 0x6p-1076, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x4p-1076, false, true,
+ 0x4p-1076, false, true,
+ 0x4p-1076, false, true,
+ 0x8p-1076, false, true,
+ false,
+ 0x5.fffffffffffffff8p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x5.fffffffffffffff8p-1076, false, false,
+ 0x6p-1076, false, false,
+ false,
+ 0x5.fffffffffffffff8p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x5.fffffffffffffff8p-1076, false, false,
+ 0x6p-1076, false, false,
+ false,
+ 0x4p-1076, false, true,
+ 0x4p-1076, false, true,
+ 0x4p-1076, false, true,
+ 0x8p-1076, false, true,
+ false,
+ 0x5.fffffffffffffffffffffffffffcp-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x5.fffffffffffffffffffffffffffcp-1076, false, false,
+ 0x6p-1076, false, false),
TEST ("7.4109846876186981626485318930233205854758970392148714663837"
"852375101326090531312779794975454245398856969484704316857659"
"638998506553390969459816219401617281718945106978546710679176"
@@ -3861,35 +3861,35 @@ static const struct test tests[] = {
"337560846003984904972149117463085539556354188641513168478436"
"313080237596295773983001708984375e-324",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x4p-1076, false,
- 0x8p-1076, false,
- 0x4p-1076, false,
- 0x8p-1076, false,
- true,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- true,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- false,
- 0x4p-1076, false,
- 0x8p-1076, false,
- 0x4p-1076, false,
- 0x8p-1076, false,
- true,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6p-1076, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x4p-1076, false, true,
+ 0x8p-1076, false, true,
+ 0x4p-1076, false, true,
+ 0x8p-1076, false, true,
+ true,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ true,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ false,
+ 0x4p-1076, false, true,
+ 0x8p-1076, false, true,
+ 0x4p-1076, false, true,
+ 0x8p-1076, false, true,
+ true,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false),
TEST ("7.4109846876186981626485318930233205854758970392148714663837"
"852375101326090531312779794975454245398856969484704316857659"
"638998506553390969459816219401617281718945106978546710679176"
@@ -3904,35 +3904,35 @@ static const struct test tests[] = {
"337560846003984904972149117463085539556354188641513168478436"
"31308023759629577398300170898437501e-324",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x4p-1076, false,
- 0x8p-1076, false,
- 0x4p-1076, false,
- 0x8p-1076, false,
- false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6.0000000000000008p-1076, false,
- false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6.0000000000000008p-1076, false,
- false,
- 0x4p-1076, false,
- 0x8p-1076, false,
- 0x4p-1076, false,
- 0x8p-1076, false,
- false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6p-1076, false,
- 0x6.0000000000000000000000000004p-1076, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x4p-1076, false, true,
+ 0x8p-1076, false, true,
+ 0x4p-1076, false, true,
+ 0x8p-1076, false, true,
+ false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6.0000000000000008p-1076, false, false,
+ false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6.0000000000000008p-1076, false, false,
+ false,
+ 0x4p-1076, false, true,
+ 0x8p-1076, false, true,
+ 0x4p-1076, false, true,
+ 0x8p-1076, false, true,
+ false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6p-1076, false, false,
+ 0x6.0000000000000000000000000004p-1076, false, false),
TEST ("-7.410984687618698162648531893023320585475897039214871466383"
"785237510132609053131277979497545424539885696948470431685765"
"963899850655339096945981621940161728171894510697854671067917"
@@ -3947,35 +3947,35 @@ static const struct test tests[] = {
"433756084600398490497214911746308553955635418864151316847843"
"631308023759629577398300170898437499e-324",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-1076, false,
- -0x4p-1076, false,
- -0x4p-1076, false,
- -0x4p-1076, false,
- false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x5.fffffffffffffff8p-1076, false,
- -0x5.fffffffffffffff8p-1076, false,
- false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x5.fffffffffffffff8p-1076, false,
- -0x5.fffffffffffffff8p-1076, false,
- false,
- -0x8p-1076, false,
- -0x4p-1076, false,
- -0x4p-1076, false,
- -0x4p-1076, false,
- false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x5.fffffffffffffffffffffffffffcp-1076, false,
- -0x5.fffffffffffffffffffffffffffcp-1076, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-1076, false, true,
+ -0x4p-1076, false, true,
+ -0x4p-1076, false, true,
+ -0x4p-1076, false, true,
+ false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x5.fffffffffffffff8p-1076, false, false,
+ -0x5.fffffffffffffff8p-1076, false, false,
+ false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x5.fffffffffffffff8p-1076, false, false,
+ -0x5.fffffffffffffff8p-1076, false, false,
+ false,
+ -0x8p-1076, false, true,
+ -0x4p-1076, false, true,
+ -0x4p-1076, false, true,
+ -0x4p-1076, false, true,
+ false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x5.fffffffffffffffffffffffffffcp-1076, false, false,
+ -0x5.fffffffffffffffffffffffffffcp-1076, false, false),
TEST ("-7.410984687618698162648531893023320585475897039214871466383"
"785237510132609053131277979497545424539885696948470431685765"
"963899850655339096945981621940161728171894510697854671067917"
@@ -3990,35 +3990,35 @@ static const struct test tests[] = {
"433756084600398490497214911746308553955635418864151316847843"
"6313080237596295773983001708984375e-324",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-1076, false,
- -0x8p-1076, false,
- -0x4p-1076, false,
- -0x4p-1076, false,
- true,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- true,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- false,
- -0x8p-1076, false,
- -0x8p-1076, false,
- -0x4p-1076, false,
- -0x4p-1076, false,
- true,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-1076, false, true,
+ -0x8p-1076, false, true,
+ -0x4p-1076, false, true,
+ -0x4p-1076, false, true,
+ true,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ true,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ false,
+ -0x8p-1076, false, true,
+ -0x8p-1076, false, true,
+ -0x4p-1076, false, true,
+ -0x4p-1076, false, true,
+ true,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false),
TEST ("-7.410984687618698162648531893023320585475897039214871466383"
"785237510132609053131277979497545424539885696948470431685765"
"963899850655339096945981621940161728171894510697854671067917"
@@ -4033,35 +4033,35 @@ static const struct test tests[] = {
"433756084600398490497214911746308553955635418864151316847843"
"631308023759629577398300170898437501e-324",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-1076, false,
- -0x8p-1076, false,
- -0x4p-1076, false,
- -0x4p-1076, false,
- false,
- -0x6.0000000000000008p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- false,
- -0x6.0000000000000008p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- false,
- -0x8p-1076, false,
- -0x8p-1076, false,
- -0x4p-1076, false,
- -0x4p-1076, false,
- false,
- -0x6.0000000000000000000000000004p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false,
- -0x6p-1076, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-1076, false, true,
+ -0x8p-1076, false, true,
+ -0x4p-1076, false, true,
+ -0x4p-1076, false, true,
+ false,
+ -0x6.0000000000000008p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ false,
+ -0x6.0000000000000008p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ false,
+ -0x8p-1076, false, true,
+ -0x8p-1076, false, true,
+ -0x4p-1076, false, true,
+ -0x4p-1076, false, true,
+ false,
+ -0x6.0000000000000000000000000004p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false,
+ -0x6p-1076, false, false),
TEST ("5.4677992978237119037926089004291297245985762235403450155814"
"707305425575329500966052143410629387408077958710210208052966"
"529504784489330482549602621133847135082257338717668975178538"
@@ -4255,35 +4255,35 @@ static const struct test tests[] = {
"866268925981702690270202829595794350800918257913991744455922"
"683343374046671669930219650268554687499e-4951",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x8p-16448, false,
- 0x8p-16448, false,
- 0x8p-16448, false,
- 0x1p-16444, false,
- false,
- 0x8p-16448, false,
- 0xcp-16448, false,
- 0x8p-16448, false,
- 0xcp-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0xb.fffffffffffcp-16448, false,
- 0xcp-16448, false,
- 0xb.fffffffffffcp-16448, false,
- 0xcp-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x8p-16448, false, true,
+ 0x8p-16448, false, true,
+ 0x8p-16448, false, true,
+ 0x1p-16444, false, true,
+ false,
+ 0x8p-16448, false, true,
+ 0xcp-16448, false, true,
+ 0x8p-16448, false, true,
+ 0xcp-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0xb.fffffffffffcp-16448, false, true,
+ 0xcp-16448, false, true,
+ 0xb.fffffffffffcp-16448, false, true,
+ 0xcp-16448, false, true),
TEST ("5.4677992978237119037926089004291297245985762235403450155814"
"707305425575329500966052143410629387408077958710210208052966"
"529504784489330482549602621133847135082257338717668975178538"
@@ -4477,35 +4477,35 @@ static const struct test tests[] = {
"866268925981702690270202829595794350800918257913991744455922"
"6833433740466716699302196502685546875e-4951",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x8p-16448, false,
- 0x1p-16444, false,
- 0x8p-16448, false,
- 0x1p-16444, false,
- true,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- true,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x8p-16448, false, true,
+ 0x1p-16444, false, true,
+ 0x8p-16448, false, true,
+ 0x1p-16444, false, true,
+ true,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false),
TEST ("5.4677992978237119037926089004291297245985762235403450155814"
"707305425575329500966052143410629387408077958710210208052966"
"529504784489330482549602621133847135082257338717668975178538"
@@ -4699,35 +4699,35 @@ static const struct test tests[] = {
"866268925981702690270202829595794350800918257913991744455922"
"683343374046671669930219650268554687501e-4951",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x8p-16448, false,
- 0x1p-16444, false,
- 0x8p-16448, false,
- 0x1p-16444, false,
- false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0x1p-16444, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xc.000000000004p-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x8p-16448, false, true,
+ 0x1p-16444, false, true,
+ 0x8p-16448, false, true,
+ 0x1p-16444, false, true,
+ false,
+ 0xcp-16448, false, true,
+ 0xcp-16448, false, true,
+ 0xcp-16448, false, true,
+ 0x1p-16444, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0xcp-16448, false, true,
+ 0xcp-16448, false, true,
+ 0xcp-16448, false, true,
+ 0xc.000000000004p-16448, false, true),
TEST ("-5.467799297823711903792608900429129724598576223540345015581"
"470730542557532950096605214341062938740807795871021020805296"
"652950478448933048254960262113384713508225733871766897517853"
@@ -4921,35 +4921,35 @@ static const struct test tests[] = {
"386626892598170269027020282959579435080091825791399174445592"
"2683343374046671669930219650268554687499e-4951",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x1p-16444, false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xb.fffffffffffcp-16448, false,
- -0xb.fffffffffffcp-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x1p-16444, false, true,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ false,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true,
+ -0xb.fffffffffffcp-16448, false, true,
+ -0xb.fffffffffffcp-16448, false, true),
TEST ("-5.467799297823711903792608900429129724598576223540345015581"
"470730542557532950096605214341062938740807795871021020805296"
"652950478448933048254960262113384713508225733871766897517853"
@@ -5143,35 +5143,35 @@ static const struct test tests[] = {
"386626892598170269027020282959579435080091825791399174445592"
"26833433740466716699302196502685546875e-4951",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x1p-16444, false,
- -0x1p-16444, false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- true,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x1p-16444, false, true,
+ -0x1p-16444, false, true,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ true,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false),
TEST ("-5.467799297823711903792608900429129724598576223540345015581"
"470730542557532950096605214341062938740807795871021020805296"
"652950478448933048254960262113384713508225733871766897517853"
@@ -5365,35 +5365,35 @@ static const struct test tests[] = {
"386626892598170269027020282959579435080091825791399174445592"
"2683343374046671669930219650268554687501e-4951",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x1p-16444, false,
- -0x1p-16444, false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- false,
- -0x1p-16444, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0xc.000000000004p-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x1p-16444, false, true,
+ -0x1p-16444, false, true,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ false,
+ -0x1p-16444, false, true,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0xc.000000000004p-16448, false, true,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true),
TEST ("5.4677992978237119037926089004291297245985762235403450155814"
"707305425575329500966052143410629387408077958710210208052966"
"529504784489330482549602621133847135082257338717668975178538"
@@ -5587,35 +5587,35 @@ static const struct test tests[] = {
"866268925981702690270202829595794350800918257913991744455922"
"683343374046671669930219650268554687499e-4951",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x8p-16448, false,
- 0x8p-16448, false,
- 0x8p-16448, false,
- 0x1p-16444, false,
- false,
- 0x8p-16448, false,
- 0xcp-16448, false,
- 0x8p-16448, false,
- 0xcp-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0xb.fffffffffffcp-16448, false,
- 0xcp-16448, false,
- 0xb.fffffffffffcp-16448, false,
- 0xcp-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x8p-16448, false, true,
+ 0x8p-16448, false, true,
+ 0x8p-16448, false, true,
+ 0x1p-16444, false, true,
+ false,
+ 0x8p-16448, false, true,
+ 0xcp-16448, false, true,
+ 0x8p-16448, false, true,
+ 0xcp-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0xb.fffffffffffcp-16448, false, true,
+ 0xcp-16448, false, true,
+ 0xb.fffffffffffcp-16448, false, true,
+ 0xcp-16448, false, true),
TEST ("5.4677992978237119037926089004291297245985762235403450155814"
"707305425575329500966052143410629387408077958710210208052966"
"529504784489330482549602621133847135082257338717668975178538"
@@ -5809,35 +5809,35 @@ static const struct test tests[] = {
"866268925981702690270202829595794350800918257913991744455922"
"6833433740466716699302196502685546875e-4951",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x8p-16448, false,
- 0x1p-16444, false,
- 0x8p-16448, false,
- 0x1p-16444, false,
- true,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- true,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x8p-16448, false, true,
+ 0x1p-16444, false, true,
+ 0x8p-16448, false, true,
+ 0x1p-16444, false, true,
+ true,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false,
+ 0xcp-16448, false, false),
TEST ("5.4677992978237119037926089004291297245985762235403450155814"
"707305425575329500966052143410629387408077958710210208052966"
"529504784489330482549602621133847135082257338717668975178538"
@@ -6031,35 +6031,35 @@ static const struct test tests[] = {
"866268925981702690270202829595794350800918257913991744455922"
"683343374046671669930219650268554687501e-4951",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x8p-16448, false,
- 0x1p-16444, false,
- 0x8p-16448, false,
- 0x1p-16444, false,
- false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0x1p-16444, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xcp-16448, false,
- 0xc.000000000004p-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x8p-16448, false, true,
+ 0x1p-16444, false, true,
+ 0x8p-16448, false, true,
+ 0x1p-16444, false, true,
+ false,
+ 0xcp-16448, false, true,
+ 0xcp-16448, false, true,
+ 0xcp-16448, false, true,
+ 0x1p-16444, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0xcp-16448, false, true,
+ 0xcp-16448, false, true,
+ 0xcp-16448, false, true,
+ 0xc.000000000004p-16448, false, true),
TEST ("-5.467799297823711903792608900429129724598576223540345015581"
"470730542557532950096605214341062938740807795871021020805296"
"652950478448933048254960262113384713508225733871766897517853"
@@ -6253,35 +6253,35 @@ static const struct test tests[] = {
"386626892598170269027020282959579435080091825791399174445592"
"2683343374046671669930219650268554687499e-4951",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x1p-16444, false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xb.fffffffffffcp-16448, false,
- -0xb.fffffffffffcp-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x1p-16444, false, true,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ false,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true,
+ -0xb.fffffffffffcp-16448, false, true,
+ -0xb.fffffffffffcp-16448, false, true),
TEST ("-5.467799297823711903792608900429129724598576223540345015581"
"470730542557532950096605214341062938740807795871021020805296"
"652950478448933048254960262113384713508225733871766897517853"
@@ -6475,35 +6475,35 @@ static const struct test tests[] = {
"386626892598170269027020282959579435080091825791399174445592"
"26833433740466716699302196502685546875e-4951",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x1p-16444, false,
- -0x1p-16444, false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- true,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x1p-16444, false, true,
+ -0x1p-16444, false, true,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ true,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false,
+ -0xcp-16448, false, false),
TEST ("-5.467799297823711903792608900429129724598576223540345015581"
"470730542557532950096605214341062938740807795871021020805296"
"652950478448933048254960262113384713508225733871766897517853"
@@ -6697,630 +6697,630 @@ static const struct test tests[] = {
"386626892598170269027020282959579435080091825791399174445592"
"2683343374046671669930219650268554687501e-4951",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x1p-16444, false,
- -0x1p-16444, false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- false,
- -0x1p-16444, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0xc.000000000004p-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false,
- -0xcp-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x1p-16444, false, true,
+ -0x1p-16444, false, true,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ false,
+ -0x1p-16444, false, true,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0xc.000000000004p-16448, false, true,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true,
+ -0xcp-16448, false, true),
TEST ("-0x0.7p-149",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- true,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- true,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- true,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- true,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- -0x3.8p-152, false,
- -0x3.8p-152, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ true,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ true,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ true,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ true,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false,
+ -0x3.8p-152, false, false),
TEST ("-0x0.7p-1074",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x1.cp-1076, false,
- -0x1.cp-1076, false,
- -0x1.cp-1076, false,
- -0x1.cp-1076, false,
- true,
- -0x1.cp-1076, false,
- -0x1.cp-1076, false,
- -0x1.cp-1076, false,
- -0x1.cp-1076, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x1.cp-1076, false,
- -0x1.cp-1076, false,
- -0x1.cp-1076, false,
- -0x1.cp-1076, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x1.cp-1076, false, false,
+ -0x1.cp-1076, false, false,
+ -0x1.cp-1076, false, false,
+ -0x1.cp-1076, false, false,
+ true,
+ -0x1.cp-1076, false, false,
+ -0x1.cp-1076, false, false,
+ -0x1.cp-1076, false, false,
+ -0x1.cp-1076, false, false,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x1.cp-1076, false, false,
+ -0x1.cp-1076, false, false,
+ -0x1.cp-1076, false, false,
+ -0x1.cp-1076, false, false),
TEST ("-0x0.7p-16445",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x3.8p-16448, false,
- -0x3.8p-16448, false,
- -0x3.8p-16448, false,
- -0x3.8p-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x4p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x3.8p-16448, false, false,
+ -0x3.8p-16448, false, false,
+ -0x3.8p-16448, false, false,
+ -0x3.8p-16448, false, false),
TEST ("-0x0.7p-16494",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16496, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16496, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true),
TEST ("0x1p-150",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- true,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- true,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- true,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- true,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- true,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ true,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ true,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ true,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ true,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ true,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false),
TEST ("0x1p-1075",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- true,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- true,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- true,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ true,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false),
TEST ("0x1p-16446",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- true,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- true,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4p-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ true,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false),
TEST ("0x1p-16495",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-16496, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16496, false, true),
TEST ("-0x1p-150",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- true,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- true,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- true,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- true,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ true,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ true,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ true,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ true,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false),
TEST ("-0x1p-1075",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- true,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ true,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false),
TEST ("-0x1p-16446",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false),
TEST ("-0x1p-16495",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16496, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16496, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true),
TEST (".70064923216240853546186479164495807e-45",
false,
- 0x0p+0, false,
- 0x8p-152, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4.0000000000004p-152, false,
- false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4.0000000000000008p-152, false,
- false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4.0000000000000008p-152, false,
- false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4.00000000000000000000000002p-152, false,
- false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4.0000000000000000000000000004p-152, false),
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4.0000000000004p-152, false, false,
+ false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4.0000000000000008p-152, false, false,
+ false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4.0000000000000008p-152, false, false,
+ false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4.00000000000000000000000002p-152, false, false,
+ false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4.0000000000000000000000000004p-152, false, false),
TEST ("7.0064923216240853546186479164495806564013097093825788587853"
"4141944895541342930300743319094181060791015624e-46",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x3.ffffffffffffep-152, false,
- 0x4p-152, false,
- 0x3.ffffffffffffep-152, false,
- 0x4p-152, false,
- false,
- 0x3.fffffffffffffffcp-152, false,
- 0x4p-152, false,
- 0x3.fffffffffffffffcp-152, false,
- 0x4p-152, false,
- false,
- 0x3.fffffffffffffffcp-152, false,
- 0x4p-152, false,
- 0x3.fffffffffffffffcp-152, false,
- 0x4p-152, false,
- false,
- 0x3.ffffffffffffffffffffffffffp-152, false,
- 0x4p-152, false,
- 0x3.ffffffffffffffffffffffffffp-152, false,
- 0x4p-152, false,
- false,
- 0x3.fffffffffffffffffffffffffffep-152, false,
- 0x4p-152, false,
- 0x3.fffffffffffffffffffffffffffep-152, false,
- 0x4p-152, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x3.ffffffffffffep-152, false, false,
+ 0x4p-152, false, false,
+ 0x3.ffffffffffffep-152, false, false,
+ 0x4p-152, false, false,
+ false,
+ 0x3.fffffffffffffffcp-152, false, false,
+ 0x4p-152, false, false,
+ 0x3.fffffffffffffffcp-152, false, false,
+ 0x4p-152, false, false,
+ false,
+ 0x3.fffffffffffffffcp-152, false, false,
+ 0x4p-152, false, false,
+ 0x3.fffffffffffffffcp-152, false, false,
+ 0x4p-152, false, false,
+ false,
+ 0x3.ffffffffffffffffffffffffffp-152, false, false,
+ 0x4p-152, false, false,
+ 0x3.ffffffffffffffffffffffffffp-152, false, false,
+ 0x4p-152, false, false,
+ false,
+ 0x3.fffffffffffffffffffffffffffep-152, false, false,
+ 0x4p-152, false, false,
+ 0x3.fffffffffffffffffffffffffffep-152, false, false,
+ 0x4p-152, false, false),
TEST ("7.0064923216240853546186479164495806564013097093825788587853"
"4141944895541342930300743319094181060791015625e-46",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- true,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- true,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- true,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- true,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- true,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ true,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ true,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ true,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ true,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ true,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false),
TEST ("7.0064923216240853546186479164495806564013097093825788587853"
"4141944895541342930300743319094181060791015626e-46",
false,
- 0x0p+0, false,
- 0x8p-152, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4.0000000000004p-152, false,
- false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4.0000000000000008p-152, false,
- false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4.0000000000000008p-152, false,
- false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4.00000000000000000000000002p-152, false,
- false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4p-152, false,
- 0x4.0000000000000000000000000004p-152, false),
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4.0000000000004p-152, false, false,
+ false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4.0000000000000008p-152, false, false,
+ false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4.0000000000000008p-152, false, false,
+ false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4.00000000000000000000000002p-152, false, false,
+ false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4p-152, false, false,
+ 0x4.0000000000000000000000000004p-152, false, false),
TEST ("-7.006492321624085354618647916449580656401309709382578858785"
"34141944895541342930300743319094181060791015624e-46",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x3.ffffffffffffep-152, false,
- -0x3.ffffffffffffep-152, false,
- false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x3.fffffffffffffffcp-152, false,
- -0x3.fffffffffffffffcp-152, false,
- false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x3.fffffffffffffffcp-152, false,
- -0x3.fffffffffffffffcp-152, false,
- false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x3.ffffffffffffffffffffffffffp-152, false,
- -0x3.ffffffffffffffffffffffffffp-152, false,
- false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x3.fffffffffffffffffffffffffffep-152, false,
- -0x3.fffffffffffffffffffffffffffep-152, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x3.ffffffffffffep-152, false, false,
+ -0x3.ffffffffffffep-152, false, false,
+ false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x3.fffffffffffffffcp-152, false, false,
+ -0x3.fffffffffffffffcp-152, false, false,
+ false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x3.fffffffffffffffcp-152, false, false,
+ -0x3.fffffffffffffffcp-152, false, false,
+ false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x3.ffffffffffffffffffffffffffp-152, false, false,
+ -0x3.ffffffffffffffffffffffffffp-152, false, false,
+ false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x3.fffffffffffffffffffffffffffep-152, false, false,
+ -0x3.fffffffffffffffffffffffffffep-152, false, false),
TEST ("-7.006492321624085354618647916449580656401309709382578858785"
"34141944895541342930300743319094181060791015625e-46",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- true,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- true,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- true,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- true,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ true,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ true,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ true,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ true,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false),
TEST ("-7.006492321624085354618647916449580656401309709382578858785"
"34141944895541342930300743319094181060791015626e-46",
false,
- -0x8p-152, false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4.0000000000004p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- false,
- -0x4.0000000000000008p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- false,
- -0x4.0000000000000008p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- false,
- -0x4.00000000000000000000000002p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- false,
- -0x4.0000000000000000000000000004p-152, false,
- -0x4p-152, false,
- -0x4p-152, false,
- -0x4p-152, false),
+ -0x8p-152, false, true,
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4.0000000000004p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ false,
+ -0x4.0000000000000008p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ false,
+ -0x4.0000000000000008p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ false,
+ -0x4.00000000000000000000000002p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ false,
+ -0x4.0000000000000000000000000004p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false,
+ -0x4p-152, false, false),
TEST ("2.4703282292062327208828439643411068618252990130716238221279"
"284125033775363510437593264991818081799618989828234772285886"
"546332835517796989819938739800539093906315035659515570226392"
@@ -7335,35 +7335,35 @@ static const struct test tests[] = {
"779186948667994968324049705821028513185451396213837722826145"
"437693412532098591327667236328124e-324",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x1.fffffffffffffffep-1076, false,
- 0x2p-1076, false,
- 0x1.fffffffffffffffep-1076, false,
- 0x2p-1076, false,
- false,
- 0x1.fffffffffffffffep-1076, false,
- 0x2p-1076, false,
- 0x1.fffffffffffffffep-1076, false,
- 0x2p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x1.ffffffffffffffffffffffffffffp-1076, false,
- 0x2p-1076, false,
- 0x1.ffffffffffffffffffffffffffffp-1076, false,
- 0x2p-1076, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x1.fffffffffffffffep-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x1.fffffffffffffffep-1076, false, false,
+ 0x2p-1076, false, false,
+ false,
+ 0x1.fffffffffffffffep-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x1.fffffffffffffffep-1076, false, false,
+ 0x2p-1076, false, false,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x1.ffffffffffffffffffffffffffffp-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x1.ffffffffffffffffffffffffffffp-1076, false, false,
+ 0x2p-1076, false, false),
TEST ("2.4703282292062327208828439643411068618252990130716238221279"
"284125033775363510437593264991818081799618989828234772285886"
"546332835517796989819938739800539093906315035659515570226392"
@@ -7378,35 +7378,35 @@ static const struct test tests[] = {
"779186948667994968324049705821028513185451396213837722826145"
"437693412532098591327667236328125e-324",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- true,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- true,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- true,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ true,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false),
TEST ("2.4703282292062327208828439643411068618252990130716238221279"
"284125033775363510437593264991818081799618989828234772285886"
"546332835517796989819938739800539093906315035659515570226392"
@@ -7421,35 +7421,35 @@ static const struct test tests[] = {
"779186948667994968324049705821028513185451396213837722826145"
"437693412532098591327667236328126e-324",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x4p-1076, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2.0000000000000004p-1076, false,
- false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2.0000000000000004p-1076, false,
- false,
- 0x0p+0, false,
- 0x4p-1076, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2p-1076, false,
- 0x2.0000000000000000000000000002p-1076, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2.0000000000000004p-1076, false, false,
+ false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2.0000000000000004p-1076, false, false,
+ false,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2p-1076, false, false,
+ 0x2.0000000000000000000000000002p-1076, false, false),
TEST ("-2.470328229206232720882843964341106861825299013071623822127"
"928412503377536351043759326499181808179961898982823477228588"
"654633283551779698981993873980053909390631503565951557022639"
@@ -7464,35 +7464,35 @@ static const struct test tests[] = {
"477918694866799496832404970582102851318545139621383772282614"
"5437693412532098591327667236328124e-324",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x1.fffffffffffffffep-1076, false,
- -0x1.fffffffffffffffep-1076, false,
- false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x1.fffffffffffffffep-1076, false,
- -0x1.fffffffffffffffep-1076, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x1.ffffffffffffffffffffffffffffp-1076, false,
- -0x1.ffffffffffffffffffffffffffffp-1076, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x1.fffffffffffffffep-1076, false, false,
+ -0x1.fffffffffffffffep-1076, false, false,
+ false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x1.fffffffffffffffep-1076, false, false,
+ -0x1.fffffffffffffffep-1076, false, false,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x1.ffffffffffffffffffffffffffffp-1076, false, false,
+ -0x1.ffffffffffffffffffffffffffffp-1076, false, false),
TEST ("-2.470328229206232720882843964341106861825299013071623822127"
"928412503377536351043759326499181808179961898982823477228588"
"654633283551779698981993873980053909390631503565951557022639"
@@ -7507,35 +7507,35 @@ static const struct test tests[] = {
"477918694866799496832404970582102851318545139621383772282614"
"5437693412532098591327667236328125e-324",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- true,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ true,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false),
TEST ("-2.470328229206232720882843964341106861825299013071623822127"
"928412503377536351043759326499181808179961898982823477228588"
"654633283551779698981993873980053909390631503565951557022639"
@@ -7550,35 +7550,35 @@ static const struct test tests[] = {
"477918694866799496832404970582102851318545139621383772282614"
"5437693412532098591327667236328126e-324",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x2.0000000000000004p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- false,
- -0x2.0000000000000004p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- false,
- -0x4p-1076, false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x2.0000000000000000000000000002p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false,
- -0x2p-1076, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x2.0000000000000004p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ false,
+ -0x2.0000000000000004p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ false,
+ -0x4p-1076, false, true,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x2.0000000000000000000000000002p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false,
+ -0x2p-1076, false, false),
TEST ("1.8225997659412373012642029668097099081995254078467816718604"
"902435141858443166988684047803543129136025986236736736017655"
"509834928163110160849867540377949045027419112905889658392846"
@@ -7772,35 +7772,35 @@ static const struct test tests[] = {
"622089641993900896756734276531931450266972752637997248151974"
"2277811246822238899767398834228515624e-4951",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- false,
- 0x0p+0, false,
- 0x4p-16448, false,
- 0x0p+0, false,
- 0x4p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x3.fffffffffffcp-16448, false,
- 0x4p-16448, false,
- 0x3.fffffffffffcp-16448, false,
- 0x4p-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x4p-16448, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x3.fffffffffffcp-16448, false, true,
+ 0x4p-16448, false, true,
+ 0x3.fffffffffffcp-16448, false, true,
+ 0x4p-16448, false, true),
TEST ("1.8225997659412373012642029668097099081995254078467816718604"
"902435141858443166988684047803543129136025986236736736017655"
"509834928163110160849867540377949045027419112905889658392846"
@@ -7994,35 +7994,35 @@ static const struct test tests[] = {
"622089641993900896756734276531931450266972752637997248151974"
"2277811246822238899767398834228515625e-4951",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- true,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- true,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4p-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ true,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false,
+ 0x4p-16448, false, false),
TEST ("1.8225997659412373012642029668097099081995254078467816718604"
"902435141858443166988684047803543129136025986236736736017655"
"509834928163110160849867540377949045027419112905889658392846"
@@ -8216,35 +8216,35 @@ static const struct test tests[] = {
"622089641993900896756734276531931450266972752637997248151974"
"2277811246822238899767398834228515626e-4951",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x8p-16448, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- false,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x8p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4p-16448, false,
- 0x4.000000000004p-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ false,
+ 0x4p-16448, false, true,
+ 0x4p-16448, false, true,
+ 0x4p-16448, false, true,
+ 0x8p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x4p-16448, false, true,
+ 0x4p-16448, false, true,
+ 0x4p-16448, false, true,
+ 0x4.000000000004p-16448, false, true),
TEST ("-1.822599765941237301264202966809709908199525407846781671860"
"490243514185844316698868404780354312913602598623673673601765"
"550983492816311016084986754037794904502741911290588965839284"
@@ -8438,35 +8438,35 @@ static const struct test tests[] = {
"462208964199390089675673427653193145026697275263799724815197"
"42277811246822238899767398834228515624e-4951",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x3.fffffffffffcp-16448, false,
- -0x3.fffffffffffcp-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x4p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x4p-16448, false, true,
+ -0x3.fffffffffffcp-16448, false, true,
+ -0x3.fffffffffffcp-16448, false, true),
TEST ("-1.822599765941237301264202966809709908199525407846781671860"
"490243514185844316698868404780354312913602598623673673601765"
"550983492816311016084986754037794904502741911290588965839284"
@@ -8660,35 +8660,35 @@ static const struct test tests[] = {
"462208964199390089675673427653193145026697275263799724815197"
"42277811246822238899767398834228515625e-4951",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false,
+ -0x4p-16448, false, false),
TEST ("-1.822599765941237301264202966809709908199525407846781671860"
"490243514185844316698868404780354312913602598623673673601765"
"550983492816311016084986754037794904502741911290588965839284"
@@ -8882,35 +8882,35 @@ static const struct test tests[] = {
"462208964199390089675673427653193145026697275263799724815197"
"42277811246822238899767398834228515626e-4951",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4.000000000004p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x4p-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x4p-16448, false, true,
+ -0x4p-16448, false, true,
+ -0x4p-16448, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4.000000000004p-16448, false, true,
+ -0x4p-16448, false, true,
+ -0x4p-16448, false, true,
+ -0x4p-16448, false, true),
TEST ("9.1129988297061865063210148340485495409976270392339083593024"
"512175709292215834943420239017715645680129931183683680088277"
"549174640815550804249337701889745225137095564529448291964230"
@@ -9104,35 +9104,35 @@ static const struct test tests[] = {
"110448209969504483783671382659657251334863763189986240759871"
"1389056234111194498836994171142578124e-4952",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x1.fffffffffffcp-16448, false,
- 0x2p-16448, false,
- 0x1.fffffffffffcp-16448, false,
- 0x2p-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x1.fffffffffffcp-16448, false, true,
+ 0x2p-16448, false, true,
+ 0x1.fffffffffffcp-16448, false, true,
+ 0x2p-16448, false, true),
TEST ("9.1129988297061865063210148340485495409976270392339083593024"
"512175709292215834943420239017715645680129931183683680088277"
"549174640815550804249337701889745225137095564529448291964230"
@@ -9326,35 +9326,35 @@ static const struct test tests[] = {
"110448209969504483783671382659657251334863763189986240759871"
"1389056234111194498836994171142578125e-4952",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- true,
- 0x2p-16448, false,
- 0x2p-16448, false,
- 0x2p-16448, false,
- 0x2p-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0x2p-16448, false, false,
+ 0x2p-16448, false, false,
+ 0x2p-16448, false, false,
+ 0x2p-16448, false, false),
TEST ("9.1129988297061865063210148340485495409976270392339083593024"
"512175709292215834943420239017715645680129931183683680088277"
"549174640815550804249337701889745225137095564529448291964230"
@@ -9548,35 +9548,35 @@ static const struct test tests[] = {
"110448209969504483783671382659657251334863763189986240759871"
"1389056234111194498836994171142578126e-4952",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- false,
- 0x0p+0, false,
- 0x4p-16448, false,
- 0x0p+0, false,
- 0x4p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x2p-16448, false,
- 0x2p-16448, false,
- 0x2p-16448, false,
- 0x2.000000000004p-16448, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x4p-16448, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x2p-16448, false, true,
+ 0x2p-16448, false, true,
+ 0x2p-16448, false, true,
+ 0x2.000000000004p-16448, false, true),
TEST ("-9.112998829706186506321014834048549540997627039233908359302"
"451217570929221583494342023901771564568012993118368368008827"
"754917464081555080424933770188974522513709556452944829196423"
@@ -9770,35 +9770,35 @@ static const struct test tests[] = {
"311044820996950448378367138265965725133486376318998624075987"
"11389056234111194498836994171142578124e-4952",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x2p-16448, false,
- -0x2p-16448, false,
- -0x1.fffffffffffcp-16448, false,
- -0x1.fffffffffffcp-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x2p-16448, false, true,
+ -0x2p-16448, false, true,
+ -0x1.fffffffffffcp-16448, false, true,
+ -0x1.fffffffffffcp-16448, false, true),
TEST ("-9.112998829706186506321014834048549540997627039233908359302"
"451217570929221583494342023901771564568012993118368368008827"
"754917464081555080424933770188974522513709556452944829196423"
@@ -9992,35 +9992,35 @@ static const struct test tests[] = {
"311044820996950448378367138265965725133486376318998624075987"
"11389056234111194498836994171142578125e-4952",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- true,
- -0x2p-16448, false,
- -0x2p-16448, false,
- -0x2p-16448, false,
- -0x2p-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ true,
+ -0x2p-16448, false, false,
+ -0x2p-16448, false, false,
+ -0x2p-16448, false, false,
+ -0x2p-16448, false, false),
TEST ("-9.112998829706186506321014834048549540997627039233908359302"
"451217570929221583494342023901771564568012993118368368008827"
"754917464081555080424933770188974522513709556452944829196423"
@@ -10214,35 +10214,35 @@ static const struct test tests[] = {
"311044820996950448378367138265965725133486376318998624075987"
"11389056234111194498836994171142578126e-4952",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x4p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x2.000000000004p-16448, false,
- -0x2p-16448, false,
- -0x2p-16448, false,
- -0x2p-16448, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x4p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x2.000000000004p-16448, false, true,
+ -0x2p-16448, false, true,
+ -0x2p-16448, false, true,
+ -0x2p-16448, false, true),
TEST ("3.2375875597190125554622194791138232762497846690173405048449"
"421945985197700620596855088357456383249701279390707384240598"
"382936099431912710233425550359863089915213963553756674672083"
@@ -10437,35 +10437,35 @@ static const struct test tests[] = {
"182358152808745703724362178773168996492870519432472065091133"
"11767578124e-4966",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-16496, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16496, false, true),
TEST ("3.2375875597190125554622194791138232762497846690173405048449"
"421945985197700620596855088357456383249701279390707384240598"
"382936099431912710233425550359863089915213963553756674672083"
@@ -10660,35 +10660,35 @@ static const struct test tests[] = {
"182358152808745703724362178773168996492870519432472065091133"
"11767578125e-4966",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-16496, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16496, false, true),
TEST ("3.2375875597190125554622194791138232762497846690173405048449"
"421945985197700620596855088357456383249701279390707384240598"
"382936099431912710233425550359863089915213963553756674672083"
@@ -10883,35 +10883,35 @@ static const struct test tests[] = {
"182358152808745703724362178773168996492870519432472065091133"
"11767578126e-4966",
false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-152, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x8p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-16448, false,
- false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x0p+0, false,
- 0x4p-1076, false,
- false,
- 0x0p+0, false,
- 0x4p-16496, false,
- 0x0p+0, false,
- 0x4p-16496, false),
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16448, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x4p-16496, false, true,
+ 0x0p+0, false, true,
+ 0x4p-16496, false, true),
TEST ("-3.237587559719012555462219479113823276249784669017340504844"
"942194598519770062059685508835745638324970127939070738424059"
"838293609943191271023342555035986308991521396355375667467208"
@@ -11106,35 +11106,35 @@ static const struct test tests[] = {
"218235815280874570372436217877316899649287051943247206509113"
"311767578124e-4966",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16496, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16496, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true),
TEST ("-3.237587559719012555462219479113823276249784669017340504844"
"942194598519770062059685508835745638324970127939070738424059"
"838293609943191271023342555035986308991521396355375667467208"
@@ -11329,35 +11329,35 @@ static const struct test tests[] = {
"218235815280874570372436217877316899649287051943247206509113"
"311767578125e-4966",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16496, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16496, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true),
TEST ("-3.237587559719012555462219479113823276249784669017340504844"
"942194598519770062059685508835745638324970127939070738424059"
"838293609943191271023342555035986308991521396355375667467208"
@@ -11552,66 +11552,66 @@ static const struct test tests[] = {
"218235815280874570372436217877316899649287051943247206509113"
"311767578126e-4966",
false,
- -0x8p-152, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x8p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16448, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-1076, false,
- -0x0p+0, false,
- -0x0p+0, false,
- -0x0p+0, false,
- false,
- -0x4p-16496, false,
- -0x4p-16496, false,
- -0x0p+0, false,
- -0x0p+0, false),
+ -0x8p-152, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x8p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16448, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-1076, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true,
+ false,
+ -0x4p-16496, false, true,
+ -0x4p-16496, false, true,
+ -0x0p+0, false, true,
+ -0x0p+0, false, true),
TEST ("340282366920938463463374607431768211455",
false,
- 0xf.fffffp+124, false,
- INF, true,
- 0xf.fffffp+124, false,
- INF, true,
- false,
- 0xf.ffffffffffff8p+124, false,
- 0x1p+128, false,
- 0xf.ffffffffffff8p+124, false,
- 0x1p+128, false,
- false,
- 0xf.fffffffffffffffp+124, false,
- 0x1p+128, false,
- 0xf.fffffffffffffffp+124, false,
- 0x1p+128, false,
- false,
- 0xf.fffffffffffffffp+124, false,
- 0x1p+128, false,
- 0xf.fffffffffffffffp+124, false,
- 0x1p+128, false,
- false,
- 0xf.fffffffffffffffffffffffffcp+124, false,
- 0x1p+128, false,
- 0xf.fffffffffffffffffffffffffcp+124, false,
- 0x1p+128, false,
- false,
- 0xf.fffffffffffffffffffffffffff8p+124, false,
- 0x1p+128, false,
- 0xf.fffffffffffffffffffffffffff8p+124, false,
- 0x1p+128, false),
+ 0xf.fffffp+124, false, false,
+ INF, true, false,
+ 0xf.fffffp+124, false, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+124, false, false,
+ 0x1p+128, false, false,
+ 0xf.ffffffffffff8p+124, false, false,
+ 0x1p+128, false, false,
+ false,
+ 0xf.fffffffffffffffp+124, false, false,
+ 0x1p+128, false, false,
+ 0xf.fffffffffffffffp+124, false, false,
+ 0x1p+128, false, false,
+ false,
+ 0xf.fffffffffffffffp+124, false, false,
+ 0x1p+128, false, false,
+ 0xf.fffffffffffffffp+124, false, false,
+ 0x1p+128, false, false,
+ false,
+ 0xf.fffffffffffffffffffffffffcp+124, false, false,
+ 0x1p+128, false, false,
+ 0xf.fffffffffffffffffffffffffcp+124, false, false,
+ 0x1p+128, false, false,
+ false,
+ 0xf.fffffffffffffffffffffffffff8p+124, false, false,
+ 0x1p+128, false, false,
+ 0xf.fffffffffffffffffffffffffff8p+124, false, false,
+ 0x1p+128, false, false),
TEST ("179769313486231590772930519078902473361797697894230657273430"
"081157732675805500963132708477322407536021120113879871393357"
"658789768814416622492847430639474124377767893424865485276302"
@@ -11619,35 +11619,35 @@ static const struct test tests[] = {
"540827237163350510684586298239947245938479716304835356329624"
"224137215",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, false,
- INF, true,
- 0xf.ffffffffffff8p+1020, false,
- INF, true,
- false,
- 0xf.fffffffffffffffp+1020, false,
- 0x1p+1024, false,
- 0xf.fffffffffffffffp+1020, false,
- 0x1p+1024, false,
- false,
- 0xf.fffffffffffffffp+1020, false,
- 0x1p+1024, false,
- 0xf.fffffffffffffffp+1020, false,
- 0x1p+1024, false,
- false,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffff8p+1020, false,
- 0x1p+1024, false,
- 0xf.fffffffffffffffffffffffffff8p+1020, false,
- 0x1p+1024, false),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, false, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+1020, false, false,
+ 0x1p+1024, false, false,
+ 0xf.fffffffffffffffp+1020, false, false,
+ 0x1p+1024, false, false,
+ false,
+ 0xf.fffffffffffffffp+1020, false, false,
+ 0x1p+1024, false, false,
+ 0xf.fffffffffffffffp+1020, false, false,
+ 0x1p+1024, false, false,
+ false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffff8p+1020, false, false,
+ 0x1p+1024, false, false,
+ 0xf.fffffffffffffffffffffffffff8p+1020, false, false,
+ 0x1p+1024, false, false),
TEST ("118973149535723176508575932662800713076344468709651023747267"
"482123326135818048368690448859547261203991511543748483930925"
"889766738130868742627452469834156500608087163436600489752214"
@@ -11732,66 +11732,66 @@ static const struct test tests[] = {
"047398248889922809181821393428829567971736994315246044702729"
"0669964066815",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- 0xf.fffffffffffffffp+16380, false,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- false,
- 0xf.fffffffffffffffffffffffffff8p+16380, false,
- INF, true,
- 0xf.fffffffffffffffffffffffffff8p+16380, false,
- INF, true),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffp+16380, false, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ false,
+ 0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ INF, true, false),
TEST ("-340282366920938463463374607431768211455",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, false,
- -0xf.fffffp+124, false,
- false,
- -0x1p+128, false,
- -0x1p+128, false,
- -0xf.ffffffffffff8p+124, false,
- -0xf.ffffffffffff8p+124, false,
- false,
- -0x1p+128, false,
- -0x1p+128, false,
- -0xf.fffffffffffffffp+124, false,
- -0xf.fffffffffffffffp+124, false,
- false,
- -0x1p+128, false,
- -0x1p+128, false,
- -0xf.fffffffffffffffp+124, false,
- -0xf.fffffffffffffffp+124, false,
- false,
- -0x1p+128, false,
- -0x1p+128, false,
- -0xf.fffffffffffffffffffffffffcp+124, false,
- -0xf.fffffffffffffffffffffffffcp+124, false,
- false,
- -0x1p+128, false,
- -0x1p+128, false,
- -0xf.fffffffffffffffffffffffffff8p+124, false,
- -0xf.fffffffffffffffffffffffffff8p+124, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, false, false,
+ -0xf.fffffp+124, false, false,
+ false,
+ -0x1p+128, false, false,
+ -0x1p+128, false, false,
+ -0xf.ffffffffffff8p+124, false, false,
+ -0xf.ffffffffffff8p+124, false, false,
+ false,
+ -0x1p+128, false, false,
+ -0x1p+128, false, false,
+ -0xf.fffffffffffffffp+124, false, false,
+ -0xf.fffffffffffffffp+124, false, false,
+ false,
+ -0x1p+128, false, false,
+ -0x1p+128, false, false,
+ -0xf.fffffffffffffffp+124, false, false,
+ -0xf.fffffffffffffffp+124, false, false,
+ false,
+ -0x1p+128, false, false,
+ -0x1p+128, false, false,
+ -0xf.fffffffffffffffffffffffffcp+124, false, false,
+ -0xf.fffffffffffffffffffffffffcp+124, false, false,
+ false,
+ -0x1p+128, false, false,
+ -0x1p+128, false, false,
+ -0xf.fffffffffffffffffffffffffff8p+124, false, false,
+ -0xf.fffffffffffffffffffffffffff8p+124, false, false),
TEST ("-17976931348623159077293051907890247336179769789423065727343"
"008115773267580550096313270847732240753602112011387987139335"
"765878976881441662249284743063947412437776789342486548527630"
@@ -11799,35 +11799,35 @@ static const struct test tests[] = {
"054082723716335051068458629823994724593847971630483535632962"
"4224137215",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.ffffffffffff8p+1020, false,
- -0xf.ffffffffffff8p+1020, false,
- false,
- -0x1p+1024, false,
- -0x1p+1024, false,
- -0xf.fffffffffffffffp+1020, false,
- -0xf.fffffffffffffffp+1020, false,
- false,
- -0x1p+1024, false,
- -0x1p+1024, false,
- -0xf.fffffffffffffffp+1020, false,
- -0xf.fffffffffffffffp+1020, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- false,
- -0x1p+1024, false,
- -0x1p+1024, false,
- -0xf.fffffffffffffffffffffffffff8p+1020, false,
- -0xf.fffffffffffffffffffffffffff8p+1020, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, false, false,
+ -0xf.ffffffffffff8p+1020, false, false,
+ false,
+ -0x1p+1024, false, false,
+ -0x1p+1024, false, false,
+ -0xf.fffffffffffffffp+1020, false, false,
+ -0xf.fffffffffffffffp+1020, false, false,
+ false,
+ -0x1p+1024, false, false,
+ -0x1p+1024, false, false,
+ -0xf.fffffffffffffffp+1020, false, false,
+ -0xf.fffffffffffffffp+1020, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ false,
+ -0x1p+1024, false, false,
+ -0x1p+1024, false, false,
+ -0xf.fffffffffffffffffffffffffff8p+1020, false, false,
+ -0xf.fffffffffffffffffffffffffff8p+1020, false, false),
TEST ("-11897314953572317650857593266280071307634446870965102374726"
"748212332613581804836869044885954726120399151154374848393092"
"588976673813086874262745246983415650060808716343660048975221"
@@ -11912,3529 +11912,3901 @@ static const struct test tests[] = {
"904739824888992280918182139342882956797173699431524604470272"
"90669964066815",
false,
- -INF, true,
- -INF, true,
- -0xf.fffffp+124, true,
- -0xf.fffffp+124, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.ffffffffffff8p+1020, true,
- -0xf.ffffffffffff8p+1020, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffp+16380, false,
- -0xf.fffffffffffffffp+16380, false,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- -0xf.fffffffffffffffffffffffffcp+1020, true,
- false,
- -INF, true,
- -INF, true,
- -0xf.fffffffffffffffffffffffffff8p+16380, false,
- -0xf.fffffffffffffffffffffffffff8p+16380, false),
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffp+124, true, false,
+ -0xf.fffffp+124, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ -0xf.ffffffffffff8p+1020, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ -0xf.fffffffffffffffp+16380, false, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ -0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ false,
+ -INF, true, false,
+ -INF, true, false,
+ -0xf.fffffffffffffffffffffffffff8p+16380, false, false,
+ -0xf.fffffffffffffffffffffffffff8p+16380, false, false),
TEST ("+0x.80000000000000000000000000000001p1025",
false,
- 0xf.fffffp+124, true,
- INF, true,
- 0xf.fffffp+124, true,
- INF, true,
- false,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- 0xf.ffffffffffff8p+1020, true,
- INF, true,
- false,
- 0x1p+1024, false,
- 0x1p+1024, false,
- 0x1p+1024, false,
- 0x1.0000000000000002p+1024, false,
- false,
- 0x1p+1024, false,
- 0x1p+1024, false,
- 0x1p+1024, false,
- 0x1.0000000000000002p+1024, false,
- false,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- 0xf.fffffffffffffffffffffffffcp+1020, true,
- INF, true,
- false,
- 0x1p+1024, false,
- 0x1p+1024, false,
- 0x1p+1024, false,
- 0x1.0000000000000000000000000001p+1024, false),
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ 0xf.fffffp+124, true, false,
+ INF, true, false,
+ false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ 0xf.ffffffffffff8p+1020, true, false,
+ INF, true, false,
+ false,
+ 0x1p+1024, false, false,
+ 0x1p+1024, false, false,
+ 0x1p+1024, false, false,
+ 0x1.0000000000000002p+1024, false, false,
+ false,
+ 0x1p+1024, false, false,
+ 0x1p+1024, false, false,
+ 0x1p+1024, false, false,
+ 0x1.0000000000000002p+1024, false, false,
+ false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ 0xf.fffffffffffffffffffffffffcp+1020, true, false,
+ INF, true, false,
+ false,
+ 0x1p+1024, false, false,
+ 0x1p+1024, false, false,
+ 0x1p+1024, false, false,
+ 0x1.0000000000000000000000000001p+1024, false, false),
TEST ("1.5",
true,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- true,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- true,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- true,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- true,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- true,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false,
- 0x1.8p+0, false),
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ true,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ true,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ true,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ true,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ true,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false,
+ 0x1.8p+0, false, false),
TEST ("1.25",
true,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- true,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- true,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- true,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- true,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- true,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false,
- 0x1.4p+0, false),
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ true,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ true,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ true,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ true,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ true,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false,
+ 0x1.4p+0, false, false),
TEST ("1.125",
true,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- true,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- true,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- true,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- true,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- true,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false,
- 0x1.2p+0, false),
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ true,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ true,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ true,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ true,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ true,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false,
+ 0x1.2p+0, false, false),
TEST ("1.0625",
true,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- true,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- true,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- true,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- true,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- true,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false,
- 0x1.1p+0, false),
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ true,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ true,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ true,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ true,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ true,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false,
+ 0x1.1p+0, false, false),
TEST ("1.03125",
true,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- true,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- true,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- true,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- true,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- true,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false,
- 0x1.08p+0, false),
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ true,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ true,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ true,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ true,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ true,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false,
+ 0x1.08p+0, false, false),
TEST ("1.015625",
true,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- true,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- true,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- true,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- true,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- true,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false,
- 0x1.04p+0, false),
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ true,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ true,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ true,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ true,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ true,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false,
+ 0x1.04p+0, false, false),
TEST ("1.0078125",
true,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- true,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- true,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- true,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- true,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- true,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false,
- 0x1.02p+0, false),
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ true,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ true,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ true,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ true,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ true,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false,
+ 0x1.02p+0, false, false),
TEST ("1.00390625",
true,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- true,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- true,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- true,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- true,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- true,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false,
- 0x1.01p+0, false),
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ true,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ true,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ true,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ true,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ true,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false,
+ 0x1.01p+0, false, false),
TEST ("1.001953125",
true,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- true,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- true,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- true,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- true,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- true,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false,
- 0x1.008p+0, false),
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ true,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ true,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ true,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ true,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ true,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false,
+ 0x1.008p+0, false, false),
TEST ("1.0009765625",
true,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- true,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- true,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- true,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- true,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- true,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false,
- 0x1.004p+0, false),
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ true,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ true,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ true,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ true,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ true,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false,
+ 0x1.004p+0, false, false),
TEST ("1.00048828125",
true,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- true,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- true,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- true,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- true,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- true,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false,
- 0x1.002p+0, false),
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ true,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ true,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ true,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ true,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ true,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false,
+ 0x1.002p+0, false, false),
TEST ("1.000244140625",
true,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- true,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- true,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- true,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- true,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- true,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false,
- 0x1.001p+0, false),
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ true,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ true,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ true,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ true,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ true,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false,
+ 0x1.001p+0, false, false),
TEST ("1.0001220703125",
true,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- true,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- true,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- true,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- true,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- true,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false,
- 0x1.0008p+0, false),
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ true,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ true,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ true,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ true,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ true,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false,
+ 0x1.0008p+0, false, false),
TEST ("1.00006103515625",
true,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- true,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- true,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- true,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- true,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- true,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false,
- 0x1.0004p+0, false),
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ true,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ true,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ true,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ true,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ true,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false,
+ 0x1.0004p+0, false, false),
TEST ("1.000030517578125",
true,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- true,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- true,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- true,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- true,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- true,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false,
- 0x1.0002p+0, false),
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ true,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ true,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ true,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ true,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ true,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false,
+ 0x1.0002p+0, false, false),
TEST ("1.0000152587890625",
true,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- true,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- true,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- true,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- true,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- true,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false,
- 0x1.0001p+0, false),
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ true,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ true,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ true,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ true,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ true,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false,
+ 0x1.0001p+0, false, false),
TEST ("1.00000762939453125",
true,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- true,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- true,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- true,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- true,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- true,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false,
- 0x1.00008p+0, false),
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ true,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ true,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ true,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ true,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ true,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false,
+ 0x1.00008p+0, false, false),
TEST ("1.000003814697265625",
true,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- true,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- true,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- true,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- true,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- true,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false,
- 0x1.00004p+0, false),
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ true,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ true,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ true,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ true,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ true,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false,
+ 0x1.00004p+0, false, false),
TEST ("1.0000019073486328125",
true,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- true,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- true,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- true,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- true,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- true,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false,
- 0x1.00002p+0, false),
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ true,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ true,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ true,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ true,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ true,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false,
+ 0x1.00002p+0, false, false),
TEST ("1.00000095367431640625",
true,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- true,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- true,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- true,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- true,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- true,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false,
- 0x1.00001p+0, false),
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ true,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ true,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ true,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ true,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ true,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false,
+ 0x1.00001p+0, false, false),
TEST ("1.000000476837158203125",
true,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- true,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- true,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- true,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- true,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- true,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false,
- 0x1.000008p+0, false),
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ true,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ true,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ true,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ true,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ true,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false,
+ 0x1.000008p+0, false, false),
TEST ("1.0000000298023223876953125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- true,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- true,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- true,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- true,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false,
- 0x1.0000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ true,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ true,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ true,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ true,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false,
+ 0x1.0000008p+0, false, false),
TEST ("1.00000001490116119384765625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- true,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- true,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- true,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- true,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false,
- 0x1.0000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ true,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ true,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ true,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ true,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false,
+ 0x1.0000004p+0, false, false),
TEST ("1.000000007450580596923828125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- true,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- true,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- true,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- true,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false,
- 0x1.0000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ true,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ true,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ true,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ true,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false,
+ 0x1.0000002p+0, false, false),
TEST ("1.0000000037252902984619140625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- true,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- true,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- true,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- true,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false,
- 0x1.0000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ true,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ true,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ true,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ true,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false,
+ 0x1.0000001p+0, false, false),
TEST ("1.00000000186264514923095703125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- true,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- true,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- true,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- true,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false,
- 0x1.00000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ true,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ true,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ true,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ true,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false,
+ 0x1.00000008p+0, false, false),
TEST ("1.000000000931322574615478515625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- true,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- true,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- true,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- true,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false,
- 0x1.00000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ true,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ true,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ true,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ true,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false,
+ 0x1.00000004p+0, false, false),
TEST ("1.0000000004656612873077392578125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- true,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- true,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- true,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- true,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false,
- 0x1.00000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ true,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ true,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ true,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ true,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false,
+ 0x1.00000002p+0, false, false),
TEST ("1.00000000023283064365386962890625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- true,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- true,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- true,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- true,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false,
- 0x1.00000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ true,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ true,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ true,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ true,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false,
+ 0x1.00000001p+0, false, false),
TEST ("1.000000000116415321826934814453125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- true,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- true,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- true,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- true,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false,
- 0x1.000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ true,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ true,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ true,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ true,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false,
+ 0x1.000000008p+0, false, false),
TEST ("1.0000000000582076609134674072265625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- true,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- true,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- true,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- true,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false,
- 0x1.000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ true,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ true,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ true,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ true,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false,
+ 0x1.000000004p+0, false, false),
TEST ("1.00000000002910383045673370361328125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- true,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- true,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- true,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- true,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false,
- 0x1.000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ true,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ true,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ true,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ true,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false,
+ 0x1.000000002p+0, false, false),
TEST ("1.000000000014551915228366851806640625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- true,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- true,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- true,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- true,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false,
- 0x1.000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ true,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ true,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ true,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ true,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false,
+ 0x1.000000001p+0, false, false),
TEST ("1.0000000000072759576141834259033203125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- true,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- true,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- true,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- true,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false,
- 0x1.0000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ true,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ true,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ true,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ true,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false,
+ 0x1.0000000008p+0, false, false),
TEST ("1.00000000000363797880709171295166015625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- true,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- true,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- true,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- true,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false,
- 0x1.0000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ true,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ true,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ true,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ true,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false,
+ 0x1.0000000004p+0, false, false),
TEST ("1.000000000001818989403545856475830078125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- true,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- true,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- true,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- true,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false,
- 0x1.0000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ true,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ true,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ true,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ true,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false,
+ 0x1.0000000002p+0, false, false),
TEST ("1.0000000000009094947017729282379150390625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- true,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- true,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- true,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- true,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false,
- 0x1.0000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ true,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ true,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ true,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ true,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false,
+ 0x1.0000000001p+0, false, false),
TEST ("1.00000000000045474735088646411895751953125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- true,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- true,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- true,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- true,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false,
- 0x1.00000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ true,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ true,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ true,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ true,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false,
+ 0x1.00000000008p+0, false, false),
TEST ("1.000000000000227373675443232059478759765625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- true,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- true,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- true,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- true,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false,
- 0x1.00000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ true,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ true,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ true,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ true,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false,
+ 0x1.00000000004p+0, false, false),
TEST ("1.0000000000001136868377216160297393798828125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- true,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- true,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- true,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- true,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false,
- 0x1.00000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ true,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ true,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ true,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ true,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false,
+ 0x1.00000000002p+0, false, false),
TEST ("1.00000000000005684341886080801486968994140625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- true,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- true,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- true,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- true,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false,
- 0x1.00000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ true,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ true,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ true,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ true,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false,
+ 0x1.00000000001p+0, false, false),
TEST ("1.000000000000028421709430404007434844970703125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- true,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- true,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- true,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- true,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false,
- 0x1.000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ true,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ true,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ true,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ true,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false,
+ 0x1.000000000008p+0, false, false),
TEST ("1.0000000000000142108547152020037174224853515625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- true,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- true,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- true,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- true,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false,
- 0x1.000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ true,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ true,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ true,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ true,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false,
+ 0x1.000000000004p+0, false, false),
TEST ("1.00000000000000710542735760100185871124267578125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- true,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- true,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- true,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- true,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false,
- 0x1.000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ true,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ true,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ true,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ true,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false,
+ 0x1.000000000002p+0, false, false),
TEST ("1.000000000000003552713678800500929355621337890625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- true,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- true,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- true,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- true,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false,
- 0x1.000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ true,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ true,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ true,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ true,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false,
+ 0x1.000000000001p+0, false, false),
TEST ("1.0000000000000017763568394002504646778106689453125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- true,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- true,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- true,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- true,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false,
- 0x1.0000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ true,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ true,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ true,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ true,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false,
+ 0x1.0000000000008p+0, false, false),
TEST ("1.00000000000000088817841970012523233890533447265625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- true,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- true,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- true,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- true,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false,
- 0x1.0000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ true,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ true,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ true,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ true,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false,
+ 0x1.0000000000004p+0, false, false),
TEST ("1.000000000000000444089209850062616169452667236328125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- true,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- true,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- true,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- true,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false,
- 0x1.0000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ true,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ true,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ true,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ true,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false,
+ 0x1.0000000000002p+0, false, false),
TEST ("1.0000000000000002220446049250313080847263336181640625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- true,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false,
- 0x1.0000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ true,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ 0x1.0000000000001p+0, false, false),
TEST ("1.00000000000000011102230246251565404236316680908203125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- true,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- true,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- true,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false,
- 0x1.00000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ true,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ true,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ true,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false,
+ 0x1.00000000000008p+0, false, false),
TEST ("1.000000000000000055511151231257827021181583404541015625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- true,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- true,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- true,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false,
- 0x1.00000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ true,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ true,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ true,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false,
+ 0x1.00000000000004p+0, false, false),
TEST ("1.0000000000000000277555756156289135105907917022705078125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- true,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- true,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- true,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false,
- 0x1.00000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ true,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ true,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ true,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false,
+ 0x1.00000000000002p+0, false, false),
TEST ("1.00000000000000001387778780781445675529539585113525390625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- true,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- true,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- true,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false,
- 0x1.00000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ true,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ true,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ true,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false,
+ 0x1.00000000000001p+0, false, false),
TEST ("1.000000000000000006938893903907228377647697925567626953125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- true,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- true,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- true,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false,
- 0x1.000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ true,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ true,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ true,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false,
+ 0x1.000000000000008p+0, false, false),
TEST ("1.0000000000000000034694469519536141888238489627838134765625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- true,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- true,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- true,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false,
- 0x1.000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ true,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ true,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ true,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false,
+ 0x1.000000000000004p+0, false, false),
TEST ("1.0000000000000000017347234759768070944119244813919067382812"
"5",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- true,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- true,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- true,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false,
- 0x1.000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false,
+ 0x1.000000000000002p+0, false, false),
TEST ("1.0000000000000000008673617379884035472059622406959533691406"
"25",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- true,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- true,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- true,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false,
- 0x1.000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ true,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ true,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ true,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false,
+ 0x1.000000000000001p+0, false, false),
TEST ("1.0000000000000000004336808689942017736029811203479766845703"
"125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- true,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- true,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- true,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false,
- 0x1.0000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ true,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ true,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ true,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false,
+ 0x1.0000000000000008p+0, false, false),
TEST ("1.0000000000000000002168404344971008868014905601739883422851"
"5625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- true,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- true,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- true,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false,
- 0x1.0000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ true,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ true,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ true,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false,
+ 0x1.0000000000000004p+0, false, false),
TEST ("1.0000000000000000001084202172485504434007452800869941711425"
"78125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- true,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false,
- 0x1.0000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ true,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ 0x1.0000000000000002p+0, false, false),
TEST ("1.0000000000000000000542101086242752217003726400434970855712"
"890625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000001p+0, false,
- 0x1.0000000000000001p+0, false,
- 0x1.0000000000000001p+0, false,
- 0x1.0000000000000001p+0, false,
- true,
- 0x1.0000000000000001p+0, false,
- 0x1.0000000000000001p+0, false,
- 0x1.0000000000000001p+0, false,
- 0x1.0000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000001p+0, false, false,
+ 0x1.0000000000000001p+0, false, false,
+ 0x1.0000000000000001p+0, false, false,
+ 0x1.0000000000000001p+0, false, false,
+ true,
+ 0x1.0000000000000001p+0, false, false,
+ 0x1.0000000000000001p+0, false, false,
+ 0x1.0000000000000001p+0, false, false,
+ 0x1.0000000000000001p+0, false, false),
TEST ("1.0000000000000000000271050543121376108501863200217485427856"
"4453125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000008p+0, false,
- 0x1.00000000000000008p+0, false,
- 0x1.00000000000000008p+0, false,
- 0x1.00000000000000008p+0, false,
- true,
- 0x1.00000000000000008p+0, false,
- 0x1.00000000000000008p+0, false,
- 0x1.00000000000000008p+0, false,
- 0x1.00000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000008p+0, false, false,
+ 0x1.00000000000000008p+0, false, false,
+ 0x1.00000000000000008p+0, false, false,
+ 0x1.00000000000000008p+0, false, false,
+ true,
+ 0x1.00000000000000008p+0, false, false,
+ 0x1.00000000000000008p+0, false, false,
+ 0x1.00000000000000008p+0, false, false,
+ 0x1.00000000000000008p+0, false, false),
TEST ("1.0000000000000000000135525271560688054250931600108742713928"
"22265625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000004p+0, false,
- 0x1.00000000000000004p+0, false,
- 0x1.00000000000000004p+0, false,
- 0x1.00000000000000004p+0, false,
- true,
- 0x1.00000000000000004p+0, false,
- 0x1.00000000000000004p+0, false,
- 0x1.00000000000000004p+0, false,
- 0x1.00000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000004p+0, false, false,
+ 0x1.00000000000000004p+0, false, false,
+ 0x1.00000000000000004p+0, false, false,
+ 0x1.00000000000000004p+0, false, false,
+ true,
+ 0x1.00000000000000004p+0, false, false,
+ 0x1.00000000000000004p+0, false, false,
+ 0x1.00000000000000004p+0, false, false,
+ 0x1.00000000000000004p+0, false, false),
TEST ("1.0000000000000000000067762635780344027125465800054371356964"
"111328125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000002p+0, false,
- 0x1.00000000000000002p+0, false,
- 0x1.00000000000000002p+0, false,
- 0x1.00000000000000002p+0, false,
- true,
- 0x1.00000000000000002p+0, false,
- 0x1.00000000000000002p+0, false,
- 0x1.00000000000000002p+0, false,
- 0x1.00000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000002p+0, false, false,
+ 0x1.00000000000000002p+0, false, false,
+ 0x1.00000000000000002p+0, false, false,
+ 0x1.00000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000002p+0, false, false,
+ 0x1.00000000000000002p+0, false, false,
+ 0x1.00000000000000002p+0, false, false,
+ 0x1.00000000000000002p+0, false, false),
TEST ("1.0000000000000000000033881317890172013562732900027185678482"
"0556640625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000001p+0, false,
- 0x1.00000000000000001p+0, false,
- 0x1.00000000000000001p+0, false,
- 0x1.00000000000000001p+0, false,
- true,
- 0x1.00000000000000001p+0, false,
- 0x1.00000000000000001p+0, false,
- 0x1.00000000000000001p+0, false,
- 0x1.00000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000001p+0, false, false,
+ 0x1.00000000000000001p+0, false, false,
+ 0x1.00000000000000001p+0, false, false,
+ 0x1.00000000000000001p+0, false, false,
+ true,
+ 0x1.00000000000000001p+0, false, false,
+ 0x1.00000000000000001p+0, false, false,
+ 0x1.00000000000000001p+0, false, false,
+ 0x1.00000000000000001p+0, false, false),
TEST ("1.0000000000000000000016940658945086006781366450013592839241"
"02783203125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000008p+0, false,
- 0x1.000000000000000008p+0, false,
- 0x1.000000000000000008p+0, false,
- 0x1.000000000000000008p+0, false,
- true,
- 0x1.000000000000000008p+0, false,
- 0x1.000000000000000008p+0, false,
- 0x1.000000000000000008p+0, false,
- 0x1.000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000008p+0, false, false,
+ 0x1.000000000000000008p+0, false, false,
+ 0x1.000000000000000008p+0, false, false,
+ 0x1.000000000000000008p+0, false, false,
+ true,
+ 0x1.000000000000000008p+0, false, false,
+ 0x1.000000000000000008p+0, false, false,
+ 0x1.000000000000000008p+0, false, false,
+ 0x1.000000000000000008p+0, false, false),
TEST ("1.0000000000000000000008470329472543003390683225006796419620"
"513916015625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000004p+0, false,
- 0x1.000000000000000004p+0, false,
- 0x1.000000000000000004p+0, false,
- 0x1.000000000000000004p+0, false,
- true,
- 0x1.000000000000000004p+0, false,
- 0x1.000000000000000004p+0, false,
- 0x1.000000000000000004p+0, false,
- 0x1.000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000004p+0, false, false,
+ 0x1.000000000000000004p+0, false, false,
+ 0x1.000000000000000004p+0, false, false,
+ 0x1.000000000000000004p+0, false, false,
+ true,
+ 0x1.000000000000000004p+0, false, false,
+ 0x1.000000000000000004p+0, false, false,
+ 0x1.000000000000000004p+0, false, false,
+ 0x1.000000000000000004p+0, false, false),
TEST ("1.0000000000000000000004235164736271501695341612503398209810"
"2569580078125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000002p+0, false,
- 0x1.000000000000000002p+0, false,
- 0x1.000000000000000002p+0, false,
- 0x1.000000000000000002p+0, false,
- true,
- 0x1.000000000000000002p+0, false,
- 0x1.000000000000000002p+0, false,
- 0x1.000000000000000002p+0, false,
- 0x1.000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000002p+0, false, false,
+ 0x1.000000000000000002p+0, false, false,
+ 0x1.000000000000000002p+0, false, false,
+ 0x1.000000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000002p+0, false, false,
+ 0x1.000000000000000002p+0, false, false,
+ 0x1.000000000000000002p+0, false, false,
+ 0x1.000000000000000002p+0, false, false),
TEST ("1.0000000000000000000002117582368135750847670806251699104905"
"12847900390625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000001p+0, false,
- 0x1.000000000000000001p+0, false,
- 0x1.000000000000000001p+0, false,
- 0x1.000000000000000001p+0, false,
- true,
- 0x1.000000000000000001p+0, false,
- 0x1.000000000000000001p+0, false,
- 0x1.000000000000000001p+0, false,
- 0x1.000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000001p+0, false, false,
+ 0x1.000000000000000001p+0, false, false,
+ 0x1.000000000000000001p+0, false, false,
+ 0x1.000000000000000001p+0, false, false,
+ true,
+ 0x1.000000000000000001p+0, false, false,
+ 0x1.000000000000000001p+0, false, false,
+ 0x1.000000000000000001p+0, false, false,
+ 0x1.000000000000000001p+0, false, false),
TEST ("1.0000000000000000000001058791184067875423835403125849552452"
"564239501953125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000008p+0, false,
- 0x1.0000000000000000008p+0, false,
- 0x1.0000000000000000008p+0, false,
- 0x1.0000000000000000008p+0, false,
- true,
- 0x1.0000000000000000008p+0, false,
- 0x1.0000000000000000008p+0, false,
- 0x1.0000000000000000008p+0, false,
- 0x1.0000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000008p+0, false, false,
+ 0x1.0000000000000000008p+0, false, false,
+ 0x1.0000000000000000008p+0, false, false,
+ 0x1.0000000000000000008p+0, false, false,
+ true,
+ 0x1.0000000000000000008p+0, false, false,
+ 0x1.0000000000000000008p+0, false, false,
+ 0x1.0000000000000000008p+0, false, false,
+ 0x1.0000000000000000008p+0, false, false),
TEST ("1.0000000000000000000000529395592033937711917701562924776226"
"2821197509765625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000004p+0, false,
- 0x1.0000000000000000004p+0, false,
- 0x1.0000000000000000004p+0, false,
- 0x1.0000000000000000004p+0, false,
- true,
- 0x1.0000000000000000004p+0, false,
- 0x1.0000000000000000004p+0, false,
- 0x1.0000000000000000004p+0, false,
- 0x1.0000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000004p+0, false, false,
+ 0x1.0000000000000000004p+0, false, false,
+ 0x1.0000000000000000004p+0, false, false,
+ 0x1.0000000000000000004p+0, false, false,
+ true,
+ 0x1.0000000000000000004p+0, false, false,
+ 0x1.0000000000000000004p+0, false, false,
+ 0x1.0000000000000000004p+0, false, false,
+ 0x1.0000000000000000004p+0, false, false),
TEST ("1.0000000000000000000000264697796016968855958850781462388113"
"14105987548828125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000002p+0, false,
- 0x1.0000000000000000002p+0, false,
- 0x1.0000000000000000002p+0, false,
- 0x1.0000000000000000002p+0, false,
- true,
- 0x1.0000000000000000002p+0, false,
- 0x1.0000000000000000002p+0, false,
- 0x1.0000000000000000002p+0, false,
- 0x1.0000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000002p+0, false, false,
+ 0x1.0000000000000000002p+0, false, false,
+ 0x1.0000000000000000002p+0, false, false,
+ 0x1.0000000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000002p+0, false, false,
+ 0x1.0000000000000000002p+0, false, false,
+ 0x1.0000000000000000002p+0, false, false,
+ 0x1.0000000000000000002p+0, false, false),
TEST ("1.0000000000000000000000132348898008484427979425390731194056"
"570529937744140625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000001p+0, false,
- 0x1.0000000000000000001p+0, false,
- 0x1.0000000000000000001p+0, false,
- 0x1.0000000000000000001p+0, false,
- true,
- 0x1.0000000000000000001p+0, false,
- 0x1.0000000000000000001p+0, false,
- 0x1.0000000000000000001p+0, false,
- 0x1.0000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000001p+0, false, false,
+ 0x1.0000000000000000001p+0, false, false,
+ 0x1.0000000000000000001p+0, false, false,
+ 0x1.0000000000000000001p+0, false, false,
+ true,
+ 0x1.0000000000000000001p+0, false, false,
+ 0x1.0000000000000000001p+0, false, false,
+ 0x1.0000000000000000001p+0, false, false,
+ 0x1.0000000000000000001p+0, false, false),
TEST ("1.0000000000000000000000066174449004242213989712695365597028"
"2852649688720703125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000008p+0, false,
- 0x1.00000000000000000008p+0, false,
- 0x1.00000000000000000008p+0, false,
- 0x1.00000000000000000008p+0, false,
- true,
- 0x1.00000000000000000008p+0, false,
- 0x1.00000000000000000008p+0, false,
- 0x1.00000000000000000008p+0, false,
- 0x1.00000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000008p+0, false, false,
+ 0x1.00000000000000000008p+0, false, false,
+ 0x1.00000000000000000008p+0, false, false,
+ 0x1.00000000000000000008p+0, false, false,
+ true,
+ 0x1.00000000000000000008p+0, false, false,
+ 0x1.00000000000000000008p+0, false, false,
+ 0x1.00000000000000000008p+0, false, false,
+ 0x1.00000000000000000008p+0, false, false),
TEST ("1.0000000000000000000000033087224502121106994856347682798514"
"14263248443603515625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000004p+0, false,
- 0x1.00000000000000000004p+0, false,
- 0x1.00000000000000000004p+0, false,
- 0x1.00000000000000000004p+0, false,
- true,
- 0x1.00000000000000000004p+0, false,
- 0x1.00000000000000000004p+0, false,
- 0x1.00000000000000000004p+0, false,
- 0x1.00000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000004p+0, false, false,
+ 0x1.00000000000000000004p+0, false, false,
+ 0x1.00000000000000000004p+0, false, false,
+ 0x1.00000000000000000004p+0, false, false,
+ true,
+ 0x1.00000000000000000004p+0, false, false,
+ 0x1.00000000000000000004p+0, false, false,
+ 0x1.00000000000000000004p+0, false, false,
+ 0x1.00000000000000000004p+0, false, false),
TEST ("1.0000000000000000000000016543612251060553497428173841399257"
"071316242218017578125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000002p+0, false,
- 0x1.00000000000000000002p+0, false,
- 0x1.00000000000000000002p+0, false,
- 0x1.00000000000000000002p+0, false,
- true,
- 0x1.00000000000000000002p+0, false,
- 0x1.00000000000000000002p+0, false,
- 0x1.00000000000000000002p+0, false,
- 0x1.00000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000002p+0, false, false,
+ 0x1.00000000000000000002p+0, false, false,
+ 0x1.00000000000000000002p+0, false, false,
+ 0x1.00000000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000002p+0, false, false,
+ 0x1.00000000000000000002p+0, false, false,
+ 0x1.00000000000000000002p+0, false, false,
+ 0x1.00000000000000000002p+0, false, false),
TEST ("1.0000000000000000000000008271806125530276748714086920699628"
"5356581211090087890625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000001p+0, false,
- 0x1.00000000000000000001p+0, false,
- 0x1.00000000000000000001p+0, false,
- 0x1.00000000000000000001p+0, false,
- true,
- 0x1.00000000000000000001p+0, false,
- 0x1.00000000000000000001p+0, false,
- 0x1.00000000000000000001p+0, false,
- 0x1.00000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000001p+0, false, false,
+ 0x1.00000000000000000001p+0, false, false,
+ 0x1.00000000000000000001p+0, false, false,
+ 0x1.00000000000000000001p+0, false, false,
+ true,
+ 0x1.00000000000000000001p+0, false, false,
+ 0x1.00000000000000000001p+0, false, false,
+ 0x1.00000000000000000001p+0, false, false,
+ 0x1.00000000000000000001p+0, false, false),
TEST ("1.0000000000000000000000004135903062765138374357043460349814"
"26782906055450439453125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000000008p+0, false,
- 0x1.000000000000000000008p+0, false,
- 0x1.000000000000000000008p+0, false,
- 0x1.000000000000000000008p+0, false,
- true,
- 0x1.000000000000000000008p+0, false,
- 0x1.000000000000000000008p+0, false,
- 0x1.000000000000000000008p+0, false,
- 0x1.000000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000008p+0, false, false,
+ 0x1.000000000000000000008p+0, false, false,
+ 0x1.000000000000000000008p+0, false, false,
+ 0x1.000000000000000000008p+0, false, false,
+ true,
+ 0x1.000000000000000000008p+0, false, false,
+ 0x1.000000000000000000008p+0, false, false,
+ 0x1.000000000000000000008p+0, false, false,
+ 0x1.000000000000000000008p+0, false, false),
TEST ("1.0000000000000000000000002067951531382569187178521730174907"
"133914530277252197265625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000000004p+0, false,
- 0x1.000000000000000000004p+0, false,
- 0x1.000000000000000000004p+0, false,
- 0x1.000000000000000000004p+0, false,
- true,
- 0x1.000000000000000000004p+0, false,
- 0x1.000000000000000000004p+0, false,
- 0x1.000000000000000000004p+0, false,
- 0x1.000000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000004p+0, false, false,
+ 0x1.000000000000000000004p+0, false, false,
+ 0x1.000000000000000000004p+0, false, false,
+ 0x1.000000000000000000004p+0, false, false,
+ true,
+ 0x1.000000000000000000004p+0, false, false,
+ 0x1.000000000000000000004p+0, false, false,
+ 0x1.000000000000000000004p+0, false, false,
+ 0x1.000000000000000000004p+0, false, false),
TEST ("1.0000000000000000000000001033975765691284593589260865087453"
"5669572651386260986328125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000000002p+0, false,
- 0x1.000000000000000000002p+0, false,
- 0x1.000000000000000000002p+0, false,
- 0x1.000000000000000000002p+0, false,
- true,
- 0x1.000000000000000000002p+0, false,
- 0x1.000000000000000000002p+0, false,
- 0x1.000000000000000000002p+0, false,
- 0x1.000000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000002p+0, false, false,
+ 0x1.000000000000000000002p+0, false, false,
+ 0x1.000000000000000000002p+0, false, false,
+ 0x1.000000000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000002p+0, false, false,
+ 0x1.000000000000000000002p+0, false, false,
+ 0x1.000000000000000000002p+0, false, false,
+ 0x1.000000000000000000002p+0, false, false),
TEST ("1.0000000000000000000000000516987882845642296794630432543726"
"78347863256931304931640625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000000001p+0, false,
- 0x1.000000000000000000001p+0, false,
- 0x1.000000000000000000001p+0, false,
- 0x1.000000000000000000001p+0, false,
- true,
- 0x1.000000000000000000001p+0, false,
- 0x1.000000000000000000001p+0, false,
- 0x1.000000000000000000001p+0, false,
- 0x1.000000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000001p+0, false, false,
+ 0x1.000000000000000000001p+0, false, false,
+ 0x1.000000000000000000001p+0, false, false,
+ 0x1.000000000000000000001p+0, false, false,
+ true,
+ 0x1.000000000000000000001p+0, false, false,
+ 0x1.000000000000000000001p+0, false, false,
+ 0x1.000000000000000000001p+0, false, false,
+ 0x1.000000000000000000001p+0, false, false),
TEST ("1.0000000000000000000000000258493941422821148397315216271863"
"391739316284656524658203125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000000008p+0, false,
- 0x1.0000000000000000000008p+0, false,
- 0x1.0000000000000000000008p+0, false,
- 0x1.0000000000000000000008p+0, false,
- true,
- 0x1.0000000000000000000008p+0, false,
- 0x1.0000000000000000000008p+0, false,
- 0x1.0000000000000000000008p+0, false,
- 0x1.0000000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000008p+0, false, false,
+ true,
+ 0x1.0000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000008p+0, false, false),
TEST ("1.0000000000000000000000000129246970711410574198657608135931"
"6958696581423282623291015625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000000004p+0, false,
- 0x1.0000000000000000000004p+0, false,
- 0x1.0000000000000000000004p+0, false,
- 0x1.0000000000000000000004p+0, false,
- true,
- 0x1.0000000000000000000004p+0, false,
- 0x1.0000000000000000000004p+0, false,
- 0x1.0000000000000000000004p+0, false,
- 0x1.0000000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000004p+0, false, false,
+ true,
+ 0x1.0000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000004p+0, false, false),
TEST ("1.0000000000000000000000000064623485355705287099328804067965"
"84793482907116413116455078125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000000002p+0, false,
- 0x1.0000000000000000000002p+0, false,
- 0x1.0000000000000000000002p+0, false,
- 0x1.0000000000000000000002p+0, false,
- true,
- 0x1.0000000000000000000002p+0, false,
- 0x1.0000000000000000000002p+0, false,
- 0x1.0000000000000000000002p+0, false,
- 0x1.0000000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000002p+0, false, false),
TEST ("1.0000000000000000000000000032311742677852643549664402033982"
"923967414535582065582275390625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000000001p+0, false,
- 0x1.0000000000000000000001p+0, false,
- 0x1.0000000000000000000001p+0, false,
- 0x1.0000000000000000000001p+0, false,
- true,
- 0x1.0000000000000000000001p+0, false,
- 0x1.0000000000000000000001p+0, false,
- 0x1.0000000000000000000001p+0, false,
- 0x1.0000000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000001p+0, false, false,
+ true,
+ 0x1.0000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000001p+0, false, false),
TEST ("1.0000000000000000000000000016155871338926321774832201016991"
"4619837072677910327911376953125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000000008p+0, false,
- 0x1.00000000000000000000008p+0, false,
- 0x1.00000000000000000000008p+0, false,
- 0x1.00000000000000000000008p+0, false,
- true,
- 0x1.00000000000000000000008p+0, false,
- 0x1.00000000000000000000008p+0, false,
- 0x1.00000000000000000000008p+0, false,
- 0x1.00000000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000008p+0, false, false,
+ true,
+ 0x1.00000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000008p+0, false, false),
TEST ("1.0000000000000000000000000008077935669463160887416100508495"
"73099185363389551639556884765625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000000004p+0, false,
- 0x1.00000000000000000000004p+0, false,
- 0x1.00000000000000000000004p+0, false,
- 0x1.00000000000000000000004p+0, false,
- true,
- 0x1.00000000000000000000004p+0, false,
- 0x1.00000000000000000000004p+0, false,
- 0x1.00000000000000000000004p+0, false,
- 0x1.00000000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000004p+0, false, false,
+ true,
+ 0x1.00000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000004p+0, false, false),
TEST ("1.0000000000000000000000000004038967834731580443708050254247"
"865495926816947758197784423828125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000000002p+0, false,
- 0x1.00000000000000000000002p+0, false,
- 0x1.00000000000000000000002p+0, false,
- 0x1.00000000000000000000002p+0, false,
- true,
- 0x1.00000000000000000000002p+0, false,
- 0x1.00000000000000000000002p+0, false,
- 0x1.00000000000000000000002p+0, false,
- 0x1.00000000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000002p+0, false, false),
TEST ("1.0000000000000000000000000002019483917365790221854025127123"
"9327479634084738790988922119140625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000000001p+0, false,
- 0x1.00000000000000000000001p+0, false,
- 0x1.00000000000000000000001p+0, false,
- 0x1.00000000000000000000001p+0, false,
- true,
- 0x1.00000000000000000000001p+0, false,
- 0x1.00000000000000000000001p+0, false,
- 0x1.00000000000000000000001p+0, false,
- 0x1.00000000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000001p+0, false, false,
+ true,
+ 0x1.00000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000001p+0, false, false),
TEST ("1.0000000000000000000000000001009741958682895110927012563561"
"96637398170423693954944610595703125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000000000008p+0, false,
- 0x1.000000000000000000000008p+0, false,
- 0x1.000000000000000000000008p+0, false,
- 0x1.000000000000000000000008p+0, false,
- true,
- 0x1.000000000000000000000008p+0, false,
- 0x1.000000000000000000000008p+0, false,
- 0x1.000000000000000000000008p+0, false,
- 0x1.000000000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000008p+0, false, false,
+ true,
+ 0x1.000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000008p+0, false, false),
TEST ("1.0000000000000000000000000000504870979341447555463506281780"
"983186990852118469774723052978515625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000000000004p+0, false,
- 0x1.000000000000000000000004p+0, false,
- 0x1.000000000000000000000004p+0, false,
- 0x1.000000000000000000000004p+0, false,
- true,
- 0x1.000000000000000000000004p+0, false,
- 0x1.000000000000000000000004p+0, false,
- 0x1.000000000000000000000004p+0, false,
- 0x1.000000000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000000004p+0, false, false,
+ 0x1.000000000000000000000004p+0, false, false,
+ 0x1.000000000000000000000004p+0, false, false,
+ 0x1.000000000000000000000004p+0, false, false,
+ true,
+ 0x1.000000000000000000000004p+0, false, false,
+ 0x1.000000000000000000000004p+0, false, false,
+ 0x1.000000000000000000000004p+0, false, false,
+ 0x1.000000000000000000000004p+0, false, false),
TEST ("1.0000000000000000000000000000252435489670723777731753140890"
"4915934954260592348873615264892578125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000000000002p+0, false,
- 0x1.000000000000000000000002p+0, false,
- 0x1.000000000000000000000002p+0, false,
- 0x1.000000000000000000000002p+0, false,
- true,
- 0x1.000000000000000000000002p+0, false,
- 0x1.000000000000000000000002p+0, false,
- 0x1.000000000000000000000002p+0, false,
- 0x1.000000000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000000002p+0, false, false,
+ 0x1.000000000000000000000002p+0, false, false,
+ 0x1.000000000000000000000002p+0, false, false,
+ 0x1.000000000000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000000002p+0, false, false,
+ 0x1.000000000000000000000002p+0, false, false,
+ 0x1.000000000000000000000002p+0, false, false,
+ 0x1.000000000000000000000002p+0, false, false),
TEST ("1.0000000000000000000000000000126217744835361888865876570445"
"24579674771302961744368076324462890625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000000000001p+0, false,
- 0x1.000000000000000000000001p+0, false,
- 0x1.000000000000000000000001p+0, false,
- 0x1.000000000000000000000001p+0, false,
- true,
- 0x1.000000000000000000000001p+0, false,
- 0x1.000000000000000000000001p+0, false,
- 0x1.000000000000000000000001p+0, false,
- 0x1.000000000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000000001p+0, false, false,
+ 0x1.000000000000000000000001p+0, false, false,
+ 0x1.000000000000000000000001p+0, false, false,
+ 0x1.000000000000000000000001p+0, false, false,
+ true,
+ 0x1.000000000000000000000001p+0, false, false,
+ 0x1.000000000000000000000001p+0, false, false,
+ 0x1.000000000000000000000001p+0, false, false,
+ 0x1.000000000000000000000001p+0, false, false),
TEST ("1.0000000000000000000000000000063108872417680944432938285222"
"622898373856514808721840381622314453125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000000000008p+0, false,
- 0x1.0000000000000000000000008p+0, false,
- 0x1.0000000000000000000000008p+0, false,
- 0x1.0000000000000000000000008p+0, false,
- true,
- 0x1.0000000000000000000000008p+0, false,
- 0x1.0000000000000000000000008p+0, false,
- 0x1.0000000000000000000000008p+0, false,
- 0x1.0000000000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000000008p+0, false, false,
+ true,
+ 0x1.0000000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000000008p+0, false, false),
TEST ("1.0000000000000000000000000000031554436208840472216469142611"
"3114491869282574043609201908111572265625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000000000004p+0, false,
- 0x1.0000000000000000000000004p+0, false,
- 0x1.0000000000000000000000004p+0, false,
- 0x1.0000000000000000000000004p+0, false,
- true,
- 0x1.0000000000000000000000004p+0, false,
- 0x1.0000000000000000000000004p+0, false,
- 0x1.0000000000000000000000004p+0, false,
- 0x1.0000000000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000000004p+0, false, false,
+ true,
+ 0x1.0000000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000000004p+0, false, false),
TEST ("1.0000000000000000000000000000015777218104420236108234571305"
"65572459346412870218046009540557861328125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000000000002p+0, false,
- 0x1.0000000000000000000000002p+0, false,
- 0x1.0000000000000000000000002p+0, false,
- 0x1.0000000000000000000000002p+0, false,
- true,
- 0x1.0000000000000000000000002p+0, false,
- 0x1.0000000000000000000000002p+0, false,
- 0x1.0000000000000000000000002p+0, false,
- 0x1.0000000000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000000002p+0, false, false),
TEST ("1.0000000000000000000000000000007888609052210118054117285652"
"827862296732064351090230047702789306640625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.0000000000000000000000001p+0, false,
- 0x1.0000000000000000000000001p+0, false,
- 0x1.0000000000000000000000001p+0, false,
- 0x1.0000000000000000000000001p+0, false,
- true,
- 0x1.0000000000000000000000001p+0, false,
- 0x1.0000000000000000000000001p+0, false,
- 0x1.0000000000000000000000001p+0, false,
- 0x1.0000000000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.0000000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000000001p+0, false, false,
+ true,
+ 0x1.0000000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000000001p+0, false, false),
TEST ("1.0000000000000000000000000000003944304526105059027058642826"
"4139311483660321755451150238513946533203125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000000000008p+0, false,
- 0x1.00000000000000000000000008p+0, false,
- 0x1.00000000000000000000000008p+0, false,
- 0x1.00000000000000000000000008p+0, false,
- true,
- 0x1.00000000000000000000000008p+0, false,
- 0x1.00000000000000000000000008p+0, false,
- 0x1.00000000000000000000000008p+0, false,
- 0x1.00000000000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000000008p+0, false, false,
+ true,
+ 0x1.00000000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000000008p+0, false, false,
+ 0x1.00000000000000000000000008p+0, false, false),
TEST ("1.0000000000000000000000000000001972152263052529513529321413"
"20696557418301608777255751192569732666015625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000000000004p+0, false,
- 0x1.00000000000000000000000004p+0, false,
- 0x1.00000000000000000000000004p+0, false,
- 0x1.00000000000000000000000004p+0, false,
- true,
- 0x1.00000000000000000000000004p+0, false,
- 0x1.00000000000000000000000004p+0, false,
- 0x1.00000000000000000000000004p+0, false,
- 0x1.00000000000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000000004p+0, false, false,
+ true,
+ 0x1.00000000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000000004p+0, false, false,
+ 0x1.00000000000000000000000004p+0, false, false),
TEST ("1.0000000000000000000000000000000986076131526264756764660706"
"603482787091508043886278755962848663330078125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000000000002p+0, false,
- 0x1.00000000000000000000000002p+0, false,
- 0x1.00000000000000000000000002p+0, false,
- 0x1.00000000000000000000000002p+0, false,
- true,
- 0x1.00000000000000000000000002p+0, false,
- 0x1.00000000000000000000000002p+0, false,
- 0x1.00000000000000000000000002p+0, false,
- 0x1.00000000000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000000002p+0, false, false,
+ 0x1.00000000000000000000000002p+0, false, false),
TEST ("1.0000000000000000000000000000000493038065763132378382330353"
"3017413935457540219431393779814243316650390625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.00000000000000000000000001p+0, false,
- 0x1.00000000000000000000000001p+0, false,
- 0x1.00000000000000000000000001p+0, false,
- 0x1.00000000000000000000000001p+0, false,
- true,
- 0x1.00000000000000000000000001p+0, false,
- 0x1.00000000000000000000000001p+0, false,
- 0x1.00000000000000000000000001p+0, false,
- 0x1.00000000000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.00000000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000000001p+0, false, false,
+ true,
+ 0x1.00000000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000000001p+0, false, false,
+ 0x1.00000000000000000000000001p+0, false, false),
TEST ("1.0000000000000000000000000000000246519032881566189191165176"
"65087069677287701097156968899071216583251953125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- true,
- 0x1.000000000000000000000000008p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- true,
- 0x1.000000000000000000000000008p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- 0x1.000000000000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ true,
+ 0x1.000000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ true,
+ 0x1.000000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false),
TEST ("1.0000000000000000000000000000000123259516440783094595582588"
"325435348386438505485784844495356082916259765625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- true,
- 0x1.000000000000000000000000004p+0, false,
- 0x1.000000000000000000000000004p+0, false,
- 0x1.000000000000000000000000004p+0, false,
- 0x1.000000000000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ true,
+ 0x1.000000000000000000000000004p+0, false, false,
+ 0x1.000000000000000000000000004p+0, false, false,
+ 0x1.000000000000000000000000004p+0, false, false,
+ 0x1.000000000000000000000000004p+0, false, false),
TEST ("1.0000000000000000000000000000000061629758220391547297791294"
"1627176741932192527428924222476780414581298828125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- true,
- 0x1.000000000000000000000000002p+0, false,
- 0x1.000000000000000000000000002p+0, false,
- 0x1.000000000000000000000000002p+0, false,
- 0x1.000000000000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ true,
+ 0x1.000000000000000000000000002p+0, false, false,
+ 0x1.000000000000000000000000002p+0, false, false,
+ 0x1.000000000000000000000000002p+0, false, false,
+ 0x1.000000000000000000000000002p+0, false, false),
TEST ("1.0000000000000000000000000000000030814879110195773648895647"
"08135883709660962637144621112383902072906494140625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- true,
- 0x1.000000000000000000000000001p+0, false,
- 0x1.000000000000000000000000001p+0, false,
- 0x1.000000000000000000000000001p+0, false,
- 0x1.000000000000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ true,
+ 0x1.000000000000000000000000001p+0, false, false,
+ 0x1.000000000000000000000000001p+0, false, false,
+ 0x1.000000000000000000000000001p+0, false, false,
+ 0x1.000000000000000000000000001p+0, false, false),
TEST ("1.0000000000000000000000000000000015407439555097886824447823"
"540679418548304813185723105561919510364532470703125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- true,
- 0x1.0000000000000000000000000008p+0, false,
- 0x1.0000000000000000000000000008p+0, false,
- 0x1.0000000000000000000000000008p+0, false,
- 0x1.0000000000000000000000000008p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ true,
+ 0x1.0000000000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000000000008p+0, false, false,
+ 0x1.0000000000000000000000000008p+0, false, false),
TEST ("1.0000000000000000000000000000000007703719777548943412223911"
"7703397092741524065928615527809597551822662353515625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- true,
- 0x1.0000000000000000000000000004p+0, false,
- 0x1.0000000000000000000000000004p+0, false,
- 0x1.0000000000000000000000000004p+0, false,
- 0x1.0000000000000000000000000004p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ true,
+ 0x1.0000000000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000000000004p+0, false, false,
+ 0x1.0000000000000000000000000004p+0, false, false),
TEST ("1.0000000000000000000000000000000003851859888774471706111955"
"88516985463707620329643077639047987759113311767578125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- true,
- 0x1.0000000000000000000000000002p+0, false,
- 0x1.0000000000000000000000000002p+0, false,
- 0x1.0000000000000000000000000002p+0, false,
- 0x1.0000000000000000000000000002p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ true,
+ 0x1.0000000000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000000000002p+0, false, false,
+ 0x1.0000000000000000000000000002p+0, false, false),
TEST ("1.0000000000000000000000000000000001925929944387235853055977"
"942584927318538101648215388195239938795566558837890625",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- true,
- 0x1.0000000000000000000000000001p+0, false,
- 0x1.0000000000000000000000000001p+0, false,
- 0x1.0000000000000000000000000001p+0, false,
- 0x1.0000000000000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ true,
+ 0x1.0000000000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000000000001p+0, false, false,
+ 0x1.0000000000000000000000000001p+0, false, false),
TEST ("1.0000000000000000000000000000000000962964972193617926527988"
"9712924636592690508241076940976199693977832794189453125",
false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000001p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000002p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.000000000000000000000000008p+0, false,
- false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1p+0, false,
- 0x1.0000000000000000000000000001p+0, false),
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000001p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000002p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.000000000000000000000000008p+0, false, false,
+ false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1p+0, false, false,
+ 0x1.0000000000000000000000000001p+0, false, false),
+ TEST ("0x30000002222225p-1077",
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x1.800000111111p-1024, false, true,
+ 0x1.8000001111114p-1024, false, true,
+ 0x1.800000111111p-1024, false, true,
+ 0x1.8000001111114p-1024, false, true,
+ true,
+ 0x1.80000011111128p-1024, false, false,
+ 0x1.80000011111128p-1024, false, false,
+ 0x1.80000011111128p-1024, false, false,
+ 0x1.80000011111128p-1024, false, false,
+ true,
+ 0x1.80000011111128p-1024, false, false,
+ 0x1.80000011111128p-1024, false, false,
+ 0x1.80000011111128p-1024, false, false,
+ 0x1.80000011111128p-1024, false, false,
+ false,
+ 0x1.800000111111p-1024, false, true,
+ 0x1.8000001111114p-1024, false, true,
+ 0x1.800000111111p-1024, false, true,
+ 0x1.8000001111114p-1024, false, true,
+ true,
+ 0x1.80000011111128p-1024, false, false,
+ 0x1.80000011111128p-1024, false, false,
+ 0x1.80000011111128p-1024, false, false,
+ 0x1.80000011111128p-1024, false, false),
+ TEST ("0x0.7fffffffffffeap-1022",
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x1.ffffffffffff8p-1024, false, true,
+ 0x1.ffffffffffffcp-1024, false, true,
+ 0x1.ffffffffffff8p-1024, false, true,
+ 0x1.ffffffffffffcp-1024, false, true,
+ true,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ true,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ false,
+ 0x1.ffffffffffff8p-1024, false, true,
+ 0x1.ffffffffffffcp-1024, false, true,
+ 0x1.ffffffffffff8p-1024, false, true,
+ 0x1.ffffffffffffcp-1024, false, true,
+ true,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ 0x1.ffffffffffffa8p-1024, false, false,
+ 0x1.ffffffffffffa8p-1024, false, false),
+ TEST ("0x0.7fffffffffffe9p-1022",
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x1.ffffffffffff8p-1024, false, true,
+ 0x1.ffffffffffffcp-1024, false, true,
+ 0x1.ffffffffffff8p-1024, false, true,
+ 0x1.ffffffffffffcp-1024, false, true,
+ true,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ true,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ false,
+ 0x1.ffffffffffff8p-1024, false, true,
+ 0x1.ffffffffffffcp-1024, false, true,
+ 0x1.ffffffffffff8p-1024, false, true,
+ 0x1.ffffffffffffcp-1024, false, true,
+ true,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ 0x1.ffffffffffffa4p-1024, false, false,
+ 0x1.ffffffffffffa4p-1024, false, false),
+ TEST ("0x0.7ffffd4p-126",
+ false,
+ 0x1.fffffp-128, false, true,
+ 0x1.fffff8p-128, false, true,
+ 0x1.fffffp-128, false, true,
+ 0x1.fffff8p-128, false, true,
+ true,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ true,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ true,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ true,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ true,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false,
+ 0x1.fffff5p-128, false, false),
+ TEST ("0x0.7ffffffffffffffd4p-16382",
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x1.fffffffffffffffp-16384, false, true,
+ 0x1.fffffffffffffff8p-16384, false, true,
+ 0x1.fffffffffffffffp-16384, false, true,
+ 0x1.fffffffffffffff8p-16384, false, true,
+ false,
+ 0x1.fffffffffffffff4p-16384, false, true,
+ 0x1.fffffffffffffff4p-16384, false, true,
+ 0x1.fffffffffffffff4p-16384, false, true,
+ 0x1.fffffffffffffff8p-16384, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0x1.fffffffffffffff5p-16384, false, false,
+ 0x1.fffffffffffffff5p-16384, false, false,
+ 0x1.fffffffffffffff5p-16384, false, false,
+ 0x1.fffffffffffffff5p-16384, false, false),
+ TEST ("0x0.7ffffffffffffffd4p-16383",
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0xf.ffffffffffffff8p-16388, false, true,
+ 0xf.ffffffffffffff8p-16388, false, true,
+ 0xf.ffffffffffffff8p-16388, false, true,
+ 0x1p-16384, false, true,
+ false,
+ 0xf.ffffffffffffff8p-16388, false, true,
+ 0xf.ffffffffffffffcp-16388, false, true,
+ 0xf.ffffffffffffff8p-16388, false, true,
+ 0xf.ffffffffffffffcp-16388, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0xf.ffffffffffffffa8p-16388, false, false,
+ 0xf.ffffffffffffffa8p-16388, false, false,
+ 0xf.ffffffffffffffa8p-16388, false, false,
+ 0xf.ffffffffffffffa8p-16388, false, false),
+ TEST ("0x0.7ffffffffffffffffffffffffffeap-16382",
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x1.fffffffffffffff8p-16384, false, true,
+ 0x2p-16384, false, true,
+ 0x1.fffffffffffffff8p-16384, false, true,
+ 0x2p-16384, false, true,
+ false,
+ 0x1.fffffffffffffffcp-16384, false, true,
+ 0x2p-16384, false, true,
+ 0x1.fffffffffffffffcp-16384, false, true,
+ 0x2p-16384, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x1.fffffffffffffffffffffffffff8p-16384, false, true,
+ 0x1.fffffffffffffffffffffffffffcp-16384, false, true,
+ 0x1.fffffffffffffffffffffffffff8p-16384, false, true,
+ 0x1.fffffffffffffffffffffffffffcp-16384, false, true),
+ TEST ("0x0.7000004p-126",
+ false,
+ 0x1.cp-128, false, true,
+ 0x1.cp-128, false, true,
+ 0x1.cp-128, false, true,
+ 0x1.c00008p-128, false, true,
+ true,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ true,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ true,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ true,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ true,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false,
+ 0x1.c00001p-128, false, false),
+ TEST ("0x0.70000000000002p-1022",
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x1.cp-1024, false, true,
+ 0x1.cp-1024, false, true,
+ 0x1.cp-1024, false, true,
+ 0x1.c000000000004p-1024, false, true,
+ true,
+ 0x1.c0000000000008p-1024, false, false,
+ 0x1.c0000000000008p-1024, false, false,
+ 0x1.c0000000000008p-1024, false, false,
+ 0x1.c0000000000008p-1024, false, false,
+ true,
+ 0x1.c0000000000008p-1024, false, false,
+ 0x1.c0000000000008p-1024, false, false,
+ 0x1.c0000000000008p-1024, false, false,
+ 0x1.c0000000000008p-1024, false, false,
+ false,
+ 0x1.cp-1024, false, true,
+ 0x1.cp-1024, false, true,
+ 0x1.cp-1024, false, true,
+ 0x1.c000000000004p-1024, false, true,
+ true,
+ 0x1.c0000000000008p-1024, false, false,
+ 0x1.c0000000000008p-1024, false, false,
+ 0x1.c0000000000008p-1024, false, false,
+ 0x1.c0000000000008p-1024, false, false),
+ TEST ("0x0.70000000000000004p-16382",
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x1.cp-16384, false, true,
+ 0x1.cp-16384, false, true,
+ 0x1.cp-16384, false, true,
+ 0x1.c000000000000008p-16384, false, true,
+ false,
+ 0x1.cp-16384, false, true,
+ 0x1.cp-16384, false, true,
+ 0x1.cp-16384, false, true,
+ 0x1.c000000000000004p-16384, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0x1.c000000000000001p-16384, false, false,
+ 0x1.c000000000000001p-16384, false, false,
+ 0x1.c000000000000001p-16384, false, false,
+ 0x1.c000000000000001p-16384, false, false),
+ TEST ("0x0.70000000000000004p-16383",
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0xep-16388, false, true,
+ 0xep-16388, false, true,
+ 0xep-16388, false, true,
+ 0xe.000000000000008p-16388, false, true,
+ false,
+ 0xep-16388, false, true,
+ 0xep-16388, false, true,
+ 0xep-16388, false, true,
+ 0xe.000000000000004p-16388, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ true,
+ 0xe.0000000000000008p-16388, false, false,
+ 0xe.0000000000000008p-16388, false, false,
+ 0xe.0000000000000008p-16388, false, false,
+ 0xe.0000000000000008p-16388, false, false),
+ TEST ("0x0.70000000000000000000000000002p-16382",
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x8p-152, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x1.cp-16384, false, true,
+ 0x1.cp-16384, false, true,
+ 0x1.cp-16384, false, true,
+ 0x1.c000000000000008p-16384, false, true,
+ false,
+ 0x1.cp-16384, false, true,
+ 0x1.cp-16384, false, true,
+ 0x1.cp-16384, false, true,
+ 0x1.c000000000000004p-16384, false, true,
+ false,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x0p+0, false, true,
+ 0x4p-1076, false, true,
+ false,
+ 0x1.cp-16384, false, true,
+ 0x1.cp-16384, false, true,
+ 0x1.cp-16384, false, true,
+ 0x1.c000000000000000000000000004p-16384, false, true),
};
diff --git a/stdlib/tst-strtod-round-skeleton.c b/stdlib/tst-strtod-round-skeleton.c
index 6fba4b5..be081ba 100644
--- a/stdlib/tst-strtod-round-skeleton.c
+++ b/stdlib/tst-strtod-round-skeleton.c
@@ -21,6 +21,7 @@
declared in the headers. */
#define _LIBC_TEST 1
#define __STDC_WANT_IEC_60559_TYPES_EXT__
+#include <errno.h>
#include <fenv.h>
#include <float.h>
#include <math.h>
@@ -29,6 +30,7 @@
#include <stdlib.h>
#include <string.h>
#include <math-tests.h>
+#include <tininess.h>
#include "tst-strtod.h"
@@ -138,16 +140,26 @@
gen-tst-strtod-round utility to select the appropriately
rounded long double value for a given format. */
#define TEST(s, \
- fx, fd, fdo, fn, fno, fz, fzo, fu, fuo, \
- dx, dd, ddo, dn, dno, dz, dzo, du, duo, \
- ld64ix, ld64id, ld64ido, ld64in, ld64ino, \
- ld64iz, ld64izo, ld64iu, ld64iuo, \
- ld64mx, ld64md, ld64mdo, ld64mn, ld64mno, \
- ld64mz, ld64mzo, ld64mu, ld64muo, \
- ld106x, ld106d, ld106do, ld106n, ld106no, \
- ld106z, ld106zo, ld106u, ld106uo, \
- ld113x, ld113d, ld113do, ld113n, ld113no, \
- ld113z, ld113zo, ld113u, ld113uo) \
+ fx, fd, fdo, fdu, fn, fno, fnu, \
+ fz, fzo, fzu, fu, fuo, fuu, \
+ dx, dd, ddo, ddu, dn, dno, dnu, \
+ dz, dzo, dzu, du, duo, duu, \
+ ld64ix, ld64id, ld64ido, ld64idu, \
+ ld64in, ld64ino, ld64inu, \
+ ld64iz, ld64izo, ld64izu, \
+ ld64iu, ld64iuo, ld64iuu, \
+ ld64mx, ld64md, ld64mdo, ld64mdu, \
+ ld64mn, ld64mno, ld64mnu, \
+ ld64mz, ld64mzo, ld64mzu, \
+ ld64mu, ld64muo, ld64muu, \
+ ld106x, ld106d, ld106do, ld106du, \
+ ld106n, ld106no, ld106nu, \
+ ld106z, ld106zo, ld106zu, \
+ ld106u, ld106uo, ld106uu, \
+ ld113x, ld113d, ld113do, ld113du, \
+ ld113n, ld113no, ld113nu, \
+ ld113z, ld113zo, ld113zu, \
+ ld113u, ld113uo, ld113uu) \
{ \
L_ (s), \
{ XNTRY (fx, dx, ld64ix, ld64mx, ld106x, ld113x) }, \
@@ -162,6 +174,12 @@
{ XNTRY (fdo, ddo, ld64ido, ld64mdo, ld106do, ld113do) }, \
{ XNTRY (fzo, dzo, ld64izo, ld64mzo, ld106zo, ld113zo) }, \
{ XNTRY (fuo, duo, ld64iuo, ld64muo, ld106uo, ld113uo) } \
+ }, \
+ { \
+ { XNTRY (fnu, dnu, ld64inu, ld64mnu, ld106nu, ld113nu) }, \
+ { XNTRY (fdu, ddu, ld64idu, ld64mdu, ld106du, ld113du) }, \
+ { XNTRY (fzu, dzu, ld64izu, ld64mzu, ld106zu, ld113zu) }, \
+ { XNTRY (fuu, duu, ld64iuu, ld64muu, ld106uu, ld113uu) } \
} \
}
@@ -180,11 +198,17 @@ struct test_overflow
STRUCT_FOREACH_FLOAT_BOOL
};
+struct test_underflow
+ {
+ STRUCT_FOREACH_FLOAT_BOOL
+ };
+
struct test {
const CHAR *s;
struct test_exactness exact;
struct test_results r[4];
struct test_overflow o[4];
+ struct test_underflow u[4];
};
/* Include the generated test data. */
@@ -202,10 +226,16 @@ struct test {
# define FE_OVERFLOW 0
#endif
+#ifndef FE_UNDERFLOW
+# define FE_UNDERFLOW 0
+#endif
+
#define GEN_ONE_TEST(FSUF, FTYPE, FTOSTR, LSUF, CSUF) \
{ \
feclearexcept (FE_ALL_EXCEPT); \
+ errno = 12345; \
FTYPE f = STRTO (FSUF) (s, NULL); \
+ int new_errno = errno; \
if (f != expected->FSUF \
|| (copysign ## CSUF) (1.0 ## LSUF, f) \
!= (copysign ## CSUF) (1.0 ## LSUF, expected->FSUF)) \
@@ -254,6 +284,48 @@ struct test {
printf ("ignoring this exception error\n"); \
} \
} \
+ if (overflow->FSUF && new_errno != ERANGE) \
+ { \
+ printf (FNPFXS "to" #FSUF \
+ " (" STRM ") left errno == %d," \
+ " not %d (ERANGE)\n", \
+ s, new_errno, ERANGE); \
+ result = 1; \
+ } \
+ if (FE_UNDERFLOW != 0) \
+ { \
+ bool underflow_raised \
+ = fetestexcept (FE_UNDERFLOW) != 0; \
+ if (underflow_raised != underflow->FSUF) \
+ { \
+ printf (FNPFXS "to" #FSUF \
+ " (" STRM ") underflow %d " \
+ "not %d\n", s, underflow_raised, \
+ underflow->FSUF); \
+ if (EXCEPTION_TESTS (FTYPE)) \
+ result = 1; \
+ else \
+ printf ("ignoring this exception error\n"); \
+ } \
+ } \
+ if (underflow->FSUF && new_errno != ERANGE) \
+ { \
+ printf (FNPFXS "to" #FSUF \
+ " (" STRM ") left errno == %d," \
+ " not %d (ERANGE)\n", \
+ s, new_errno, ERANGE); \
+ result = 1; \
+ } \
+ if (!overflow->FSUF \
+ && !underflow->FSUF \
+ && new_errno != 12345) \
+ { \
+ printf (FNPFXS "to" #FSUF \
+ " (" STRM ") set errno == %d," \
+ " should be unchanged\n", \
+ s, new_errno); \
+ result = 1; \
+ } \
} \
}
@@ -261,6 +333,7 @@ static int
test_in_one_mode (const CHAR *s, const struct test_results *expected,
const struct test_exactness *exact,
const struct test_overflow *overflow,
+ const struct test_underflow *underflow,
const char *mode_name, int rnd_mode)
{
int result = 0;
@@ -296,6 +369,7 @@ do_test (void)
{
result |= test_in_one_mode (tests[i].s, &tests[i].r[modes[0].rnd_i],
&tests[i].exact, &tests[i].o[modes[0].rnd_i],
+ &tests[i].u[modes[0].rnd_i],
modes[0].mode_name, modes[0].rnd_mode);
for (const struct fetestmodes *m = &modes[1]; m->mode_name != NULL; m++)
{
@@ -303,7 +377,9 @@ do_test (void)
{
result |= test_in_one_mode (tests[i].s, &tests[i].r[m->rnd_i],
&tests[i].exact,
- &tests[i].o[m->rnd_i], m->mode_name,
+ &tests[i].o[m->rnd_i],
+ &tests[i].u[m->rnd_i],
+ m->mode_name,
m->rnd_mode);
fesetround (save_round_mode);
}
diff --git a/stdlib/tst-strtod-underflow.c b/stdlib/tst-strtod-underflow.c
index a5ced18..8598b95 100644
--- a/stdlib/tst-strtod-underflow.c
+++ b/stdlib/tst-strtod-underflow.c
@@ -17,6 +17,10 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
+/* Defining _LIBC_TEST ensures long double math functions are
+ declared in the headers. */
+#define _LIBC_TEST 1
+#define __STDC_WANT_IEC_60559_TYPES_EXT__
#include <errno.h>
#include <fenv.h>
#include <float.h>
@@ -25,6 +29,60 @@
#include <stdlib.h>
#include <tininess.h>
+#include "tst-strtod.h"
+
+/* Logic for selecting between tests for different formats is as in
+ tst-strtod-skeleton.c, but here it is selecting string inputs with
+ different underflow properties, rather than generated test
+ data. */
+
+#define _CONCAT(a, b) a ## b
+#define CONCAT(a, b) _CONCAT (a, b)
+
+#define MEMBER(FSUF, FTYPE, FTOSTR, LSUF, CSUF) \
+ const char *s_ ## FSUF;
+
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
+# define CHOOSE_ld(f,d,...) d
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384 && LDBL_MIN_EXP == -16381
+# define CHOOSE_ld(f,d,ld64i,...) ld64i
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384 && LDBL_MIN_EXP == -16382
+# define CHOOSE_ld(f,d,ld64i,ld64m,...) ld64m
+#elif LDBL_MANT_DIG == 106 && LDBL_MAX_EXP == 1024
+# define CHOOSE_ld(f,d,ld64i,ld64m,ld106,...) ld106
+#elif LDBL_MANT_DIG == 113 && LDBL_MAX_EXP == 16384
+# define CHOOSE_ld(f,d,ld64i,ld64m,ld106,ld113,...) ld113
+#else
+# error "unknown long double format"
+#endif
+
+#define CHOOSE_f(f,...) f
+#define CHOOSE_f32(f,...) f
+#define CHOOSE_d(f,d,...) d
+#define CHOOSE_f64(f,d,...) d
+#define CHOOSE_f32x(f,d,...) d
+#define CHOOSE_f128(f,d,ld64i,ld64m,ld106,ld113,...) ld113
+
+#if __HAVE_FLOAT64X
+# if FLT64X_MANT_DIG == 113 && FLT64X_MAX_EXP == 16384
+# define CHOOSE_f64x(f,d,ld64i,ld64m,ld106,ld113,...) ld113
+# elif (FLT64X_MANT_DIG == 64 \
+ && FLT64X_MAX_EXP == 16384 \
+ && FLT64X_MIN_EXP == -16381)
+# define CHOOSE_f64x(f,d,ld64i,...) ld64i
+# else
+# error "unknown _Float64x format"
+# endif
+#endif
+
+#define _XNTRY(FSUF, FTYPE, FTOSTR, LSUF, CSUF, ...) \
+ CHOOSE_ ## FSUF (__VA_ARGS__),
+#define XNTRY(...) \
+ GEN_TEST_STRTOD_FOREACH (_XNTRY, __VA_ARGS__)
+
+#define TEST(f, d, ld64i, ld64m, ld106, ld113, u) \
+ { XNTRY(f, d, ld64i, ld64m, ld106, ld113) u }
+
enum underflow_case
{
/* Result is exact or outside the subnormal range. */
@@ -55,38 +113,194 @@ enum underflow_case
struct test
{
- const char *s;
+ GEN_TEST_STRTOD_FOREACH (MEMBER)
enum underflow_case c;
};
static const struct test tests[] =
{
- { "0x1p-1022", UNDERFLOW_NONE },
- { "-0x1p-1022", UNDERFLOW_NONE },
- { "0x0p-10000000000000000000000000", UNDERFLOW_NONE },
- { "-0x0p-10000000000000000000000000", UNDERFLOW_NONE },
- { "0x1p-10000000000000000000000000", UNDERFLOW_ALWAYS },
- { "-0x1p-10000000000000000000000000", UNDERFLOW_ALWAYS },
- { "0x1.000000000000000000001p-1022", UNDERFLOW_NONE },
- { "-0x1.000000000000000000001p-1022", UNDERFLOW_NONE },
- { "0x1p-1075", UNDERFLOW_ALWAYS },
- { "-0x1p-1075", UNDERFLOW_ALWAYS },
- { "0x1p-1023", UNDERFLOW_NONE },
- { "-0x1p-1023", UNDERFLOW_NONE },
- { "0x1p-1074", UNDERFLOW_NONE },
- { "-0x1p-1074", UNDERFLOW_NONE },
- { "0x1.ffffffffffffep-1023", UNDERFLOW_NONE },
- { "-0x1.ffffffffffffep-1023", UNDERFLOW_NONE },
- { "0x1.fffffffffffffp-1023", UNDERFLOW_ALWAYS },
- { "-0x1.fffffffffffffp-1023", UNDERFLOW_ALWAYS },
- { "0x1.fffffffffffff0001p-1023", UNDERFLOW_EXCEPT_UPWARD },
- { "-0x1.fffffffffffff0001p-1023", UNDERFLOW_EXCEPT_DOWNWARD },
- { "0x1.fffffffffffff7fffp-1023", UNDERFLOW_EXCEPT_UPWARD },
- { "-0x1.fffffffffffff7fffp-1023", UNDERFLOW_EXCEPT_DOWNWARD },
- { "0x1.fffffffffffff8p-1023", UNDERFLOW_ONLY_DOWNWARD_ZERO },
- { "-0x1.fffffffffffff8p-1023", UNDERFLOW_ONLY_UPWARD_ZERO },
- { "0x1.fffffffffffffffffp-1023", UNDERFLOW_ONLY_DOWNWARD_ZERO },
- { "-0x1.fffffffffffffffffp-1023", UNDERFLOW_ONLY_UPWARD_ZERO },
+ TEST ("0x1p-126",
+ "0x1p-1022",
+ "0x1p-16382",
+ "0x1p-16383",
+ "0x1p-969",
+ "0x1p-16382",
+ UNDERFLOW_NONE),
+ TEST ("-0x1p-126",
+ "-0x1p-1022",
+ "-0x1p-16382",
+ "-0x1p-16383",
+ "-0x1p-969",
+ "-0x1p-16382",
+ UNDERFLOW_NONE),
+ TEST ("0x0p-10000000000000000000000000",
+ "0x0p-10000000000000000000000000",
+ "0x0p-10000000000000000000000000",
+ "0x0p-10000000000000000000000000",
+ "0x0p-10000000000000000000000000",
+ "0x0p-10000000000000000000000000",
+ UNDERFLOW_NONE),
+ TEST ("-0x0p-10000000000000000000000000",
+ "-0x0p-10000000000000000000000000",
+ "-0x0p-10000000000000000000000000",
+ "-0x0p-10000000000000000000000000",
+ "-0x0p-10000000000000000000000000",
+ "-0x0p-10000000000000000000000000",
+ UNDERFLOW_NONE),
+ TEST ("0x1p-10000000000000000000000000",
+ "0x1p-10000000000000000000000000",
+ "0x1p-10000000000000000000000000",
+ "0x1p-10000000000000000000000000",
+ "0x1p-10000000000000000000000000",
+ "0x1p-10000000000000000000000000",
+ UNDERFLOW_ALWAYS),
+ TEST ("-0x1p-10000000000000000000000000",
+ "-0x1p-10000000000000000000000000",
+ "-0x1p-10000000000000000000000000",
+ "-0x1p-10000000000000000000000000",
+ "-0x1p-10000000000000000000000000",
+ "-0x1p-10000000000000000000000000",
+ UNDERFLOW_ALWAYS),
+ TEST ("0x1.000000000000000000001p-126",
+ "0x1.000000000000000000001p-1022",
+ "0x1.000000000000000000001p-16382",
+ "0x1.000000000000000000001p-16383",
+ "0x1.000000000000000000001p-969",
+ "0x1.00000000000000000000000000000000000000001p-16382",
+ UNDERFLOW_NONE),
+ TEST ("-0x1.000000000000000000001p-126",
+ "-0x1.000000000000000000001p-1022",
+ "-0x1.000000000000000000001p-16382",
+ "-0x1.000000000000000000001p-16383",
+ "-0x1.000000000000000000001p-969",
+ "-0x1.00000000000000000000000000000000000000001p-16382",
+ UNDERFLOW_NONE),
+ TEST ("0x1p-150",
+ "0x1p-1075",
+ "0x1p-16446",
+ "0x1p-16447",
+ "0x1p-1075",
+ "0x1p-16495",
+ UNDERFLOW_ALWAYS),
+ TEST ("-0x1p-150",
+ "-0x1p-1075",
+ "-0x1p-16446",
+ "-0x1p-16447",
+ "-0x1p-1075",
+ "-0x1p-16495",
+ UNDERFLOW_ALWAYS),
+ TEST ("0x1p-127",
+ "0x1p-1023",
+ "0x1p-16383",
+ "0x1p-16384",
+ "0x1p-970",
+ "0x1p-16383",
+ UNDERFLOW_NONE),
+ TEST ("-0x1p-127",
+ "-0x1p-1023",
+ "-0x1p-16383",
+ "-0x1p-16384",
+ "-0x1p-970",
+ "-0x1p-16383",
+ UNDERFLOW_NONE),
+ TEST ("0x1p-149",
+ "0x1p-1074",
+ "0x1p-16445",
+ "0x1p-16446",
+ "0x1p-1074",
+ "0x1p-16494",
+ UNDERFLOW_NONE),
+ TEST ("-0x1p-149",
+ "-0x1p-1074",
+ "-0x1p-16445",
+ "-0x1p-16446",
+ "-0x1p-1074",
+ "-0x1p-16494",
+ UNDERFLOW_NONE),
+ TEST ("0x1.fffffcp-127",
+ "0x1.ffffffffffffep-1023",
+ "0x1.fffffffffffffffcp-16383",
+ "0x1.fffffffffffffffcp-16384",
+ "0x1.ffffffffffffffffffffffffffp-970",
+ "0x1.fffffffffffffffffffffffffffep-16383",
+ UNDERFLOW_NONE),
+ TEST ("-0x1.fffffcp-127",
+ "-0x1.ffffffffffffep-1023",
+ "-0x1.fffffffffffffffcp-16383",
+ "-0x1.fffffffffffffffcp-16384",
+ "-0x1.ffffffffffffffffffffffffffp-970",
+ "-0x1.fffffffffffffffffffffffffffep-16383",
+ UNDERFLOW_NONE),
+ TEST ("0x1.fffffep-127",
+ "0x1.fffffffffffffp-1023",
+ "0x1.fffffffffffffffep-16383",
+ "0x1.fffffffffffffffep-16384",
+ "0x1.ffffffffffffffffffffffffff8p-970",
+ "0x1.ffffffffffffffffffffffffffffp-16383",
+ UNDERFLOW_ALWAYS),
+ TEST ("-0x1.fffffep-127",
+ "-0x1.fffffffffffffp-1023",
+ "-0x1.fffffffffffffffep-16383",
+ "-0x1.fffffffffffffffep-16384",
+ "-0x1.ffffffffffffffffffffffffff8p-970",
+ "-0x1.ffffffffffffffffffffffffffffp-16383",
+ UNDERFLOW_ALWAYS),
+ TEST ("0x1.fffffe0001p-127",
+ "0x1.fffffffffffff0001p-1023",
+ "0x1.fffffffffffffffe0001p-16383",
+ "0x1.fffffffffffffffe0001p-16384",
+ "0x1.ffffffffffffffffffffffffff80001p-970",
+ "0x1.ffffffffffffffffffffffffffff0001p-16383",
+ UNDERFLOW_EXCEPT_UPWARD),
+ TEST ("-0x1.fffffe0001p-127",
+ "-0x1.fffffffffffff0001p-1023",
+ "-0x1.fffffffffffffffe0001p-16383",
+ "-0x1.fffffffffffffffe0001p-16384",
+ "-0x1.ffffffffffffffffffffffffff80001p-970",
+ "-0x1.ffffffffffffffffffffffffffff0001p-16383",
+ UNDERFLOW_EXCEPT_DOWNWARD),
+ TEST ("0x1.fffffeffffp-127",
+ "0x1.fffffffffffff7fffp-1023",
+ "0x1.fffffffffffffffeffffp-16383",
+ "0x1.fffffffffffffffeffffp-16384",
+ "0x1.ffffffffffffffffffffffffffbffffp-970",
+ "0x1.ffffffffffffffffffffffffffff7fffp-16383",
+ UNDERFLOW_EXCEPT_UPWARD),
+ TEST ("-0x1.fffffeffffp-127",
+ "-0x1.fffffffffffff7fffp-1023",
+ "-0x1.fffffffffffffffeffffp-16383",
+ "-0x1.fffffffffffffffeffffp-16384",
+ "-0x1.ffffffffffffffffffffffffffbffffp-970",
+ "-0x1.ffffffffffffffffffffffffffff7fffp-16383",
+ UNDERFLOW_EXCEPT_DOWNWARD),
+ TEST ("0x1.ffffffp-127",
+ "0x1.fffffffffffff8p-1023",
+ "0x1.ffffffffffffffffp-16383",
+ "0x1.ffffffffffffffffp-16384",
+ "0x1.ffffffffffffffffffffffffffcp-970",
+ "0x1.ffffffffffffffffffffffffffff8p-16383",
+ UNDERFLOW_ONLY_DOWNWARD_ZERO),
+ TEST ("-0x1.ffffffp-127",
+ "-0x1.fffffffffffff8p-1023",
+ "-0x1.ffffffffffffffffp-16383",
+ "-0x1.ffffffffffffffffp-16384",
+ "-0x1.ffffffffffffffffffffffffffcp-970",
+ "-0x1.ffffffffffffffffffffffffffff8p-16383",
+ UNDERFLOW_ONLY_UPWARD_ZERO),
+ TEST ("0x1.ffffffffffp-127",
+ "0x1.fffffffffffffffffp-1023",
+ "0x1.ffffffffffffffffffffp-16383",
+ "0x1.ffffffffffffffffffffp-16384",
+ "0x1.ffffffffffffffffffffffffffffffp-970",
+ "0x1.ffffffffffffffffffffffffffffffffp-16383",
+ UNDERFLOW_ONLY_DOWNWARD_ZERO),
+ TEST ("-0x1.ffffffffffp-127",
+ "-0x1.fffffffffffffffffp-1023",
+ "-0x1.ffffffffffffffffffffp-16383",
+ "-0x1.ffffffffffffffffffffp-16384",
+ "-0x1.ffffffffffffffffffffffffffffffp-970",
+ "-0x1.ffffffffffffffffffffffffffffffffp-16383",
+ UNDERFLOW_ONLY_UPWARD_ZERO),
};
/* Return whether to expect underflow from a particular testcase, in a
@@ -133,39 +347,62 @@ static bool support_underflow_exception = false;
volatile double d = DBL_MIN;
volatile double dd;
-static int
-test_in_one_mode (const char *s, enum underflow_case c, int rm,
- const char *mode_name)
+static bool
+test_got_fe_underflow (void)
{
- int result = 0;
- feclearexcept (FE_ALL_EXCEPT);
- errno = 0;
- double d = strtod (s, NULL);
- int got_errno = errno;
#ifdef FE_UNDERFLOW
- bool got_fe_underflow = fetestexcept (FE_UNDERFLOW) != 0;
+ return fetestexcept (FE_UNDERFLOW) != 0;
#else
- bool got_fe_underflow = false;
+ return false;
#endif
- printf ("strtod (%s) (%s) returned %a, errno = %d, %sunderflow exception\n",
- s, mode_name, d, got_errno, got_fe_underflow ? "" : "no ");
- bool this_expect_underflow = expect_underflow (c, rm);
- if (got_errno != 0 && got_errno != ERANGE)
- {
- puts ("FAIL: errno neither 0 nor ERANGE");
- result = 1;
- }
- else if (this_expect_underflow != (errno == ERANGE))
- {
- puts ("FAIL: underflow from errno differs from expectations");
- result = 1;
- }
- if (support_underflow_exception && got_fe_underflow != this_expect_underflow)
- {
- puts ("FAIL: underflow from exceptions differs from expectations");
- result = 1;
- }
- return result;
+}
+
+#define TEST_STRTOD(FSUF, FTYPE, FTOSTR, LSUF, CSUF) \
+static int \
+test_strto ## FSUF (int i, int rm, const char *mode_name) \
+{ \
+ const char *s = tests[i].s_ ## FSUF; \
+ enum underflow_case c = tests[i].c; \
+ int result = 0; \
+ feclearexcept (FE_ALL_EXCEPT); \
+ errno = 0; \
+ FTYPE d = strto ## FSUF (s, NULL); \
+ int got_errno = errno; \
+ bool got_fe_underflow = test_got_fe_underflow (); \
+ char buf[FSTRLENMAX]; \
+ FTOSTR (buf, sizeof (buf), "%a", d); \
+ printf ("strto" #FSUF \
+ " (%s) (%s) returned %s, errno = %d, " \
+ "%sunderflow exception\n", \
+ s, mode_name, buf, got_errno, \
+ got_fe_underflow ? "" : "no "); \
+ bool this_expect_underflow = expect_underflow (c, rm); \
+ if (got_errno != 0 && got_errno != ERANGE) \
+ { \
+ puts ("FAIL: errno neither 0 nor ERANGE"); \
+ result = 1; \
+ } \
+ else if (this_expect_underflow != (errno == ERANGE)) \
+ { \
+ puts ("FAIL: underflow from errno differs from expectations"); \
+ result = 1; \
+ } \
+ if (support_underflow_exception \
+ && got_fe_underflow != this_expect_underflow) \
+ { \
+ puts ("FAIL: underflow from exceptions " \
+ "differs from expectations"); \
+ result = 1; \
+ } \
+ return result; \
+}
+
+GEN_TEST_STRTOD_FOREACH (TEST_STRTOD)
+
+static int
+test_in_one_mode (size_t i, int rm, const char *mode_name)
+{
+ return STRTOD_TEST_FOREACH (test_strto, i, rm, mode_name);
}
static int
@@ -191,12 +428,12 @@ do_test (void)
#endif
for (size_t i = 0; i < sizeof (tests) / sizeof (tests[0]); i++)
{
- result |= test_in_one_mode (tests[i].s, tests[i].c, fe_tonearest,
+ result |= test_in_one_mode (i, fe_tonearest,
"default rounding mode");
#ifdef FE_DOWNWARD
if (!fesetround (FE_DOWNWARD))
{
- result |= test_in_one_mode (tests[i].s, tests[i].c, FE_DOWNWARD,
+ result |= test_in_one_mode (i, FE_DOWNWARD,
"FE_DOWNWARD");
fesetround (save_round_mode);
}
@@ -204,7 +441,7 @@ do_test (void)
#ifdef FE_TOWARDZERO
if (!fesetround (FE_TOWARDZERO))
{
- result |= test_in_one_mode (tests[i].s, tests[i].c, FE_TOWARDZERO,
+ result |= test_in_one_mode (i, FE_TOWARDZERO,
"FE_TOWARDZERO");
fesetround (save_round_mode);
}
@@ -212,7 +449,7 @@ do_test (void)
#ifdef FE_UPWARD
if (!fesetround (FE_UPWARD))
{
- result |= test_in_one_mode (tests[i].s, tests[i].c, FE_UPWARD,
+ result |= test_in_one_mode (i, FE_UPWARD,
"FE_UPWARD");
fesetround (save_round_mode);
}
diff --git a/stdlib/tst-strtod1i.c b/stdlib/tst-strtod1i.c
index 9d6bb76..44ae026 100644
--- a/stdlib/tst-strtod1i.c
+++ b/stdlib/tst-strtod1i.c
@@ -25,60 +25,91 @@
#include <string.h>
#include <math.h>
-/* Perform a few tests in a locale with thousands separators. */
-static int
-do_test (void)
-{
- static const struct
- {
- const char *loc;
- const char *str;
- double exp;
- ptrdiff_t nread;
- } tests[] =
- {
- { "de_DE.UTF-8", "1,5", 1.5, 3 },
- { "de_DE.UTF-8", "1.5", 1.0, 1 },
- { "de_DE.UTF-8", "1.500", 1500.0, 5 },
- { "de_DE.UTF-8", "36.893.488.147.419.103.232", 0x1.0p65, 26 }
- };
-#define ntests (sizeof (tests) / sizeof (tests[0]))
- size_t n;
- int result = 0;
-
- puts ("\nLocale tests");
+#include "tst-strtod.h"
- for (n = 0; n < ntests; ++n)
- {
- double d;
- char *endp;
+/* This tests internal interfaces, which are only defined for types
+ with distinct ABIs, so disable testing for types without distinct
+ ABIs. */
+#undef IF_FLOAT32
+#define IF_FLOAT32(x)
+#undef IF_FLOAT64
+#define IF_FLOAT64(x)
+#undef IF_FLOAT32X
+#define IF_FLOAT32X(x)
+#undef IF_FLOAT64X
+#define IF_FLOAT64X(x)
+#if !__HAVE_DISTINCT_FLOAT128
+# undef IF_FLOAT128
+# define IF_FLOAT128(x)
+#endif
- if (setlocale (LC_ALL, tests[n].loc) == NULL)
- {
- printf ("cannot set locale %s\n", tests[n].loc);
- result = 1;
- continue;
- }
+#define ntests (sizeof (tests) / sizeof (tests[0]))
- d = __strtod_internal (tests[n].str, &endp, 1);
- if (d != tests[n].exp)
- {
- printf ("strtod(\"%s\") returns %g and not %g\n",
- tests[n].str, d, tests[n].exp);
- result = 1;
- }
- else if (endp - tests[n].str != tests[n].nread)
- {
- printf ("strtod(\"%s\") read %td bytes and not %td\n",
- tests[n].str, endp - tests[n].str, tests[n].nread);
- result = 1;
- }
- }
+/* Perform a few tests in a locale with thousands separators. */
+#define TEST_STRTOD(FSUF, FTYPE, FTOSTR, LSUF, CSUF) \
+static int \
+test_strto ## FSUF (void) \
+{ \
+ static const struct \
+ { \
+ const char *loc; \
+ const char *str; \
+ FTYPE exp; \
+ ptrdiff_t nread; \
+ } tests[] = \
+ { \
+ { "de_DE.UTF-8", "1,5", 1.5 ## LSUF, 3 }, \
+ { "de_DE.UTF-8", "1.5", 1.0 ## LSUF, 1 }, \
+ { "de_DE.UTF-8", "1.500", 1500.0 ## LSUF, 5 }, \
+ { "de_DE.UTF-8", "36.893.488.147.419.103.232", 0x1.0p65 ## LSUF, 26 } \
+ }; \
+ size_t n; \
+ int result = 0; \
+ \
+ puts ("\nLocale tests"); \
+ \
+ for (n = 0; n < ntests; ++n) \
+ { \
+ FTYPE d; \
+ char *endp; \
+ \
+ if (setlocale (LC_ALL, tests[n].loc) == NULL) \
+ { \
+ printf ("cannot set locale %s\n", tests[n].loc); \
+ result = 1; \
+ continue; \
+ } \
+ \
+ d = __strto ## FSUF ## _internal (tests[n].str, &endp, 1); \
+ if (d != tests[n].exp) \
+ { \
+ char buf1[FSTRLENMAX], buf2[FSTRLENMAX]; \
+ FTOSTR (buf1, sizeof (buf1), "%g", d); \
+ FTOSTR (buf2, sizeof (buf2), "%g", tests[n].exp); \
+ printf ("strto" # FSUF "(\"%s\") returns %s and not %s\n", \
+ tests[n].str, buf1, buf2); \
+ result = 1; \
+ } \
+ else if (endp - tests[n].str != tests[n].nread) \
+ { \
+ printf ("strto" # FSUF "(\"%s\") read %td bytes and not %td\n", \
+ tests[n].str, endp - tests[n].str, tests[n].nread); \
+ result = 1; \
+ } \
+ } \
+ \
+ if (result == 0) \
+ puts ("all OK"); \
+ \
+ return result ? EXIT_FAILURE : EXIT_SUCCESS; \
+}
- if (result == 0)
- puts ("all OK");
+GEN_TEST_STRTOD_FOREACH (TEST_STRTOD)
- return result ? EXIT_FAILURE : EXIT_SUCCESS;
+static int
+do_test (void)
+{
+ return STRTOD_TEST_FOREACH (test_strto);
}
#include <support/test-driver.c>
diff --git a/stdlib/tst-strtod2.c b/stdlib/tst-strtod2.c
index a7df82e..d00bc13 100644
--- a/stdlib/tst-strtod2.c
+++ b/stdlib/tst-strtod2.c
@@ -1,43 +1,112 @@
+#include <math.h>
#include <stdio.h>
#include <stdlib.h>
-struct test
-{
- const char *str;
- double result;
- size_t offset;
-} tests[] =
-{
- { "0xy", 0.0, 1 },
- { "0x.y", 0.0, 1 },
- { "0x0.y", 0.0, 4 },
- { "0x.0y", 0.0, 4 },
- { ".y", 0.0, 0 },
- { "0.y", 0.0, 2 },
- { ".0y", 0.0, 2 }
-};
+#include "tst-strtod.h"
+
+#define TEST_STRTOD(FSUF, FTYPE, FTOSTR, LSUF, CSUF) \
+struct test_strto ## FSUF \
+{ \
+ const char *str; \
+ FTYPE result; \
+ size_t offset; \
+} tests_strto ## FSUF[] = \
+{ \
+ { "0xy", 0.0 ## LSUF, 1 }, \
+ { "0x.y", 0.0 ## LSUF, 1 }, \
+ { "0x0.y", 0.0 ## LSUF, 4 }, \
+ { "0x.0y", 0.0 ## LSUF, 4 }, \
+ { ".y", 0.0 ## LSUF, 0 }, \
+ { "0.y", 0.0 ## LSUF, 2 }, \
+ { ".0y", 0.0 ## LSUF, 2 }, \
+ { "1.0e", 1.0 ## LSUF, 3 }, \
+ { "1.0e+", 1.0 ## LSUF, 3 }, \
+ { "1.0e-", 1.0 ## LSUF, 3 }, \
+ { "1.0ex", 1.0 ## LSUF, 3 }, \
+ { "1.0e+x", 1.0 ## LSUF, 3 }, \
+ { "1.0e-x", 1.0 ## LSUF, 3 }, \
+ { "0x1p", 1.0 ## LSUF, 3 }, \
+ { "0x1p+", 1.0 ## LSUF, 3 }, \
+ { "0x1p-", 1.0 ## LSUF, 3 }, \
+ { "0x1px", 1.0 ## LSUF, 3 }, \
+ { "0x1p+x", 1.0 ## LSUF, 3 }, \
+ { "0x1p-x", 1.0 ## LSUF, 3 }, \
+ { "", 0.0 ## LSUF, 0 }, \
+ { ".", 0.0 ## LSUF, 0 }, \
+ { "-", 0.0 ## LSUF, 0 }, \
+ { "-.", 0.0 ## LSUF, 0 }, \
+ { ".e", 0.0 ## LSUF, 0 }, \
+ { "-.e", 0.0 ## LSUF, 0 }, \
+ { " \t", 0.0 ## LSUF, 0 }, \
+ { " \t.", 0.0 ## LSUF, 0 }, \
+ { " \t-", 0.0 ## LSUF, 0 }, \
+ { " \t-.", 0.0 ## LSUF, 0 }, \
+ { " \t.e", 0.0 ## LSUF, 0 }, \
+ { " \t-.e", 0.0 ## LSUF, 0 }, \
+ { " \t\f\r\n\v1", 1.0 ## LSUF, 7 }, \
+ { " \t\f\r\n\v-1.5e2", -150.0 ## LSUF, 12 }, \
+ { "INFx", INFINITY, 3 }, \
+ { "infx", INFINITY, 3 }, \
+ { "INFINITx", INFINITY, 3 }, \
+ { "infinitx", INFINITY, 3 }, \
+ { "INFINITYY", INFINITY, 8 }, \
+ { "infinityy", INFINITY, 8 }, \
+ { "NANx", NAN, 3 }, \
+ { "nanx", NAN, 3 }, \
+ { "NAN(", NAN, 3 }, \
+ { "nan(", NAN, 3 }, \
+ { "NAN(x", NAN, 3 }, \
+ { "nan(x", NAN, 3 }, \
+ { "NAN(x)y", NAN, 6 }, \
+ { "nan(x)y", NAN, 6 }, \
+ { "NAN(*)y", NAN, 3 }, \
+ { "nan(*)y", NAN, 3 } \
+}; \
+ \
+static int \
+compare_strto ## FSUF (FTYPE x, FTYPE y) \
+{ \
+ if (isnan (x) && isnan (y)) \
+ return 1; \
+ return x == y; \
+} \
+ \
+static int \
+test_strto ## FSUF (void) \
+{ \
+ int status = 0; \
+ for (size_t i = 0; \
+ i < sizeof (tests_strto ## FSUF) / sizeof (tests_strto ## FSUF[0]); \
+ ++i) \
+ { \
+ char *ep; \
+ FTYPE r = strto ## FSUF (tests_strto ## FSUF[i].str, &ep); \
+ if (!compare_strto ## FSUF (r, tests_strto ## FSUF[i].result)) \
+ { \
+ char buf1[FSTRLENMAX], buf2[FSTRLENMAX]; \
+ FTOSTR (buf1, sizeof (buf1), "%g", r); \
+ FTOSTR (buf2, sizeof (buf2), "%g", tests_strto ## FSUF[i].result); \
+ printf ("test %zu r = %s, expect %s\n", i, buf1, buf2); \
+ status = 1; \
+ } \
+ if (ep != tests_strto ## FSUF[i].str + tests_strto ## FSUF[i].offset) \
+ { \
+ printf ("test %zu strto" #FSUF \
+ " parsed %tu characters, expected %zu\n", \
+ i, ep - tests_strto ## FSUF[i].str, \
+ tests_strto ## FSUF[i].offset); \
+ status = 1; \
+ } \
+ } \
+ return status; \
+}
+
+GEN_TEST_STRTOD_FOREACH (TEST_STRTOD)
static int
do_test (void)
{
- int status = 0;
- for (size_t i = 0; i < sizeof (tests) / sizeof (tests[0]); ++i)
- {
- char *ep;
- double r = strtod (tests[i].str, &ep);
- if (r != tests[i].result)
- {
- printf ("test %zu r = %g, expect %g\n", i, r, tests[i].result);
- status = 1;
- }
- if (ep != tests[i].str + tests[i].offset)
- {
- printf ("test %zu strtod parsed %tu characters, expected %zu\n",
- i, ep - tests[i].str, tests[i].offset);
- status = 1;
- }
- }
- return status;
+ return STRTOD_TEST_FOREACH (test_strto);
}
#define TEST_FUNCTION do_test ()
diff --git a/stdlib/tst-strtod3.c b/stdlib/tst-strtod3.c
index 23abec1..0d662d8 100644
--- a/stdlib/tst-strtod3.c
+++ b/stdlib/tst-strtod3.c
@@ -3,19 +3,73 @@
#include <stdlib.h>
#include <string.h>
-static const struct
-{
- const char *in;
- const char *out;
- double expected;
-} tests[] =
- {
- { "000,,,e1", ",,,e1", 0.0 },
- { "000e1", "", 0.0 },
- { "000,1e1", ",1e1", 0.0 }
- };
-#define NTESTS (sizeof (tests) / sizeof (tests[0]))
+#include "tst-strtod.h"
+
+/* This tests internal interfaces, which are only defined for types
+ with distinct ABIs, so disable testing for types without distinct
+ ABIs. */
+#undef IF_FLOAT32
+#define IF_FLOAT32(x)
+#undef IF_FLOAT64
+#define IF_FLOAT64(x)
+#undef IF_FLOAT32X
+#define IF_FLOAT32X(x)
+#undef IF_FLOAT64X
+#define IF_FLOAT64X(x)
+#if !__HAVE_DISTINCT_FLOAT128
+# undef IF_FLOAT128
+# define IF_FLOAT128(x)
+#endif
+#define TEST_STRTOD(FSUF, FTYPE, FTOSTR, LSUF, CSUF) \
+static const struct \
+{ \
+ const char *in; \
+ const char *out; \
+ FTYPE expected; \
+} tests_strto ## FSUF[] = \
+ { \
+ { "000,,,e1", ",,,e1", 0.0 ## LSUF }, \
+ { "000e1", "", 0.0 ## LSUF }, \
+ { "000,1e1", ",1e1", 0.0 ## LSUF } \
+ }; \
+ \
+static int \
+test_strto ## FSUF (void) \
+{ \
+ int status = 0; \
+ \
+ for (int i = 0; \
+ i < sizeof (tests_strto ## FSUF) / sizeof (tests_strto ## FSUF[0]); \
+ ++i) \
+ { \
+ char *ep; \
+ FTYPE r = __strto ## FSUF ## _internal (tests_strto ## FSUF[i].in, \
+ &ep, 1); \
+ \
+ if (strcmp (ep, tests_strto ## FSUF[i].out) != 0) \
+ { \
+ printf ("%d: got rest string \"%s\", expected \"%s\"\n", \
+ i, ep, tests_strto ## FSUF[i].out); \
+ status = 1; \
+ } \
+ \
+ if (r != tests_strto ## FSUF[i].expected) \
+ { \
+ char buf1[FSTRLENMAX], buf2[FSTRLENMAX]; \
+ FTOSTR (buf1, sizeof (buf1), "%g", r); \
+ FTOSTR (buf2, sizeof (buf2), "%g", \
+ tests_strto ## FSUF[i].expected); \
+ printf ("%d: got wrong results %s, expected %s\n", \
+ i, buf1, buf2); \
+ status = 1; \
+ } \
+ } \
+ \
+ return status; \
+}
+
+GEN_TEST_STRTOD_FOREACH (TEST_STRTOD)
static int
do_test (void)
@@ -26,29 +80,7 @@ do_test (void)
return 1;
}
- int status = 0;
-
- for (int i = 0; i < NTESTS; ++i)
- {
- char *ep;
- double r = __strtod_internal (tests[i].in, &ep, 1);
-
- if (strcmp (ep, tests[i].out) != 0)
- {
- printf ("%d: got rest string \"%s\", expected \"%s\"\n",
- i, ep, tests[i].out);
- status = 1;
- }
-
- if (r != tests[i].expected)
- {
- printf ("%d: got wrong results %g, expected %g\n",
- i, r, tests[i].expected);
- status = 1;
- }
- }
-
- return status;
+ return STRTOD_TEST_FOREACH (test_strto);
}
#define TEST_FUNCTION do_test ()
diff --git a/stdlib/tst-strtod4.c b/stdlib/tst-strtod4.c
index 6cc4e84..dfd3f05 100644
--- a/stdlib/tst-strtod4.c
+++ b/stdlib/tst-strtod4.c
@@ -3,22 +3,76 @@
#include <stdlib.h>
#include <string.h>
+#include "tst-strtod.h"
+
+/* This tests internal interfaces, which are only defined for types
+ with distinct ABIs, so disable testing for types without distinct
+ ABIs. */
+#undef IF_FLOAT32
+#define IF_FLOAT32(x)
+#undef IF_FLOAT64
+#define IF_FLOAT64(x)
+#undef IF_FLOAT32X
+#define IF_FLOAT32X(x)
+#undef IF_FLOAT64X
+#define IF_FLOAT64X(x)
+#if !__HAVE_DISTINCT_FLOAT128
+# undef IF_FLOAT128
+# define IF_FLOAT128(x)
+#endif
+
#define NNBSP "\xe2\x80\xaf"
-static const struct
-{
- const char *in;
- const char *out;
- double expected;
-} tests[] =
- {
- { "000"NNBSP"000"NNBSP"000", "", 0.0 },
- { "1"NNBSP"000"NNBSP"000,5x", "x", 1000000.5 },
- /* Bug 30964 */
- { "10"NNBSP NNBSP"200", NNBSP NNBSP"200", 10.0 }
- };
-#define NTESTS (sizeof (tests) / sizeof (tests[0]))
+#define TEST_STRTOD(FSUF, FTYPE, FTOSTR, LSUF, CSUF) \
+static const struct \
+{ \
+ const char *in; \
+ const char *out; \
+ FTYPE expected; \
+} tests_strto ## FSUF[] = \
+ { \
+ { "000"NNBSP"000"NNBSP"000", "", 0.0 ## LSUF }, \
+ { "1"NNBSP"000"NNBSP"000,5x", "x", 1000000.5 ## LSUF }, \
+ /* Bug 30964 */ \
+ { "10"NNBSP NNBSP"200", NNBSP NNBSP"200", 10.0 ## LSUF } \
+ }; \
+ \
+static int \
+test_strto ## FSUF (void) \
+{ \
+ int status = 0; \
+ \
+ for (int i = 0; \
+ i < sizeof (tests_strto ## FSUF) / sizeof (tests_strto ## FSUF[0]); \
+ ++i) \
+ { \
+ char *ep; \
+ FTYPE r = __strto ## FSUF ## _internal (tests_strto ## FSUF[i].in, \
+ &ep, 1); \
+ \
+ if (strcmp (ep, tests_strto ## FSUF[i].out) != 0) \
+ { \
+ printf ("%d: got rest string \"%s\", expected \"%s\"\n", \
+ i, ep, tests_strto ## FSUF[i].out); \
+ status = 1; \
+ } \
+ \
+ if (r != tests_strto ## FSUF[i].expected) \
+ { \
+ char buf1[FSTRLENMAX], buf2[FSTRLENMAX]; \
+ FTOSTR (buf1, sizeof (buf1), "%g", r); \
+ FTOSTR (buf2, sizeof (buf2), "%g", \
+ tests_strto ## FSUF[i].expected); \
+ printf ("%d: got wrong results %s, expected %s\n", \
+ i, buf1, buf2); \
+ status = 1; \
+ } \
+ } \
+ \
+ return status; \
+}
+GEN_TEST_STRTOD_FOREACH (TEST_STRTOD)
static int
do_test (void)
@@ -29,29 +83,7 @@ do_test (void)
return 1;
}
- int status = 0;
-
- for (int i = 0; i < NTESTS; ++i)
- {
- char *ep;
- double r = __strtod_internal (tests[i].in, &ep, 1);
-
- if (strcmp (ep, tests[i].out) != 0)
- {
- printf ("%d: got rest string \"%s\", expected \"%s\"\n",
- i, ep, tests[i].out);
- status = 1;
- }
-
- if (r != tests[i].expected)
- {
- printf ("%d: got wrong results %g, expected %g\n",
- i, r, tests[i].expected);
- status = 1;
- }
- }
-
- return status;
+ return STRTOD_TEST_FOREACH (test_strto);
}
#define TEST_FUNCTION do_test ()
diff --git a/stdlib/tst-strtod5.c b/stdlib/tst-strtod5.c
index 29153ec..7eb9b3a 100644
--- a/stdlib/tst-strtod5.c
+++ b/stdlib/tst-strtod5.c
@@ -22,35 +22,75 @@
#include <string.h>
#include <math.h>
+#include "tst-strtod.h"
+
#define NBSP "\xc2\xa0"
-static const struct
-{
- const char *in;
- double expected;
-} tests[] =
- {
- { "0", 0.0 },
- { "000", 0.0 },
- { "-0", -0.0 },
- { "-000", -0.0 },
- { "0,", 0.0 },
- { "-0,", -0.0 },
- { "0,0", 0.0 },
- { "-0,0", -0.0 },
- { "0e-10", 0.0 },
- { "-0e-10", -0.0 },
- { "0,e-10", 0.0 },
- { "-0,e-10", -0.0 },
- { "0,0e-10", 0.0 },
- { "-0,0e-10", -0.0 },
- { "0e-1000000", 0.0 },
- { "-0e-1000000", -0.0 },
- { "0,0e-1000000", 0.0 },
- { "-0,0e-1000000", -0.0 },
- };
-#define NTESTS (sizeof (tests) / sizeof (tests[0]))
+#define TEST_STRTOD(FSUF, FTYPE, FTOSTR, LSUF, CSUF) \
+static const struct \
+{ \
+ const char *in; \
+ FTYPE expected; \
+} tests_strto ## FSUF[] = \
+ { \
+ { "0", 0.0 ## LSUF }, \
+ { "000", 0.0 ## LSUF }, \
+ { "-0", -0.0 ## LSUF }, \
+ { "-000", -0.0 ## LSUF }, \
+ { "0,", 0.0 ## LSUF }, \
+ { "-0,", -0.0 ## LSUF }, \
+ { "0,0", 0.0 ## LSUF }, \
+ { "-0,0", -0.0 ## LSUF }, \
+ { "0e-10", 0.0 ## LSUF }, \
+ { "-0e-10", -0.0 ## LSUF }, \
+ { "0,e-10", 0.0 ## LSUF }, \
+ { "-0,e-10", -0.0 ## LSUF }, \
+ { "0,0e-10", 0.0 ## LSUF }, \
+ { "-0,0e-10", -0.0 ## LSUF }, \
+ { "0e-1000000", 0.0 ## LSUF }, \
+ { "-0e-1000000", -0.0 ## LSUF }, \
+ { "0,0e-1000000", 0.0 ## LSUF }, \
+ { "-0,0e-1000000", -0.0 ## LSUF }, \
+ }; \
+ \
+ \
+static int \
+test_strto ## FSUF (void) \
+{ \
+ int status = 0; \
+ \
+ for (int i = 0; \
+ i < sizeof (tests_strto ## FSUF) / sizeof (tests_strto ## FSUF[0]); \
+ ++i) \
+ { \
+ char *ep; \
+ FTYPE r = strto ## FSUF (tests_strto ## FSUF[i].in, &ep); \
+ \
+ if (*ep != '\0') \
+ { \
+ printf ("%d: got rest string \"%s\", expected \"\"\n", i, ep); \
+ status = 1; \
+ } \
+ \
+ if (r != tests_strto ## FSUF[i].expected \
+ || (copysign ## CSUF (10.0 ## LSUF, r) \
+ != copysign ## CSUF (10.0 ## LSUF, \
+ tests_strto ## FSUF[i].expected))) \
+ { \
+ char buf1[FSTRLENMAX], buf2[FSTRLENMAX]; \
+ FTOSTR (buf1, sizeof (buf1), "%g", r); \
+ FTOSTR (buf2, sizeof (buf2), "%g", \
+ tests_strto ## FSUF[i].expected); \
+ printf ("%d: got wrong results %s, expected %s\n", \
+ i, buf1, buf2); \
+ status = 1; \
+ } \
+ } \
+ \
+ return status; \
+}
+GEN_TEST_STRTOD_FOREACH (TEST_STRTOD)
static int
do_test (void)
@@ -61,29 +101,7 @@ do_test (void)
return 1;
}
- int status = 0;
-
- for (int i = 0; i < NTESTS; ++i)
- {
- char *ep;
- double r = strtod (tests[i].in, &ep);
-
- if (*ep != '\0')
- {
- printf ("%d: got rest string \"%s\", expected \"\"\n", i, ep);
- status = 1;
- }
-
- if (r != tests[i].expected
- || copysign (10.0, r) != copysign (10.0, tests[i].expected))
- {
- printf ("%d: got wrong results %g, expected %g\n",
- i, r, tests[i].expected);
- status = 1;
- }
- }
-
- return status;
+ return STRTOD_TEST_FOREACH (test_strto);
}
#include <support/test-driver.c>
diff --git a/stdlib/tst-strtod5i.c b/stdlib/tst-strtod5i.c
index ee54e34..136aede 100644
--- a/stdlib/tst-strtod5i.c
+++ b/stdlib/tst-strtod5i.c
@@ -16,52 +16,112 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
+/* Defining _LIBC_TEST ensures long double math functions are
+ declared in the headers. */
+#define _LIBC_TEST 1
#include <locale.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
+#include "tst-strtod.h"
+
+/* This tests internal interfaces, which are only defined for types
+ with distinct ABIs, so disable testing for types without distinct
+ ABIs. */
+#undef IF_FLOAT32
+#define IF_FLOAT32(x)
+#undef IF_FLOAT64
+#define IF_FLOAT64(x)
+#undef IF_FLOAT32X
+#define IF_FLOAT32X(x)
+#undef IF_FLOAT64X
+#define IF_FLOAT64X(x)
+#if !__HAVE_DISTINCT_FLOAT128
+# undef IF_FLOAT128
+# define IF_FLOAT128(x)
+#endif
+
#define NNBSP "\xe2\x80\xaf"
-static const struct
-{
- const char *in;
- int group;
- double expected;
-} tests[] =
- {
- { "0", 0, 0.0 },
- { "000", 0, 0.0 },
- { "-0", 0, -0.0 },
- { "-000", 0, -0.0 },
- { "0,", 0, 0.0 },
- { "-0,", 0, -0.0 },
- { "0,0", 0, 0.0 },
- { "-0,0", 0, -0.0 },
- { "0e-10", 0, 0.0 },
- { "-0e-10", 0, -0.0 },
- { "0,e-10", 0, 0.0 },
- { "-0,e-10", 0, -0.0 },
- { "0,0e-10", 0, 0.0 },
- { "-0,0e-10", 0, -0.0 },
- { "0e-1000000", 0, 0.0 },
- { "-0e-1000000", 0, -0.0 },
- { "0,0e-1000000", 0, 0.0 },
- { "-0,0e-1000000", 0, -0.0 },
- { "0", 1, 0.0 },
- { "000", 1, 0.0 },
- { "-0", 1, -0.0 },
- { "-000", 1, -0.0 },
- { "0e-10", 1, 0.0 },
- { "-0e-10", 1, -0.0 },
- { "0e-1000000", 1, 0.0 },
- { "-0e-1000000", 1, -0.0 },
- { "000"NNBSP"000"NNBSP"000", 1, 0.0 },
- { "-000"NNBSP"000"NNBSP"000", 1, -0.0 }
- };
-#define NTESTS (sizeof (tests) / sizeof (tests[0]))
+#define TEST_STRTOD(FSUF, FTYPE, FTOSTR, LSUF, CSUF) \
+static const struct \
+{ \
+ const char *in; \
+ int group; \
+ FTYPE expected; \
+} tests_strto ## FSUF[] = \
+ { \
+ { "0", 0, 0.0 ## LSUF }, \
+ { "000", 0, 0.0 ## LSUF }, \
+ { "-0", 0, -0.0 ## LSUF }, \
+ { "-000", 0, -0.0 ## LSUF }, \
+ { "0,", 0, 0.0 ## LSUF }, \
+ { "-0,", 0, -0.0 ## LSUF }, \
+ { "0,0", 0, 0.0 ## LSUF }, \
+ { "-0,0", 0, -0.0 ## LSUF }, \
+ { "0e-10", 0, 0.0 ## LSUF }, \
+ { "-0e-10", 0, -0.0 ## LSUF }, \
+ { "0,e-10", 0, 0.0 ## LSUF }, \
+ { "-0,e-10", 0, -0.0 ## LSUF }, \
+ { "0,0e-10", 0, 0.0 ## LSUF }, \
+ { "-0,0e-10", 0, -0.0 ## LSUF }, \
+ { "0e-1000000", 0, 0.0 ## LSUF }, \
+ { "-0e-1000000", 0, -0.0 ## LSUF }, \
+ { "0,0e-1000000", 0, 0.0 ## LSUF }, \
+ { "-0,0e-1000000", 0, -0.0 ## LSUF }, \
+ { "0", 1, 0.0 ## LSUF }, \
+ { "000", 1, 0.0 ## LSUF }, \
+ { "-0", 1, -0.0 ## LSUF }, \
+ { "-000", 1, -0.0 ## LSUF }, \
+ { "0e-10", 1, 0.0 ## LSUF }, \
+ { "-0e-10", 1, -0.0 ## LSUF }, \
+ { "0e-1000000", 1, 0.0 ## LSUF }, \
+ { "-0e-1000000", 1, -0.0 ## LSUF }, \
+ { "000"NNBSP"000"NNBSP"000", 1, 0.0 ## LSUF }, \
+ { "-000"NNBSP"000"NNBSP"000", 1, -0.0 ## LSUF } \
+ }; \
+ \
+static int \
+test_strto ## FSUF (void) \
+{ \
+ int status = 0; \
+ \
+ for (int i = 0; \
+ i < sizeof (tests_strto ## FSUF) / sizeof (tests_strto ## FSUF[0]); \
+ ++i) \
+ { \
+ char *ep; \
+ FTYPE r = __strto ## FSUF ## _internal (tests_strto ## FSUF[i].in, \
+ &ep, \
+ tests_strto ## FSUF[i].group); \
+ \
+ if (*ep != '\0') \
+ { \
+ printf ("%d: got rest string \"%s\", expected \"\"\n", i, ep); \
+ status = 1; \
+ } \
+ \
+ if (r != tests_strto ## FSUF[i].expected \
+ || (copysign ## CSUF (10.0 ## LSUF, r) \
+ != copysign ## CSUF (10.0 ## LSUF, \
+ tests_strto ## FSUF[i].expected))) \
+ { \
+ char buf1[FSTRLENMAX], buf2[FSTRLENMAX]; \
+ FTOSTR (buf1, sizeof (buf1), "%g", r); \
+ FTOSTR (buf2, sizeof (buf2), "%g", \
+ tests_strto ## FSUF[i].expected); \
+ printf ("%d: got wrong results %s, expected %s\n", \
+ i, buf1, buf2); \
+ status = 1; \
+ } \
+ } \
+ \
+ return status; \
+}
+GEN_TEST_STRTOD_FOREACH (TEST_STRTOD)
static int
do_test (void)
@@ -72,29 +132,7 @@ do_test (void)
return 1;
}
- int status = 0;
-
- for (int i = 0; i < NTESTS; ++i)
- {
- char *ep;
- double r = __strtod_internal (tests[i].in, &ep, tests[i].group);
-
- if (*ep != '\0')
- {
- printf ("%d: got rest string \"%s\", expected \"\"\n", i, ep);
- status = 1;
- }
-
- if (r != tests[i].expected
- || copysign (10.0, r) != copysign (10.0, tests[i].expected))
- {
- printf ("%d: got wrong results %g, expected %g\n",
- i, r, tests[i].expected);
- status = 1;
- }
- }
-
- return status;
+ return STRTOD_TEST_FOREACH (test_strto);
}
#include <support/test-driver.c>
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index 50f58a6..259ce2e 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -1200,10 +1200,8 @@ extern void _dl_get_tls_static_info (size_t *sizep, size_t *alignp);
extern void _dl_allocate_static_tls (struct link_map *map) attribute_hidden;
-/* These are internal entry points to the two halves of _dl_allocate_tls,
- only used within rtld.c itself at startup time. */
extern void *_dl_allocate_tls_storage (void) attribute_hidden;
-extern void *_dl_allocate_tls_init (void *, bool);
+extern void *_dl_allocate_tls_init (void *result, bool main_thread);
rtld_hidden_proto (_dl_allocate_tls_init)
/* True if the TCB has been set up. */
@@ -1241,13 +1239,7 @@ extern void *_dl_open (const char *name, int mode, const void *caller,
extern int _dl_scope_free (void *) attribute_hidden;
-/* Add module to slot information data. If DO_ADD is false, only the
- required memory is allocated. Must be called with GL
- (dl_load_tls_lock) acquired. If the function has already been called
- for the link map L with !do_add, then this function will not raise
- an exception, otherwise it is possible that it encounters a memory
- allocation failure. */
-extern void _dl_add_to_slotinfo (struct link_map *l, bool do_add)
+extern bool _dl_add_to_slotinfo (struct link_map *l, bool do_add)
attribute_hidden;
/* Update slot information data for at least the generation of the
@@ -1256,6 +1248,20 @@ extern struct link_map *_dl_update_slotinfo (unsigned long int req_modid,
size_t gen)
attribute_hidden;
+/* The last TLS module ID that is initially loaded, plus 1. TLS
+ addresses for modules with IDs lower than that can be obtained from
+ the DTV even if its generation is outdated. */
+extern size_t _dl_tls_initial_modid_limit attribute_hidden attribute_relro;
+
+/* Compute _dl_tls_initial_modid_limit. To be called after initial
+ relocation. */
+void _dl_tls_initial_modid_limit_setup (void) attribute_hidden;
+
+/* Number of threads currently in a TLS update. This is used to
+ detect reentrant __tls_get_addr calls without a per-thread
+ flag. */
+extern unsigned int _dl_tls_threads_in_update attribute_hidden;
+
/* Look up the module's TLS block as for __tls_get_addr,
but never touch anything. Return null if it's not allocated yet. */
extern void *_dl_tls_get_addr_soft (struct link_map *l) attribute_hidden;
diff --git a/sysdeps/powerpc/powerpc64/le/Makefile b/sysdeps/powerpc/powerpc64/le/Makefile
index 5214eb4..ca5e395 100644
--- a/sysdeps/powerpc/powerpc64/le/Makefile
+++ b/sysdeps/powerpc/powerpc64/le/Makefile
@@ -129,6 +129,10 @@ CFLAGS-tst-strtod-round.c += $(type-float128-CFLAGS)
CFLAGS-tst-wcstod-round.c += $(type-float128-CFLAGS)
CFLAGS-tst-strtod-nan-locale.c += $(type-float128-CFLAGS)
CFLAGS-tst-wcstod-nan-locale.c += $(type-float128-CFLAGS)
+CFLAGS-tst-strtod1i.c += $(type-float128-CFLAGS)
+CFLAGS-tst-strtod3.c += $(type-float128-CFLAGS)
+CFLAGS-tst-strtod4.c += $(type-float128-CFLAGS)
+CFLAGS-tst-strtod5i.c += $(type-float128-CFLAGS)
CFLAGS-tst-strtod6.c += $(type-float128-CFLAGS)
CFLAGS-tst-strfrom.c += $(type-float128-CFLAGS)
CFLAGS-tst-strfrom-locale.c += $(type-float128-CFLAGS)
diff --git a/sysdeps/pthread/Makefile b/sysdeps/pthread/Makefile
index f9efb50..04ea565 100644
--- a/sysdeps/pthread/Makefile
+++ b/sysdeps/pthread/Makefile
@@ -282,6 +282,10 @@ tests += \
tst-vfork2x \
# tests
+tests-2.0 += \
+ tst-pthread_kill-exited
+ # tests-2.0
+
tests-time64 += \
tst-abstime-time64 \
tst-cnd-timedwait-time64 \
diff --git a/sysdeps/pthread/tst-setuid3.c b/sysdeps/pthread/tst-setuid3.c
index 83f42a0..3845ab0 100644
--- a/sysdeps/pthread/tst-setuid3.c
+++ b/sysdeps/pthread/tst-setuid3.c
@@ -15,24 +15,19 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
-#include <stdio.h>
#include <errno.h>
#include <pthread.h>
#include <stdbool.h>
#include <unistd.h>
+#include <support/check.h>
+
/* The test must run under a non-privileged user ID. */
static const uid_t test_uid = 1;
static pthread_barrier_t barrier1;
static pthread_barrier_t barrier2;
-#define FAIL(fmt, ...) \
- do { printf ("FAIL: " fmt "\n", __VA_ARGS__); _exit (1); } while (0)
-
-#define FAIL_ERR(fmt, ...) \
- do { printf ("FAIL: " fmt ": %m\n", __VA_ARGS__); _exit (1); } while (0)
-
/* True if x is not a successful return code from pthread_barrier_wait. */
static inline bool
is_invalid_barrier_ret (int x)
@@ -45,10 +40,10 @@ thread_func (void *ctx __attribute__ ((unused)))
{
int ret = pthread_barrier_wait (&barrier1);
if (is_invalid_barrier_ret (ret))
- FAIL ("pthread_barrier_wait (barrier1) (on thread): %d", ret);
+ FAIL_EXIT1 ("pthread_barrier_wait (barrier1) (on thread): %d", ret);
ret = pthread_barrier_wait (&barrier2);
if (is_invalid_barrier_ret (ret))
- FAIL ("pthread_barrier_wait (barrier2) (on thread): %d", ret);
+ FAIL_EXIT1 ("pthread_barrier_wait (barrier2) (on thread): %d", ret);
return NULL;
}
@@ -59,13 +54,13 @@ setuid_failure (int phase)
switch (ret)
{
case 0:
- FAIL ("setuid succeeded unexpectedly in phase %d", phase);
+ FAIL_EXIT1 ("setuid succeeded unexpectedly in phase %d", phase);
case -1:
if (errno != EPERM)
- FAIL_ERR ("setuid phase %d", phase);
+ FAIL_EXIT1 ("setuid phase %d: %m", phase);
break;
default:
- FAIL ("invalid setuid return value in phase %d: %d", phase, ret);
+ FAIL_EXIT1 ("invalid setuid return value in phase %d: %d", phase, ret);
}
}
@@ -74,42 +69,42 @@ do_test (void)
{
if (getuid () == 0)
if (setuid (test_uid) != 0)
- FAIL_ERR ("setuid (%u)", (unsigned) test_uid);
+ FAIL_EXIT1 ("setuid (%u): %m", (unsigned) test_uid);
if (setuid (getuid ()))
- FAIL_ERR ("setuid (%s)", "getuid ()");
+ FAIL_EXIT1 ("setuid (%s): %m", "getuid ()");
setuid_failure (1);
int ret = pthread_barrier_init (&barrier1, NULL, 2);
if (ret != 0)
- FAIL ("pthread_barrier_init (barrier1): %d", ret);
+ FAIL_EXIT1 ("pthread_barrier_init (barrier1): %d", ret);
ret = pthread_barrier_init (&barrier2, NULL, 2);
if (ret != 0)
- FAIL ("pthread_barrier_init (barrier2): %d", ret);
+ FAIL_EXIT1 ("pthread_barrier_init (barrier2): %d", ret);
pthread_t thread;
ret = pthread_create (&thread, NULL, thread_func, NULL);
if (ret != 0)
- FAIL ("pthread_create: %d", ret);
+ FAIL_EXIT1 ("pthread_create: %d", ret);
/* Ensure that the thread is running properly. */
ret = pthread_barrier_wait (&barrier1);
if (is_invalid_barrier_ret (ret))
- FAIL ("pthread_barrier_wait (barrier1): %d", ret);
+ FAIL_EXIT1 ("pthread_barrier_wait (barrier1): %d", ret);
setuid_failure (2);
/* Check success case. */
if (setuid (getuid ()) != 0)
- FAIL_ERR ("setuid (%s)", "getuid ()");
+ FAIL_EXIT1 ("setuid (%s): %m", "getuid ()");
/* Shutdown. */
ret = pthread_barrier_wait (&barrier2);
if (is_invalid_barrier_ret (ret))
- FAIL ("pthread_barrier_wait (barrier2): %d", ret);
+ FAIL_EXIT1 ("pthread_barrier_wait (barrier2): %d", ret);
ret = pthread_join (thread, NULL);
if (ret != 0)
- FAIL ("pthread_join: %d", ret);
+ FAIL_EXIT1 ("pthread_join: %d", ret);
return 0;
}
diff --git a/sysdeps/x86_64/dl-tls.c b/sysdeps/x86_64/dl-tls.c
index 869023b..b3c1e4f 100644
--- a/sysdeps/x86_64/dl-tls.c
+++ b/sysdeps/x86_64/dl-tls.c
@@ -41,7 +41,10 @@ __tls_get_addr_slow (GET_ADDR_ARGS)
dtv_t *dtv = THREAD_DTV ();
size_t gen = atomic_load_acquire (&GL(dl_tls_generation));
- if (__glibc_unlikely (dtv[0].counter != gen))
+ if (__glibc_unlikely (dtv[0].counter != gen)
+ /* See comment in __tls_get_addr in elf/dl-tls.c. */
+ && !(_dl_tls_allocate_active ()
+ && GET_ADDR_MODULE < _dl_tls_initial_modid_limit))
return update_get_addr (GET_ADDR_PARAM, gen);
return tls_get_addr_tail (GET_ADDR_PARAM, dtv, NULL);