diff options
| author | Joseph Myers <joseph@codesourcery.com> | 2013-11-29 16:31:16 +0000 |
|---|---|---|
| committer | Joseph Myers <joseph@codesourcery.com> | 2013-11-29 16:31:16 +0000 |
| commit | ea3bc4e821e20e70b093c9a33e54f99c79e0d847 (patch) | |
| tree | 822fa8b196e69580a4f4c9fb4eb63bd0ddbe6147 | |
| parent | 0712c9d861f4e861313a7f9fad06609bd1afb263 (diff) | |
| download | glibc-ea3bc4e821e20e70b093c9a33e54f99c79e0d847.tar.xz glibc-ea3bc4e821e20e70b093c9a33e54f99c79e0d847.zip | |
Fix x86 sqrt rounding (bug 14032).
| -rw-r--r-- | ChangeLog | 7 | ||||
| -rw-r--r-- | NEWS | 20 | ||||
| -rw-r--r-- | math/auto-libm-test-in | 57 | ||||
| -rw-r--r-- | math/auto-libm-test-out | 3669 | ||||
| -rw-r--r-- | sysdeps/i386/fpu/e_sqrt.S | 10 | ||||
| -rw-r--r-- | sysdeps/i386/fpu/w_sqrt.c | 8 |
6 files changed, 3761 insertions, 10 deletions
@@ -1,5 +1,12 @@ 2013-11-29 Joseph Myers <joseph@codesourcery.com> + [BZ #14032] + * sysdeps/i386/fpu/e_sqrt.S (__ieee754_sqrt): Do fsqrt with + precision control set to double precision. + * sysdeps/i386/fpu/w_sqrt.c: New file. + * math/auto-libm-test-in: Add more tests. + * math/auto-libm-test-out: Update. + * math/libm-test.inc (sqrt_tonearest_test_data): New variable. (sqrt_test_tonearest): New function. (sqrt_towardzero_test_data): New variable. @@ -10,16 +10,16 @@ Version 2.19 * The following bugs are resolved with this release: 156, 387, 431, 832, 2801, 7003, 9954, 10253, 10278, 11087, 11157, 11214, - 13028, 13982, 13985, 14029, 14143, 14155, 14547, 14699, 14752, 14876, - 14910, 15004, 15048, 15218, 15277, 15308, 15362, 15374, 15400, 15427, - 15483, 15522, 15531, 15532, 15601, 15608, 15609, 15610, 15632, 15640, - 15670, 15672, 15680, 15681, 15723, 15734, 15735, 15736, 15748, 15749, - 15754, 15760, 15763, 15764, 15797, 15799, 15825, 15844, 15847, 15849, - 15855, 15856, 15857, 15859, 15867, 15886, 15887, 15890, 15892, 15893, - 15895, 15897, 15905, 15909, 15917, 15919, 15921, 15923, 15939, 15948, - 15963, 15966, 15985, 15988, 15997, 16032, 16034, 16036, 16037, 16041, - 16055, 16071, 16072, 16074, 16077, 16078, 16103, 16112, 16143, 16144, - 16146, 16150, 16151, 16153, 16167, 16172, 16214, 16245, 16271. + 13028, 13982, 13985, 14029, 14032, 14143, 14155, 14547, 14699, 14752, + 14876, 14910, 15004, 15048, 15218, 15277, 15308, 15362, 15374, 15400, + 15427, 15483, 15522, 15531, 15532, 15601, 15608, 15609, 15610, 15632, + 15640, 15670, 15672, 15680, 15681, 15723, 15734, 15735, 15736, 15748, + 15749, 15754, 15760, 15763, 15764, 15797, 15799, 15825, 15844, 15847, + 15849, 15855, 15856, 15857, 15859, 15867, 15886, 15887, 15890, 15892, + 15893, 15895, 15897, 15905, 15909, 15917, 15919, 15921, 15923, 15939, + 15948, 15963, 15966, 15985, 15988, 15997, 16032, 16034, 16036, 16037, + 16041, 16055, 16071, 16072, 16074, 16077, 16078, 16103, 16112, 16143, + 16144, 16146, 16150, 16151, 16153, 16167, 16172, 16214, 16245, 16271. * The public headers no longer use __unused nor __block. This change is to support compiling programs that are derived from BSD sources and use diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in index 5dc790c692..12cb27de44 100644 --- a/math/auto-libm-test-in +++ b/math/auto-libm-test-in @@ -25,3 +25,60 @@ sqrt 0.25 sqrt 6642.25 sqrt 15190.5625 sqrt 0.75 +sqrt 0x1.fffffffffffffp+1023 +sqrt 0x1.ffffffffffffbp+1023 +sqrt 0x1.ffffffffffff7p+1023 +sqrt 0x1.ffffffffffff3p+1023 +sqrt 0x1.fffffffffffefp+1023 +sqrt 0x1.fffffffffffebp+1023 +sqrt 0x1.fffffffffffe7p+1023 +sqrt 0x1.fffffffffffe3p+1023 +sqrt 0x1.fffffffffffdfp+1023 +sqrt 0x1.fffffffffffdbp+1023 +sqrt 0x1.fffffffffffd7p+1023 +sqrt 0x1.0000000000003p-1022 +sqrt 0x1.0000000000007p-1022 +sqrt 0x1.000000000000bp-1022 +sqrt 0x1.000000000000fp-1022 +sqrt 0x1.0000000000013p-1022 +sqrt 0x1.0000000000017p-1022 +sqrt 0x1.000000000001bp-1022 +sqrt 0x1.000000000001fp-1022 +sqrt 0x1.0000000000023p-1022 +sqrt 0x1.0000000000027p-1022 +sqrt 0x1.000000000002bp-1022 +sqrt 0x1.000000000002fp-1022 +sqrt 0x1.0000000000033p-1022 +sqrt 0x1.0000000000037p-1022 +sqrt 0x1.7167bc36eaa3bp+6 +sqrt 0x1.7570994273ad7p+6 +sqrt 0x1.7dae969442fe6p+6 +sqrt 0x1.7f8444fcf67e5p+6 +sqrt 0x1.8364650e63a54p+6 +sqrt 0x1.85bedd274edd8p+6 +sqrt 0x1.8609cf496ab77p+6 +sqrt 0x1.873849c70a375p+6 +sqrt 0x1.8919c962cbaaep+6 +sqrt 0x1.8de4493e22dc6p+6 +sqrt 0x1.924829a17a288p+6 +sqrt 0x1.92702cd992f12p+6 +sqrt 0x1.92b763a8311fdp+6 +sqrt 0x1.947da013c7293p+6 +sqrt 0x1.9536091c494d2p+6 +sqrt 0x1.61b04c6p-1019 +sqrt 0x1.93789f1p-1018 +sqrt 0x1.a1989b4p-1018 +sqrt 0x1.f93bc9p-1018 +sqrt 0x1.2f675e3p-1017 +sqrt 0x1.a158508p-1017 +sqrt 0x1.cd31f078p-1017 +sqrt 0x1.33b43b08p-1016 +sqrt 0x1.6e66a858p-1016 +sqrt 0x1.8661cbf8p-1016 +sqrt 0x1.bbb221b4p-1016 +sqrt 0x1.c4942f3cp-1016 +sqrt 0x1.dbb258c8p-1016 +sqrt 0x1.57103ea4p-1015 +sqrt 0x1.9b294f88p-1015 +sqrt 0x1.0000000000001p+0 +sqrt 0x1.fffffffffffffp-1 diff --git a/math/auto-libm-test-out b/math/auto-libm-test-out index bdb6bdc8b8..95bdec62eb 100644 --- a/math/auto-libm-test-out +++ b/math/auto-libm-test-out @@ -223,3 +223,3672 @@ sqrt 0.75 = sqrt tonearest ldbl-128ibm 0xcp-4L : 0xd.db3d742c265539d92ba16b83c4p-4L : inexact = sqrt towardzero ldbl-128ibm 0xcp-4L : 0xd.db3d742c265539d92ba16b83c4p-4L : inexact = sqrt upward ldbl-128ibm 0xcp-4L : 0xd.db3d742c265539d92ba16b83c8p-4L : inexact +sqrt 0x1.fffffffffffffp+1023 += sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact += sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+508 : inexact += sqrt tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+508 : inexact += sqrt towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+508 : inexact += sqrt upward dbl-64 0xf.ffffffffffff8p+1020 : 0x1p+512 : inexact += sqrt downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffp+508L : inexact += sqrt tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact += sqrt towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffp+508L : inexact += sqrt upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact += sqrt downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffp+508L : inexact += sqrt tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact += sqrt towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffp+508L : inexact += sqrt upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact += sqrt downward ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbfffffffffffff78p+508L : inexact += sqrt tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbfffffffffffff8p+508L : inexact += sqrt towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbfffffffffffff78p+508L : inexact += sqrt upward ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbfffffffffffff8p+508L : inexact += sqrt downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+508L : inexact += sqrt tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact += sqrt towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+508L : inexact += sqrt upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact +sqrt 0x1.ffffffffffffbp+1023 += sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact += sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward dbl-64 0xf.fffffffffffd8p+1020 : 0xf.fffffffffffe8p+508 : inexact += sqrt tonearest dbl-64 0xf.fffffffffffd8p+1020 : 0xf.fffffffffffe8p+508 : inexact += sqrt towardzero dbl-64 0xf.fffffffffffd8p+1020 : 0xf.fffffffffffe8p+508 : inexact += sqrt upward dbl-64 0xf.fffffffffffd8p+1020 : 0xf.ffffffffffffp+508 : inexact += sqrt downward ldbl-96-intel 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffp+508L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffecp+508L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffp+508L : inexact += sqrt upward ldbl-96-intel 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffecp+508L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffp+508L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffecp+508L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffp+508L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffecp+508L : inexact += sqrt downward ldbl-128 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff378p+508L : inexact += sqrt tonearest ldbl-128 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff38p+508L : inexact += sqrt towardzero ldbl-128 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff378p+508L : inexact += sqrt upward ldbl-128 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff38p+508L : inexact += sqrt downward ldbl-128ibm 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffffp+508L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff4p+508L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffffp+508L : inexact += sqrt upward ldbl-128ibm 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff4p+508L : inexact +sqrt 0x1.ffffffffffff7p+1023 += sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact += sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward dbl-64 0xf.fffffffffffb8p+1020 : 0xf.fffffffffffd8p+508 : inexact += sqrt tonearest dbl-64 0xf.fffffffffffb8p+1020 : 0xf.fffffffffffd8p+508 : inexact += sqrt towardzero dbl-64 0xf.fffffffffffb8p+1020 : 0xf.fffffffffffd8p+508 : inexact += sqrt upward dbl-64 0xf.fffffffffffb8p+1020 : 0xf.fffffffffffep+508 : inexact += sqrt downward ldbl-96-intel 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbffp+508L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdcp+508L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbffp+508L : inexact += sqrt upward ldbl-96-intel 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdcp+508L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbffp+508L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdcp+508L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbffp+508L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdcp+508L : inexact += sqrt downward ldbl-128 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd778p+508L : inexact += sqrt tonearest ldbl-128 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd78p+508L : inexact += sqrt towardzero ldbl-128 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd778p+508L : inexact += sqrt upward ldbl-128 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd78p+508L : inexact += sqrt downward ldbl-128ibm 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd4p+508L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd8p+508L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd4p+508L : inexact += sqrt upward ldbl-128ibm 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd8p+508L : inexact +sqrt 0x1.ffffffffffff3p+1023 += sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact += sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward dbl-64 0xf.fffffffffff98p+1020 : 0xf.fffffffffffc8p+508 : inexact += sqrt tonearest dbl-64 0xf.fffffffffff98p+1020 : 0xf.fffffffffffc8p+508 : inexact += sqrt towardzero dbl-64 0xf.fffffffffff98p+1020 : 0xf.fffffffffffc8p+508 : inexact += sqrt upward dbl-64 0xf.fffffffffff98p+1020 : 0xf.fffffffffffdp+508 : inexact += sqrt downward ldbl-96-intel 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbffp+508L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffffffff98p+1020L : 0xf.fffffffffffccp+508L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbffp+508L : inexact += sqrt upward ldbl-96-intel 0xf.fffffffffff98p+1020L : 0xf.fffffffffffccp+508L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbffp+508L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffffffff98p+1020L : 0xf.fffffffffffccp+508L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbffp+508L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffffffff98p+1020L : 0xf.fffffffffffccp+508L : inexact += sqrt downward ldbl-128 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffab78p+508L : inexact += sqrt tonearest ldbl-128 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffab8p+508L : inexact += sqrt towardzero ldbl-128 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffab78p+508L : inexact += sqrt upward ldbl-128 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffab8p+508L : inexact += sqrt downward ldbl-128ibm 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffa8p+508L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffacp+508L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffa8p+508L : inexact += sqrt upward ldbl-128ibm 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffacp+508L : inexact +sqrt 0x1.fffffffffffefp+1023 += sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact += sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward dbl-64 0xf.fffffffffff78p+1020 : 0xf.fffffffffffb8p+508 : inexact += sqrt tonearest dbl-64 0xf.fffffffffff78p+1020 : 0xf.fffffffffffb8p+508 : inexact += sqrt towardzero dbl-64 0xf.fffffffffff78p+1020 : 0xf.fffffffffffb8p+508 : inexact += sqrt upward dbl-64 0xf.fffffffffff78p+1020 : 0xf.fffffffffffcp+508 : inexact += sqrt downward ldbl-96-intel 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbffp+508L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbcp+508L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbffp+508L : inexact += sqrt upward ldbl-96-intel 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbcp+508L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbffp+508L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbcp+508L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbffp+508L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbcp+508L : inexact += sqrt downward ldbl-128 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6f78p+508L : inexact += sqrt tonearest ldbl-128 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6f8p+508L : inexact += sqrt towardzero ldbl-128 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6f78p+508L : inexact += sqrt upward ldbl-128 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6f8p+508L : inexact += sqrt downward ldbl-128ibm 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6cp+508L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff7p+508L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6cp+508L : inexact += sqrt upward ldbl-128ibm 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff7p+508L : inexact +sqrt 0x1.fffffffffffebp+1023 += sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact += sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact += sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact += sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact += sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact += sqrt downward dbl-64 0xf.fffffffffff58p+1020 : 0xf.fffffffffffa8p+508 : inexact += sqrt tonearest dbl-64 0xf.fffffffffff58p+1020 : 0xf.fffffffffffa8p+508 : inexact += sqrt towardzero dbl-64 0xf.fffffffffff58p+1020 : 0xf.fffffffffffa8p+508 : inexact += sqrt upward dbl-64 0xf.fffffffffff58p+1020 : 0xf.fffffffffffbp+508 : inexact += sqrt downward ldbl-96-intel 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabffp+508L : inexact += sqrt tonearest ldbl-96-intel 0xf.fffffffffff58p+1020L : 0xf.fffffffffffacp+508L : inexact += sqrt towardzero ldbl-96-intel 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabffp+508L : inexact += sqrt upward ldbl-96-intel 0xf.fffffffffff58p+1020L : 0xf.fffffffffffacp+508L : inexact += sqrt downward ldbl-96-m68k 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabffp+508L : inexact += sqrt tonearest ldbl-96-m68k 0xf.fffffffffff58p+1020L : 0xf.fffffffffffacp+508L : inexact += sqrt towardzero ldbl-96-m68k 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabffp+508L : inexact += sqrt upward ldbl-96-m68k 0xf.fffffffffff58p+1020L : 0xf.fffffffffffacp+508L : inexact += sqrt downward ldbl-128 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff2378p+508L : inexact += sqrt tonearest ldbl-128 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff238p+508L : inexact += sqrt towardzero ldbl-128 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff2378p+508L : inexact += sqrt upward ldbl-128 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff238p+508L : inexact += sqrt downward ldbl-128ibm 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff2p+508L : inexact += sqrt tonearest ldbl-128ibm 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff24p+508L : inexact += sqrt towardzero ldbl-128ibm 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff2p+508L : inexact += sqrt upward ldbl-128ibm 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff24p+508L : inexact +sqrt 0x1.fffffffffffe7p+1023 += sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact += sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact += sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact += sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact += sqrt towardzero dbl-64 0xf.fffffp+124 |
