This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: glibc 2.1.97



rth@twiddle.net said:
> Not yet.  I was hoping that the asin fix would cure this one as well,
> but alas... 

In the meantime, I've had good success (compiling glibc-2.2) with:
$ uname -a
Linux ludwig-alpha 2.4.0-test9 #7 Tue Oct 17 13:42:13 CEST 2000 alpha unknown
(Machine is a PC164LX, alpha ev56)

$ gcc -v
Reading specs from /usr/lib/gcc-lib/alpha-redhat-linux/2.96/specs
gcc version 2.96 20000920 (experimental)

$ ld -V
GNU ld version 2.10.91 (with BFD 2.10.0.33)
  Supported emulations:
   elf64alpha
   alpha

CFLAGS="-O2 -mcpu=ev56 -pipe"


It even seems to have compiled __printf_fphex correctly...

After applying the attached patch to sysdeps/alpha/fpu/libm-test-ulps, make 
check passes cleanly.

Thanks for all the hard work!

Cheers,
					Christian

--- libc/sysdeps/alpha/fpu/libm-test-ulps.dist	Fri Oct 27 11:29:27 2000
+++ libc/sysdeps/alpha/fpu/libm-test-ulps	Fri Nov 10 14:22:26 2000
@@ -1,5 +1,10 @@
 # Begin of automatic generation
 
+# acos
+Test "acos (0.7) == 0.79539883018414355549096833892476432":
+double: 4
+idouble: 4
+
 # asin
 Test "asin (-0.5) == -pi/6":
 float: 2
@@ -7,10 +12,10 @@ ifloat: 2
 Test "asin (0.5) == pi/6":
 float: 2
 ifloat: 2
-Test "asin (0.7) == 0.7753974966107530637":
-double: 1
+Test "asin (0.7) == 0.77539749661075306374035335271498708":
+double: 4
 float: 2
-idouble: 1
+idouble: 4
 ifloat: 2
 
 # atanh
@@ -20,25 +25,41 @@ idouble: 1
 
 # cabs
 Test "cabs (-0.7 + 12.4 i) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "cabs (-0.7 - 12.4 i) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "cabs (-12.4 + 0.7 i) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "cabs (-12.4 - 0.7 i) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "cabs (0.7 + 1.2 i) == 1.3892443989449804508432547041028554":
-double: 1
-idouble: 1
+double: 62
+idouble: 62
 Test "cabs (0.7 + 12.4 i) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 
 # cacos
+Test "Real part of: cacos (-2 - 3 i) == 2.1414491111159960199 + 1.9833870299165354323 i":
+double: 5
+idouble: 5
+Test "Imaginary part of: cacos (-2 - 3 i) == 2.1414491111159960199 + 1.9833870299165354323 i":
+double: 12
+idouble: 12
 Test "Real part of: cacos (0.7 + 1.2 i) == 1.1351827477151551089 - 1.0927647857577371459 i":
 double: 1
 float: 1
@@ -50,14 +71,14 @@ ifloat: 1
 
 # cacosh
 Test "Real part of: cacosh (-2 - 3 i) == -1.9833870299165354323 + 2.1414491111159960199 i":
-double: 1
+double: 723
 float: 7
-idouble: 1
+idouble: 723
 ifloat: 7
 Test "Imaginary part of: cacosh (-2 - 3 i) == -1.9833870299165354323 + 2.1414491111159960199 i":
-double: 1
+double: 4
 float: 3
-idouble: 1
+idouble: 4
 ifloat: 3
 Test "Real part of: cacosh (0.7 + 1.2 i) == 1.0927647857577371459 + 1.1351827477151551089 i":
 double: 1
@@ -66,6 +87,12 @@ idouble: 1
 ifloat: 1
 
 # casin
+Test "Real part of: casin (-2 - 3 i) == -0.5706527843210994007 - 1.9833870299165354323 i":
+double: 19
+idouble: 19
+Test "Imaginary part of: casin (-2 - 3 i) == -0.5706527843210994007 - 1.9833870299165354323 i":
+double: 12
+idouble: 12
 Test "Real part of: casin (0.7 + 1.2 i) == 0.4356135790797415103 + 1.0927647857577371459 i":
 double: 3
 float: 2
@@ -77,20 +104,22 @@ ifloat: 1
 
 # casinh
 Test "Real part of: casinh (-2 - 3 i) == -1.9686379257930962917 - 0.9646585044076027920 i":
-double: 5
+double: 72
 float: 1
-idouble: 5
+idouble: 72
 ifloat: 1
 Test "Imaginary part of: casinh (-2 - 3 i) == -1.9686379257930962917 - 0.9646585044076027920 i":
-double: 3
+double: 5
 float: 6
-idouble: 3
+idouble: 5
 ifloat: 6
 Test "Real part of: casinh (0.7 + 1.2 i) == 0.9786545955936738768 + 0.9113541895315601156 i":
-double: 1
-idouble: 1
+double: 6
+idouble: 6
 Test "Imaginary part of: casinh (0.7 + 1.2 i) == 0.9786545955936738768 + 0.9113541895315601156 i":
+double: 43
 float: 1
+idouble: 43
 ifloat: 1
 
 # catan
@@ -164,16 +193,19 @@ idouble: 1
 Test "Imaginary part of: cexp (-2.0 - 3.0 i) == -0.13398091492954261346140525546115575 - 0.019098516261135196432576240858800925 i":
 float: 1
 ifloat: 1
-Test "Real part of: cexp (0.7 + 1.2 i) == 0.7296989091503236012 + 1.8768962328348102821 i":
+Test "Real part of: cexp (0.7 + 1.2 i) == 0.72969890915032360123451688642930727 + 1.8768962328348102821139467908203072 i":
 double: 1
 float: 1
 idouble: 1
 ifloat: 1
-Test "Imaginary part of: cexp (0.7 + 1.2 i) == 0.7296989091503236012 + 1.8768962328348102821 i":
+Test "Imaginary part of: cexp (0.7 + 1.2 i) == 0.72969890915032360123451688642930727 + 1.8768962328348102821139467908203072 i":
 float: 1
 ifloat: 1
 
 # clog
+Test "Real part of: clog (-2 - 3 i) == 1.2824746787307683680 - 2.1587989303424641704 i":
+double: 5
+idouble: 5
 Test "Imaginary part of: clog (-2 - 3 i) == 1.2824746787307683680 - 2.1587989303424641704 i":
 double: 1
 float: 3
@@ -187,6 +219,9 @@ ifloat: 1
 Test "Imaginary part of: clog10 (-0 - inf i) == inf - pi/2*log10(e) i":
 float: 1
 ifloat: 1
+Test "Real part of: clog10 (-2 - 3 i) == 0.5569716761534183846 - 0.9375544629863747085 i":
+double: 5
+idouble: 5
 Test "Imaginary part of: clog10 (-2 - 3 i) == 0.5569716761534183846 - 0.9375544629863747085 i":
 double: 1
 float: 5
@@ -217,9 +252,9 @@ Test "Imaginary part of: clog10 (0 - inf
 float: 1
 ifloat: 1
 Test "Real part of: clog10 (0.7 + 1.2 i) == 0.1427786545038868803 + 0.4528483579352493248 i":
-double: 1
+double: 156
 float: 1
-idouble: 1
+idouble: 156
 ifloat: 1
 Test "Imaginary part of: clog10 (0.7 + 1.2 i) == 0.1427786545038868803 + 0.4528483579352493248 i":
 double: 1
@@ -238,7 +273,7 @@ float: 1
 ifloat: 1
 
 # cos
-Test "cos (0.7) == 0.7648421872844884262":
+Test "cos (0.7) == 0.76484218728448842625585999019186495":
 double: 1
 float: 1
 idouble: 1
@@ -261,12 +296,14 @@ ifloat: 0.3667
 
 # cpow
 Test "Real part of: cpow (2 + 3 i, 4 + 0 i) == -119.0 - 120.0 i":
-double: 1
+double: 37
 float: 4
-idouble: 1
+idouble: 37
 ifloat: 4
 Test "Imaginary part of: cpow (2 + 3 i, 4 + 0 i) == -119.0 - 120.0 i":
+double: 36
 float: 2
+idouble: 36
 ifloat: 2
 Test "Imaginary part of: cpow (e + 0 i, 0 + 2 * M_PIl i) == 1.0 + 0.0 i":
 double: 2
@@ -292,18 +329,30 @@ ifloat: 1
 
 # csqrt
 Test "Real part of: csqrt (-2 + 3 i) == 0.89597747612983812471573375529004348 + 1.6741492280355400404480393008490519 i":
+double: 3
 float: 1
+idouble: 3
 ifloat: 1
+Test "Imaginary part of: csqrt (-2 + 3 i) == 0.89597747612983812471573375529004348 + 1.6741492280355400404480393008490519 i":
+double: 2
+idouble: 2
 Test "Real part of: csqrt (-2 - 3 i) == 0.89597747612983812471573375529004348 - 1.6741492280355400404480393008490519 i":
+double: 3
 float: 1
+idouble: 3
 ifloat: 1
+Test "Imaginary part of: csqrt (-2 - 3 i) == 0.89597747612983812471573375529004348 - 1.6741492280355400404480393008490519 i":
+double: 2
+idouble: 2
 Test "Real part of: csqrt (0.7 + 1.2 i) == 1.022067610030026450706487883081139 + 0.58704531296356521154977678719838035 i":
-double: 1
+double: 15
 float: 1
-idouble: 1
+idouble: 15
 ifloat: 1
 Test "Imaginary part of: csqrt (0.7 + 1.2 i) == 1.022067610030026450706487883081139 + 0.58704531296356521154977678719838035 i":
+double: 18
 float: 1
+idouble: 18
 ifloat: 1
 
 # ctan
@@ -363,7 +412,7 @@ double: 2
 float: 1
 idouble: 2
 ifloat: 1
-Test "exp10 (0.7) == 5.0118723362727228500":
+Test "exp10 (0.7) == 5.0118723362727228500155418688494574":
 float: 1
 ifloat: 1
 Test "exp10 (3) == 1000":
@@ -401,31 +450,47 @@ ifloat: 1
 
 # hypot
 Test "hypot (-0.7, -12.4) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "hypot (-0.7, 12.4) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "hypot (-12.4, -0.7) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "hypot (-12.4, 0.7) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "hypot (0.7, -12.4) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "hypot (0.7, 1.2) == 1.3892443989449804508432547041028554":
-double: 1
-idouble: 1
+double: 62
+idouble: 62
 Test "hypot (0.7, 12.4) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "hypot (12.4, -0.7) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 Test "hypot (12.4, 0.7) == 12.419742348374220601176836866763271":
+double: 144
 float: 1
+idouble: 144
 ifloat: 1
 
 # j0
@@ -435,10 +500,14 @@ float: 1
 idouble: 2
 ifloat: 1
 Test "j0 (2.0) == 0.22389077914123566805":
+double: 137
 float: 2
+idouble: 137
 ifloat: 2
 Test "j0 (8.0) == 0.17165080713755390609":
+double: 105
 float: 1
+idouble: 105
 ifloat: 1
 
 # j1
@@ -446,11 +515,11 @@ Test "j1 (10.0) == 0.0434727461688614366
 float: 2
 ifloat: 2
 Test "j1 (2.0) == 0.57672480775687338720":
-double: 1
-idouble: 1
+double: 89
+idouble: 89
 Test "j1 (8.0) == 0.23463634685391462438":
-double: 1
-idouble: 1
+double: 144
+idouble: 144
 
 # jn
 Test "jn (0, 10.0) == -0.24593576445134833520":
@@ -459,20 +528,24 @@ float: 1
 idouble: 2
 ifloat: 1
 Test "jn (0, 2.0) == 0.22389077914123566805":
+double: 137
 float: 2
+idouble: 137
 ifloat: 2
 Test "jn (0, 8.0) == 0.17165080713755390609":
+double: 105
 float: 1
+idouble: 105
 ifloat: 1
 Test "jn (1, 10.0) == 0.043472746168861436670":
 float: 2
 ifloat: 2
 Test "jn (1, 2.0) == 0.57672480775687338720":
-double: 1
-idouble: 1
+double: 89
+idouble: 89
 Test "jn (1, 8.0) == 0.23463634685391462438":
-double: 1
-idouble: 1
+double: 144
+idouble: 144
 Test "jn (10, 0.1) == 0.26905328954342155795e-19":
 double: 6
 float: 4
@@ -489,7 +562,9 @@ float: 3
 idouble: 4
 ifloat: 3
 Test "jn (10, 2.0) == 0.25153862827167367096e-6":
+double: 81
 float: 4
+idouble: 81
 ifloat: 4
 Test "jn (3, 0.1) == 0.000020820315754756261429":
 double: 1
@@ -503,9 +578,9 @@ float: 1
 idouble: 3
 ifloat: 1
 Test "jn (3, 2.0) == 0.12894324947440205110":
-double: 1
+double: 77
 float: 2
-idouble: 1
+idouble: 77
 ifloat: 2
 
 # lgamma
@@ -552,7 +627,7 @@ idouble: 1
 ifloat: 1
 
 # sincos
-Test "sincos (0.7, &sin_res, &cos_res) puts 0.76484218728448842626 in cos_res":
+Test "sincos (0.7, &sin_res, &cos_res) puts 0.76484218728448842625585999019186495 in cos_res":
 double: 1
 float: 1
 idouble: 1
@@ -562,7 +637,7 @@ double: 1
 float: 0.5
 idouble: 1
 ifloat: 0.5
-Test "sincos (M_PI_6l*2.0, &sin_res, &cos_res) puts 0.866025403784438646764 in sin_res":
+Test "sincos (M_PI_6l*2.0, &sin_res, &cos_res) puts 0.86602540378443864676372317075293616 in sin_res":
 double: 1
 float: 1
 idouble: 1
@@ -572,7 +647,7 @@ double: 0.2758
 float: 0.3667
 idouble: 0.2758
 ifloat: 0.3667
-Test "sincos (pi/6, &sin_res, &cos_res) puts 0.866025403784438646764 in cos_res":
+Test "sincos (pi/6, &sin_res, &cos_res) puts 0.86602540378443864676372317075293616 in cos_res":
 float: 1
 ifloat: 1
 
@@ -583,6 +658,14 @@ float: 1
 idouble: 1
 ifloat: 1
 
+# sqrt
+Test "sqrt (15239.9025) == 123.45":
+double: 26
+idouble: 26
+Test "sqrt (2) == M_SQRT2l":
+double: 108
+idouble: 108
+
 # tan
 Test "tan (pi/4) == 1":
 double: 0.5
@@ -629,10 +712,13 @@ ifloat: 1
 Test "y0 (10.0) == 0.055671167283599391424":
 float: 1
 ifloat: 1
+Test "y0 (2.0) == 0.51037567264974511960":
+double: 78
+idouble: 78
 Test "y0 (8.0) == 0.22352148938756622053":
-double: 1
+double: 138
 float: 1
-idouble: 1
+idouble: 138
 ifloat: 1
 
 # y1
@@ -653,14 +739,14 @@ float: 1
 idouble: 3
 ifloat: 1
 Test "y1 (2.0) == -0.10703243154093754689":
-double: 1
+double: 130
 float: 1
-idouble: 1
+idouble: 130
 ifloat: 1
 Test "y1 (8.0) == -0.15806046173124749426":
-double: 1
+double: 96
 float: 2
-idouble: 1
+idouble: 96
 ifloat: 2
 
 # yn
@@ -682,10 +768,13 @@ ifloat: 1
 Test "yn (0, 10.0) == 0.055671167283599391424":
 float: 1
 ifloat: 1
+Test "yn (0, 2.0) == 0.51037567264974511960":
+double: 78
+idouble: 78
 Test "yn (0, 8.0) == 0.22352148938756622053":
-double: 1
+double: 138
 float: 1
-idouble: 1
+idouble: 138
 ifloat: 1
 Test "yn (1, 0.1) == -6.4589510947020269877":
 double: 1
@@ -704,14 +793,14 @@ float: 1
 idouble: 3
 ifloat: 1
 Test "yn (1, 2.0) == -0.10703243154093754689":
-double: 1
+double: 130
 float: 1
-idouble: 1
+idouble: 130
 ifloat: 1
 Test "yn (1, 8.0) == -0.15806046173124749426":
-double: 1
+double: 96
 float: 2
-idouble: 1
+idouble: 96
 ifloat: 2
 Test "yn (10, 0.1) == -0.11831335132045197885e19":
 double: 2
@@ -730,8 +819,8 @@ float: 1
 idouble: 1
 ifloat: 1
 Test "yn (10, 2.0) == -129184.54220803928264":
-double: 2
-idouble: 2
+double: 151
+idouble: 151
 Test "yn (3, 0.1) == -5099.3323786129048894":
 double: 1
 float: 1
@@ -748,14 +837,18 @@ float: 1
 idouble: 1
 ifloat: 1
 Test "yn (3, 2.0) == -1.1277837768404277861":
-double: 1
-idouble: 1
+double: 85
+idouble: 85
 
 # Maximal error of functions:
+Function: "acos":
+double: 4
+idouble: 4
+
 Function: "asin":
-double: 1
+double: 4
 float: 2
-idouble: 1
+idouble: 4
 ifloat: 2
 
 Function: "atanh":
@@ -763,53 +856,57 @@ double: 1
 idouble: 1
 
 Function: "cabs":
-double: 1
+double: 144
 float: 1
-idouble: 1
+idouble: 144
 ifloat: 1
 
 Function: Real part of "cacos":
-double: 1
+double: 5
 float: 1
-idouble: 1
+idouble: 5
 ifloat: 1
 
 Function: Imaginary part of "cacos":
+double: 12
 float: 1
+idouble: 12
 ifloat: 1
 
 Function: Real part of "cacosh":
-double: 1
+double: 723
 float: 7
-idouble: 1
+idouble: 723
 ifloat: 7
 
 Function: Imaginary part of "cacosh":
-double: 1
+double: 4
 float: 3
-idouble: 1
+idouble: 4
 ifloat: 3
 
 Function: Real part of "casin":
-double: 3
+double: 19
 float: 2
-idouble: 3
+idouble: 19
 ifloat: 2
 
 Function: Imaginary part of "casin":
+double: 12
 float: 1
+idouble: 12
 ifloat: 1
 
 Function: Real part of "casinh":
-double: 5
+double: 72
 float: 1
-idouble: 5
+idouble: 72
 ifloat: 1
 
 Function: Imaginary part of "casinh":
-double: 3
+double: 43
 float: 6
-idouble: 3
+idouble: 43
 ifloat: 6
 
 Function: Real part of "catan":
@@ -870,6 +967,10 @@ Function: Imaginary part of "cexp":
 float: 1
 ifloat: 1
 
+Function: Real part of "clog":
+double: 5
+idouble: 5
+
 Function: Imaginary part of "clog":
 double: 1
 float: 3
@@ -877,9 +978,9 @@ idouble: 1
 ifloat: 3
 
 Function: Real part of "clog10":
-double: 1
+double: 156
 float: 1
-idouble: 1
+idouble: 156
 ifloat: 1
 
 Function: Imaginary part of "clog10":
@@ -895,15 +996,15 @@ idouble: 2
 ifloat: 1
 
 Function: Real part of "cpow":
-double: 1
+double: 37
 float: 4
-idouble: 1
+idouble: 37
 ifloat: 4
 
 Function: Imaginary part of "cpow":
-double: 1.1031
+double: 36
 float: 2
-idouble: 1.1031
+idouble: 36
 ifloat: 2
 
 Function: Imaginary part of "csin":
@@ -921,13 +1022,15 @@ idouble: 1
 ifloat: 1
 
 Function: Real part of "csqrt":
-double: 1
+double: 15
 float: 1
-idouble: 1
+idouble: 15
 ifloat: 1
 
 Function: Imaginary part of "csqrt":
+double: 18
 float: 1
+idouble: 18
 ifloat: 1
 
 Function: Real part of "ctan":
@@ -977,27 +1080,27 @@ idouble: 2
 ifloat: 1
 
 Function: "hypot":
-double: 1
+double: 144
 float: 1
-idouble: 1
+idouble: 144
 ifloat: 1
 
 Function: "j0":
-double: 2
+double: 137
 float: 2
-idouble: 2
+idouble: 137
 ifloat: 2
 
 Function: "j1":
-double: 1
+double: 144
 float: 2
-idouble: 1
+idouble: 144
 ifloat: 2
 
 Function: "jn":
-double: 6
+double: 144
 float: 4
-idouble: 6
+idouble: 144
 ifloat: 4
 
 Function: "lgamma":
@@ -1042,6 +1145,10 @@ float: 1
 idouble: 1
 ifloat: 1
 
+Function: "sqrt":
+double: 108
+idouble: 108
+
 Function: "tan":
 double: 0.5
 idouble: 0.5
@@ -1059,21 +1166,21 @@ idouble: 1
 ifloat: 1
 
 Function: "y0":
-double: 2
+double: 138
 float: 1
-idouble: 2
+idouble: 138
 ifloat: 1
 
 Function: "y1":
-double: 3
+double: 130
 float: 2
-idouble: 3
+idouble: 130
 ifloat: 2
 
 Function: "yn":
-double: 3
+double: 151
 float: 2
-idouble: 3
+idouble: 151
 ifloat: 2
 
 # end of automatic generation

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]