aboutsummaryrefslogtreecommitdiff
path: root/math/auto-libm-test-in
diff options
context:
space:
mode:
authorPaul Zimmermann <Paul.Zimmermann@inria.fr>2020-03-30 15:55:55 +0200
committerCarlos O'Donell <carlos@redhat.com>2020-03-31 21:48:54 -0400
commita9d42c09a327540a99f2eac25a98fd2ad6d0b540 (patch)
tree2868b4c24e993154324f514af46329e43b2c7d1e /math/auto-libm-test-in
parent49c3c37651e2d2ec4ff8ce21252bbbc08a9d6639 (diff)
downloadglibc-a9d42c09a327540a99f2eac25a98fd2ad6d0b540.zip
glibc-a9d42c09a327540a99f2eac25a98fd2ad6d0b540.tar.gz
glibc-a9d42c09a327540a99f2eac25a98fd2ad6d0b540.tar.bz2
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 'math/auto-libm-test-in')
-rw-r--r--math/auto-libm-test-in24
1 files changed, 24 insertions, 0 deletions
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
index f36fea0..749eb34 100644
--- a/math/auto-libm-test-in
+++ b/math/auto-libm-test-in
@@ -371,6 +371,8 @@ asinh -0x6.e26358p-4
asinh 0x6.c92c08p-4
asinh 0x1p-500
asinh 0x1p-5000
+# the next value generates larger error bounds on x86_64 (binary32)
+asinh 0xf.96c69p-8
asinh min
asinh -min
asinh min_subnorm
@@ -4421,6 +4423,8 @@ cos 0x3.042d88p+0
cos 0x1.8475e5afd4481p+0
cos 1.57079697
cos -1.57079697
+# the next value generates larger error bounds on x86_64 (binary32)
+cos 0x2.3c6ef4p-12
cosh 0
cosh -0
@@ -4482,6 +4486,8 @@ cosh 0x2.c5d37700c6bb03a6c24b6c9b494cp+12
cosh 0x2.c5d37700c6bb03a6c24b6c9b494ep+12
cosh -0x2.c5d37700c6bb03a6c24b6c9b494cp+12
cosh -0x2.c5d37700c6bb03a6c24b6c9b494ep+12
+# the next value generates larger error bounds on x86_64 (binary32)
+cosh 0x5.8bfe6p+4
cpow 1 0 0 0 ignore-zero-inf-sign
cpow 2 0 10 0 ignore-zero-inf-sign
@@ -4982,6 +4988,8 @@ erfc 0x6.a8a0561d8bbe942p+4
erfc 0x6.a8a0561d8bbe9428p+4
erfc 0x6.a893032db905274042fb05c665dcp+4
erfc 0x6.a893032db905274042fb05c665ep+4
+# the next value generates larger error bounds on x86_64 (binary32)
+erfc 0xd.03d06p-4
erfc min
erfc -min
erfc min_subnorm
@@ -5096,6 +5104,8 @@ exp 0x3.248524p+0
exp 0x1.f0b362p+0
exp 0xd.89746a799ac4eedp+0
exp -0x6.58b64p-4
+# the next value generates larger error bounds on x86_64 (binary32)
+exp 0x1.fefe02p-16
exp10 0
exp10 -0
@@ -5159,6 +5169,8 @@ exp10 0x1.34413509f79fef311f12b35816f9p+12
exp10 0x1.34413509f79fef311f12b35816fap+12
exp10 -0x1.343793004f503231a589bac27c39p+12
exp10 -0x1.343793004f503231a589bac27c38p+12
+# the next value generates larger error bounds on x86_64 (binary32)
+exp10 -0xa.6f431p+0
exp10 min
exp10 -min
exp10 min_subnorm
@@ -5734,6 +5746,8 @@ j0 -0x1.001000001p+593
j0 0x1p1023
j0 0x1p16382
j0 0x1p16383
+# the next value generates larger error bounds on x86_64 (binary32)
+j0 0x2.602774p+0
j1 -1.0
j1 0.0
@@ -5765,6 +5779,8 @@ j1 0x1p-60
j1 0x1p-100
j1 0x1p-600
j1 0x1p-10000
+# the next value generates larger error bounds on x86_64 (binary32)
+j1 0x3.ae4b2p+0
j1 min
j1 -min
j1 min_subnorm
@@ -5903,6 +5919,8 @@ lgamma 0x1p-16445
lgamma -0x1p-16445
lgamma 0x1p-16494
lgamma -0x1p-16494
+# the next value generates larger error bounds on x86_64 (binary32)
+lgamma -0x3.ec4298p+0
# Values +/- 10ulp from overflow threshold. (Values very close to
# overflow threshold produce results very close of that threshold,
@@ -7205,6 +7223,8 @@ sin 0x6.287cc8749212e72p+0
sin -0x1.02e34cp+0
sin 0xf.f0274p+4
sin 0x3.042d88p+0
+# the next value generates larger error bounds on x86_64 (binary32)
+sin 0x1.d12ed2p-12
sin max
sin -max
sin min
@@ -8159,6 +8179,8 @@ tgamma -0xa.ccfcep+0
tgamma -0x9.418c8p+0
tgamma -0x6.ce9158p+0
tgamma -0xd.cbf53d0e7d06p+0
+# the next value generates larger error bounds on x86_64 (binary32)
+tgamma -0x3.0aa534p+0
y0 0.125
y0 0.75
@@ -8185,6 +8207,8 @@ y0 0x1p-100
y0 0x1p-110
y0 0x1p-600
y0 0x1p-10000
+# the next value generates larger error bounds on x86_64 (binary32)
+y0 0xd.3432bp-4
y0 min
y0 min_subnorm