diff options
| author | Joseph Myers <josmyers@redhat.com> | 2024-08-27 12:38:01 +0000 |
|---|---|---|
| committer | Arjun Shankar <arjun@redhat.com> | 2024-09-27 17:24:13 +0200 |
| commit | e06153665fa931e4c7d2a3ecc14e5197e96143a7 (patch) | |
| tree | ca9863020bdac8caf15d645812579926b5fb8d28 | |
| parent | 9bc76c7ca4d6022fd588c274d139813f99e04f35 (diff) | |
| download | glibc-e06153665fa931e4c7d2a3ecc14e5197e96143a7.tar.xz glibc-e06153665fa931e4c7d2a3ecc14e5197e96143a7.zip | |
More thoroughly test underflow / errno in tst-strtod-round
Add tests of underflow in tst-strtod-round, and thus also test for
errno being unchanged when there is neither overflow nor underflow.
The errno setting before the function call to test for being unchanged
is adjusted to set errno to 12345 instead of 0, so that any bugs where
strtod sets errno to 0 would be detected.
This doesn't add any new test inputs for tst-strtod-round, and in
particular doesn't cover the edge cases of underflow the way
tst-strtod-underflow does (none of the existing test inputs for
tst-strtod-round actually exercise cases that have underflow with
before-rounding tininess detection but not with after-rounding
tininess detection), but at least it provides some coverage (as per
the recent discussions) that ordinary non-overflowing non-underflowing
inputs to these functions do not set errno.
Tested for x86_64.
(cherry picked from commit d73ed2601b7c3c93c3529149a3d7f7b6177900a8)
| -rw-r--r-- | stdlib/gen-tst-strtod-round.c | 43 | ||||
| -rw-r--r-- | stdlib/tst-strtod-round-data.h | 15486 | ||||
| -rw-r--r-- | stdlib/tst-strtod-round-skeleton.c | 89 |
3 files changed, 7857 insertions, 7761 deletions
diff --git a/stdlib/gen-tst-strtod-round.c b/stdlib/gen-tst-strtod-round.c index e48bf4d6ea..7ce735f81d 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/tst-strtod-round-data.h b/stdlib/tst-strtod-round-data.h index 8899d15f9b..13e62dd2b0 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, f |
