diff options
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/x86/ldbl2mpn.c | 8 | ||||
-rw-r--r-- | sysdeps/x86/tst-ldbl-nonnormal-printf.c | 5 |
2 files changed, 1 insertions, 12 deletions
diff --git a/sysdeps/x86/ldbl2mpn.c b/sysdeps/x86/ldbl2mpn.c index 23afedfb67..ec8464eef7 100644 --- a/sysdeps/x86/ldbl2mpn.c +++ b/sysdeps/x86/ldbl2mpn.c @@ -115,14 +115,6 @@ __mpn_extract_long_double (mp_ptr res_ptr, mp_size_t size, && res_ptr[N - 1] == 0) /* Pseudo zero. */ *expt = 0; - else - /* Unlike other floating point formats, the most significant bit - is explicit and expected to be set for normal numbers. Set it - in case it is cleared in the input. Otherwise, callers will - not be able to produce the expected multi-precision integer - layout by shifting. */ - res_ptr[N - 1] |= (mp_limb_t) 1 << (LDBL_MANT_DIG - 1 - - ((N - 1) * BITS_PER_MP_LIMB)); return N; } diff --git a/sysdeps/x86/tst-ldbl-nonnormal-printf.c b/sysdeps/x86/tst-ldbl-nonnormal-printf.c index 54381ece0b..2b513960a7 100644 --- a/sysdeps/x86/tst-ldbl-nonnormal-printf.c +++ b/sysdeps/x86/tst-ldbl-nonnormal-printf.c @@ -42,10 +42,7 @@ do_test (void) char buf[30]; int ret = snprintf (buf, sizeof (buf), "%Lg", value); TEST_COMPARE (ret, strlen (buf)); - if (strcmp (buf, "nan") != 0) - /* If snprintf does not recognize the non-normal number as a NaN, - it has added the missing explicit MSB. */ - TEST_COMPARE_STRING (buf, "3.02201e-4624"); + TEST_COMPARE_STRING (buf, "nan"); return 0; } |