glibc-2.1.2pre2: math failures on PPC
Geoff Keating
geoffk@ozemail.com.au
Sun Aug 15 19:11:00 GMT 1999
I submitted a patch for this some time ago. I think Ulrich hasn't
gotten to it yet. I attach it below.
Ugh. I just noticed I didn't use -p. Sorry.
--
Geoffrey Keating <geoffk@cygnus.com>
===File ~/patches/glibc-53.diff=============================
1999-07-20 Geoff Keating <geoffk@cygnus.com>
* math/libm-test.c: Tweak deltas for a clean run on ppc.
--- glibc-2.1.2/math/libm-test.c~ Tue Jul 20 16:36:05 1999
+++ glibc-2.1.2/math/libm-test.c Tue Jul 20 16:44:17 1999
@@ -5549,7 +5549,7 @@
check_eps ("j1 (2.0) = 0.57672...", FUNC(j1) (2.0), 0.57672480775687338720,
CHOOSE(0, 2e-16, 0));
check_eps ("j1 (8.0) = 0.23463...", FUNC(j1) (8.0), 0.23463634685391462438,
- CHOOSE(0, 0, 1.5e-8));
+ CHOOSE(0, 3e-17, 1.5e-8));
check_eps ("j1 (10.0) = 0.04347...", FUNC(j1) (10.0), 0.043472746168861436670,
CHOOSE(0, 2e-17, 7.5e-9));
}
@@ -5598,7 +5598,7 @@
check_eps ("jn (1, 2.0) = 0.57672...", FUNC(jn) (1, 2.0), 0.57672480775687338720,
CHOOSE(0, 2e-16, 0));
check_eps ("jn (1, 8.0) = 0.23463...", FUNC(jn) (1, 8.0), 0.23463634685391462438,
- CHOOSE(0, 0, 1.5e-8));
+ CHOOSE(0, 3e-17, 1.5e-8));
check_eps ("jn (1, 10.0) = 0.04347...", FUNC(jn) (1, 10.0), 0.043472746168861436670,
CHOOSE(0, 2e-17, 7.5e-9));
@@ -5612,7 +5612,7 @@
check_eps ("jn (3, 0.1) = 2.082...*10^-6", FUNC(jn) (3, 0.1), 0.000020820315754756261429,
CHOOSE(0, 4e-21, 0));
check_eps ("jn (3, 0.7) = 0.00692...", FUNC(jn) (3, 0.7), 0.0069296548267508408077,
- CHOOSE(0, 2e-18, 0));
+ CHOOSE(0, 2e-18, 5e-10));
check_eps ("jn (3, 1.0) = 0.01956...", FUNC(jn) (3, 1.0),
0.019563353982668405919, CHOOSE (0, 0, 1.9e-9));
check_eps ("jn (3, 2.0) = 0.12894...", FUNC(jn) (3, 2.0), 0.12894324947440205110,
@@ -5634,7 +5634,7 @@
check_eps ("jn (10, 1.0) = 2.630...*10^-11", FUNC(jn) (10, 1.0), 0.26306151236874532070e-9,
CHOOSE(0, 0, 5.6e-17));
check_eps ("jn (10, 2.0) = 2.515...*10^-7", FUNC(jn) (10, 2.0), 0.25153862827167367096e-6,
- CHOOSE(0, 2e-22, 5.7e-14));
+ CHOOSE(0, 2e-22, 9e-14));
check_eps ("jn (10, 10.0) = 0.20748...", FUNC(jn) (10, 10.0), 0.20748610663335885770,
CHOOSE(0, 2e-16, 1.4e-7));
}
@@ -5659,9 +5659,9 @@
check_eps ("y0 (0.7) = -0.19066...", FUNC(y0) (0.7), -0.19066492933739506743,
CHOOSE(0, 6e-17, 1.5e-8));
check_eps ("y0 (1.0) = 0.08825...", FUNC(y0) (1.0), 0.088256964215676957983,
- CHOOSE(0, 2e-17, 7.5e-9));
+ CHOOSE(0, 3e-17, 7.5e-9));
check_eps ("y0 (1.5) = 0.38244...", FUNC(y0) (1.5), 0.38244892379775884396,
- CHOOSE(0, 6e-17, 3.0e-8));
+ CHOOSE(0, 1.2e-16, 3.0e-8));
check_eps ("y0 (2.0) = 0.51037...", FUNC(y0) (2.0), 0.51037567264974511960,
CHOOSE(0, 2e-16, 6e-8));
check_eps ("y0 (8.0) = 0.22352...", FUNC(y0) (8.0), 0.22352148938756622053,
@@ -5697,7 +5697,7 @@
check_eps ("y1 (2.0) = -0.10703...", FUNC(y1) (2.0), -0.10703243154093754689,
CHOOSE(0, 2e-17, 1.5e-8));
check_eps ("y1 (8.0) = -0.15806...", FUNC(y1) (8.0), -0.15806046173124749426,
- CHOOSE(0, 0, 3.0e-8));
+ CHOOSE(0, 3e-17, 3.0e-8));
check_eps ("y1 (10.0) = 0.24901...", FUNC(y1) (10.0), 0.24901542420695388392,
CHOOSE(0, 9e-17, 3.0e-8));
}
@@ -5724,9 +5724,9 @@
check_eps ("yn (0, 0.7) = -0.19066...", FUNC(yn) (0, 0.7), -0.19066492933739506743,
CHOOSE(0, 6e-17, 1.2e-7));
check_eps ("yn (0, 1.0) = 0.08825...", FUNC(yn) (0, 1.0), 0.088256964215676957983,
- CHOOSE(0, 2e-17, 3e-8));
+ CHOOSE(0, 3e-17, 3e-8));
check_eps ("yn (0, 1.5) = 0.38244...", FUNC(yn) (0, 1.5), 0.38244892379775884396,
- CHOOSE(0, 6e-17, 3e-8));
+ CHOOSE(0, 1.2e-16, 3e-8));
check_eps ("yn (0, 2.0) = 0.51037...", FUNC(yn) (0, 2.0), 0.51037567264974511960,
CHOOSE(0, 2e-16, 6e-8));
check_eps ("yn (0, 8.0) = 0.22352...", FUNC(yn) (0, 8.0), 0.22352148938756622053,
@@ -5751,7 +5751,7 @@
check_eps ("yn (1, 2.0) = -0.10703...", FUNC(yn) (1, 2.0), -0.10703243154093754689,
CHOOSE(0, 2e-17, 2e-8));
check_eps ("yn (1, 8.0) = -0.15806...", FUNC(yn) (1, 8.0), -0.15806046173124749426,
- CHOOSE(0, 0, 3e-8));
+ CHOOSE(0, 3e-17, 3e-8));
check_eps ("yn (1, 10.0) = 0.24901...", FUNC(yn) (1, 10.0), 0.24901542420695388392,
CHOOSE(0, 9e-17, 3e-8));
@@ -5778,11 +5778,11 @@
check_eps ("yn (10, 0.7) = -4.244...*10^9", FUNC(yn) (10, 0.7), -0.42447194260703866924e10,
CHOOSE(0, 3e-6, 8e2));
check_eps ("yn (10, 1.0) = -1.216...*10^8", FUNC(yn) (10, 1.0), -0.12161801427868918929e9,
- CHOOSE(0, 0, 9));
+ CHOOSE(0, 0, 16));
check_eps ("yn (10, 2.0) = -129184.5...", FUNC(yn) (10, 2.0), -129184.54220803928264,
- CHOOSE(0, 3e-11, 8e-3));
+ CHOOSE(0, 4.4e-11, 8e-3));
check_eps ("yn (10, 10.0) = -0.35981...", FUNC(yn) (10, 10.0), -0.35981415218340272205,
- CHOOSE(0, 6e-17, 3e-8));
+ CHOOSE(0, 1.2e-16, 3e-8));
}
============================================================
More information about the Libc-alpha
mailing list