diff options
author | Paul Zimmermann <Paul.Zimmermann@inria.fr> | 2020-03-30 15:55:55 +0200 |
---|---|---|
committer | Carlos O'Donell <carlos@redhat.com> | 2020-03-31 21:48:54 -0400 |
commit | a9d42c09a327540a99f2eac25a98fd2ad6d0b540 (patch) | |
tree | 2868b4c24e993154324f514af46329e43b2c7d1e /sysdeps | |
parent | 49c3c37651e2d2ec4ff8ce21252bbbc08a9d6639 (diff) | |
download | glibc-a9d42c09a327540a99f2eac25a98fd2ad6d0b540.tar.gz glibc-a9d42c09a327540a99f2eac25a98fd2ad6d0b540.tar.xz glibc-a9d42c09a327540a99f2eac25a98fd2ad6d0b540.zip |
math: Add inputs that yield larger errors for float type (x86_64)
The corner cases included were generated using exhaustive search for all float/binary32 values on x86_64 (comparing to MPFR for correct rounding to nearest). For the j0/j1/y0 functions, only cases with ulp error <= 9 were included. Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/i386/i686/fpu/multiarch/libm-test-ulps | 35 | ||||
-rw-r--r-- | sysdeps/x86_64/fpu/libm-test-ulps | 88 |
2 files changed, 64 insertions, 59 deletions
diff --git a/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps b/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps index d293214fbc..670a8c370a 100644 --- a/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps +++ b/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps @@ -766,7 +766,7 @@ ldouble: 2 Function: "cosh": double: 1 -float: 1 +float: 2 float128: 1 ldouble: 2 @@ -1125,6 +1125,7 @@ ldouble: 5 Function: "exp": double: 1 +float: 1 float128: 1 ldouble: 1 @@ -1250,7 +1251,7 @@ ldouble: 1 Function: "j0": double: 2 -float: 2 +float: 5 float128: 2 ldouble: 2 @@ -1270,13 +1271,13 @@ Function: "j0_upward": double: 3 float: 3 float128: 5 -ldouble: 4 +ldouble: 6 Function: "j1": double: 2 -float: 2 +float: 5 float128: 4 -ldouble: 1 +ldouble: 5 Function: "j1_downward": double: 3 @@ -1575,13 +1576,13 @@ ldouble: 5 Function: "tgamma_downward": double: 6 -float: 5 +float: 7 float128: 5 ldouble: 5 Function: "tgamma_towardzero": double: 6 -float: 5 +float: 7 float128: 5 ldouble: 5 @@ -1607,37 +1608,37 @@ Function: "y0_towardzero": double: 3 float: 3 float128: 3 -ldouble: 5 +ldouble: 6 Function: "y0_upward": double: 3 float: 5 float128: 3 -ldouble: 3 +ldouble: 5 Function: "y1": double: 3 float: 2 -float128: 2 -ldouble: 2 +float128: 5 +ldouble: 3 Function: "y1_downward": double: 3 -float: 4 -float128: 4 +float: 5 +float128: 5 ldouble: 7 Function: "y1_towardzero": double: 3 -float: 2 -float128: 2 +float: 4 +float128: 6 ldouble: 5 Function: "y1_upward": double: 7 float: 3 -float128: 5 -ldouble: 7 +float128: 6 +ldouble: 9 Function: "yn": double: 3 diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps index 7dc9252bc9..196e60d0b9 100644 --- a/sysdeps/x86_64/fpu/libm-test-ulps +++ b/sysdeps/x86_64/fpu/libm-test-ulps @@ -73,7 +73,7 @@ ldouble: 1 Function: "asinh": double: 1 -float: 1 +float: 2 float128: 3 ldouble: 3 @@ -761,6 +761,7 @@ ldouble: 1 Function: "cos": double: 1 +float: 1 float128: 1 ldouble: 1 @@ -804,7 +805,7 @@ float: 1 Function: "cosh": double: 1 -float: 1 +float: 2 float128: 1 ldouble: 2 @@ -1135,7 +1136,7 @@ ldouble: 1 Function: "erfc": double: 3 -float: 2 +float: 3 float128: 2 ldouble: 3 @@ -1158,11 +1159,13 @@ float128: 5 ldouble: 5 Function: "exp": +float: 1 float128: 1 ldouble: 1 Function: "exp10": double: 2 +float: 1 float128: 2 ldouble: 1 @@ -1269,22 +1272,22 @@ ldouble: 4 Function: "gamma": double: 4 -float: 4 +float: 7 ldouble: 4 Function: "gamma_downward": double: 5 -float: 4 +float: 7 ldouble: 7 Function: "gamma_towardzero": double: 5 -float: 4 +float: 6 ldouble: 7 Function: "gamma_upward": double: 5 -float: 5 +float: 6 ldouble: 6 Function: "hypot": @@ -1309,7 +1312,7 @@ ldouble: 1 Function: "j0": double: 2 -float: 2 +float: 8 float128: 2 ldouble: 2 @@ -1320,26 +1323,26 @@ float128: 4 ldouble: 4 Function: "j0_towardzero": -double: 3 -float: 2 +double: 4 +float: 5 float128: 2 ldouble: 5 Function: "j0_upward": -double: 3 -float: 2 +double: 4 +float: 5 float128: 5 -ldouble: 4 +ldouble: 6 Function: "j1": -double: 1 -float: 2 +double: 2 +float: 9 float128: 4 -ldouble: 1 +ldouble: 5 Function: "j1_downward": double: 3 -float: 3 +float: 5 float128: 4 ldouble: 4 @@ -1381,25 +1384,25 @@ ldouble: 5 Function: "lgamma": double: 4 -float: 4 +float: 7 float128: 5 ldouble: 4 Function: "lgamma_downward": double: 5 -float: 4 +float: 7 float128: 8 ldouble: 7 Function: "lgamma_towardzero": double: 5 -float: 4 +float: 6 float128: 5 ldouble: 7 Function: "lgamma_upward": double: 5 -float: 5 +float: 6 float128: 8 ldouble: 6 @@ -1562,6 +1565,7 @@ float: 3 Function: "sin": double: 1 +float: 1 float128: 1 ldouble: 1 @@ -1719,37 +1723,37 @@ ldouble: 4 Function: "tgamma": double: 5 -float: 5 +float: 8 float128: 4 ldouble: 5 Function: "tgamma_downward": double: 5 -float: 5 +float: 7 float128: 5 ldouble: 5 Function: "tgamma_towardzero": double: 5 -float: 5 +float: 7 float128: 5 ldouble: 5 Function: "tgamma_upward": double: 5 -float: 5 +float: 8 float128: 4 ldouble: 5 Function: "y0": -double: 2 -float: 1 +double: 3 +float: 8 float128: 3 ldouble: 1 Function: "y0_downward": double: 3 -float: 4 +float: 6 float128: 4 ldouble: 5 @@ -1757,37 +1761,37 @@ Function: "y0_towardzero": double: 3 float: 3 float128: 3 -ldouble: 5 +ldouble: 6 Function: "y0_upward": double: 3 -float: 5 +float: 6 float128: 3 -ldouble: 3 +ldouble: 5 Function: "y1": -double: 3 -float: 2 -float128: 2 -ldouble: 2 +double: 6 +float: 9 +float128: 5 +ldouble: 3 Function: "y1_downward": double: 3 float: 2 -float128: 4 +float128: 5 ldouble: 7 Function: "y1_towardzero": -double: 3 -float: 2 -float128: 2 +double: 4 +float: 5 +float128: 6 ldouble: 5 Function: "y1_upward": double: 7 -float: 2 -float128: 5 -ldouble: 7 +float: 9 +float128: 6 +ldouble: 9 Function: "yn": double: 3 |