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.94 testing on alpha


Hi folks,

I think I finally sorted out the problem I had with glibc (now 2.1.95) on my 
alpha EV56.  It seems gcc (mainline) has a problem when a local variable name 
is re-declared in a sub-block of a function, and probably does silly things on 
the stack.

The small patch below fixes this (works around...) by avoiding this superfluous
declaration.  With this patch applied, I think all is well in make check.  The
only trouble is some errors in the math (double) tests (files attached).  I
attempted to produce a new libm-test-ulps, which I also attach.

$ grep '\*\*' check.log 
make[2]: *** [/usr/src/redhat/BUILD/glibc-build-alpha/math/test-double.out]
 Error 1
make[2]: *** [/usr/src/redhat/BUILD/glibc-build-alpha/math/test-idouble.out]
 Error 1
make[1]: *** [math/tests] Error 2
make: *** [check] Error 2

Cheers,
					Christian

--- libc/sysdeps/generic/printf_fphex.c.dist	Tue Oct 17 15:31:12 2000
+++ libc/sysdeps/generic/printf_fphex.c	Tue Oct 17 17:38:51 2000
@@ -245,7 +245,7 @@ __printf_fphex (FILE *fp,
 
   if (special)
     {
-      int width = info->width;
+      width = info->width;
 
       if (negative || info->showsign || info->space)
 	--width;
testing double (without inline functions)
Failure: Test: acos (0.7) == 0.7953988301841435554
Result:
 is:          7.95398830184144034483e-01   0x1.973e83f5d5c9f00000000000000000000p-1
 should be:   7.95398830184143590394e-01   0x1.973e83f5d5c9b00000000000000000000p-1
 difference:  4.44089209850062616169e-16   0x1.00000000000000000000p-51
 ulp       :  4.0000
 max.ulp   :  0.0000
Maximal error of `acos'
 is      :  4.0000 ulp
 accepted:  0.0000 ulp
Failure: Test: asin (0.7) == 0.7753974966107530637
Result:
 is:          7.75397496610752634538e-01   0x1.8d00e692afd9200000000000000000000p-1
 should be:   7.75397496610753078627e-01   0x1.8d00e692afd9600000000000000000000p-1
 difference:  4.44089209850062616169e-16   0x1.00000000000000000000p-51
 ulp       :  4.0000
 max.ulp   :  1.0000
Maximal error of `asin'
 is      :  4.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: hypot (0.7, 12.4) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (-0.7, 12.4) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (0.7, -12.4) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (-0.7, -12.4) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (12.4, 0.7) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (-12.4, 0.7) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (12.4, -0.7) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (-12.4, -0.7) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (0.7, 1.2) == 1.3892443989449804508
Result:
 is:          1.38924439894499429649e+00   0x1.63a5855b9eb3900000000000000000000p+0
 should be:   1.38924439894498052972e+00   0x1.63a5855b9eafb00000000000000000000p+0
 difference:  1.37667655053519411013e-14   0x1.f00000000000000000000000000000000p-47
 ulp       :  62.0000
 max.ulp   :  1.0000
Maximal error of `hypot'
 is      :  144.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: sqrt (2) == M_SQRT2l
Result:
 is:          1.41421356237311912629e+00   0x1.6a09e667f3c3900000000000000000000p+0
 should be:   1.41421356237309514547e+00   0x1.6a09e667f3bcd00000000000000000000p+0
 difference:  2.39808173319033812732e-14   0x1.b00000000000000000000000000000000p-46
 ulp       :  108.0000
 max.ulp   :  0.0000
Failure: Test: sqrt (15239.9025) == 123.45
Result:
 is:          1.23450000000000372324e+02   0x1.edccccccccce700000000000000000000p+6
 should be:   1.23450000000000002842e+02   0x1.edccccccccccd00000000000000000000p+6
 difference:  3.69482222595252096653e-13   0x1.a00000000000000000000000000000000p-42
 ulp       :  26.0000
 max.ulp   :  0.0000
Maximal error of `sqrt'
 is      :  108.0000 ulp
 accepted:  0.0000 ulp
Failure: Test: cabs (0.7 + 12.4 i) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: cabs (-12.4 + 0.7 i) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: cabs (-0.7 + 12.4 i) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: cabs (-12.4 - 0.7 i) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: cabs (-0.7 - 12.4 i) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: cabs (0.7 + 1.2 i) == 1.3892443989449804508
Result:
 is:          1.38924439894499429649e+00   0x1.63a5855b9eb3900000000000000000000p+0
 should be:   1.38924439894498052972e+00   0x1.63a5855b9eafb00000000000000000000p+0
 difference:  1.37667655053519411013e-14   0x1.f00000000000000000000000000000000p-47
 ulp       :  62.0000
 max.ulp   :  1.0000
Maximal error of `cabs'
 is      :  144.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: Real part of: cacos (-2 - 3 i) == 2.1414491111159960199 + 1.9833870299165354323 i
Result:
 is:          2.14144911111599389741e+00   0x1.121b0125254eb00000000000000000000p+1
 should be:   2.14144911111599611786e+00   0x1.121b0125254f000000000000000000000p+1
 difference:  2.22044604925031308085e-15   0x1.400000000000000000000000000000000p-49
 ulp       :  5.0000
 max.ulp   :  0.0000
Failure: Test: Imaginary part of: cacos (-2 - 3 i) == 2.1414491111159960199 + 1.9833870299165354323 i
Result:
 is:          1.98338702991653814678e+00   0x1.fbbf409ccd56c00000000000000000000p+0
 should be:   1.98338702991653548224e+00   0x1.fbbf409ccd56000000000000000000000p+0
 difference:  2.66453525910037569702e-15   0x1.800000000000000000000000000000000p-49
 ulp       :  12.0000
 max.ulp   :  0.0000
Maximal error of real part of: cacos
 is      :  5.0000 ulp
 accepted:  1.0000 ulp
Maximal error of imaginary part of: cacos
 is      :  12.0000 ulp
 accepted:  0.0000 ulp
Failure: Test: Real part of: cacosh (-2 - 3 i) == -1.9833870299165354323 + 2.1414491111159960199 i
Result:
 is:         -1.98338702991637494399e+00  -0x1.fbbf409ccd28d00000000000000000000p+0
 should be:  -1.98338702991653548224e+00  -0x1.fbbf409ccd56000000000000000000000p+0
 difference:  1.60538249360797635745e-13   0x1.698000000000000000000000000000000p-43
 ulp       :  723.0000
 max.ulp   :  1.0000
Failure: Test: Imaginary part of: cacosh (-2 - 3 i) == -1.9833870299165354323 + 2.1414491111159960199 i
Result:
 is:          2.14144911111599434150e+00   0x1.121b0125254ec00000000000000000000p+1
 should be:   2.14144911111599611786e+00   0x1.121b0125254f000000000000000000000p+1
 difference:  1.77635683940025046468e-15   0x1.00000000000000000000p-49
 ulp       :  4.0000
 max.ulp   :  1.0000
Maximal error of real part of: cacosh
 is      :  723.0000 ulp
 accepted:  1.0000 ulp
Maximal error of imaginary part of: cacosh
 is      :  4.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: Real part of: casin (-2 - 3 i) == -0.5706527843210994007 - 1.9833870299165354323 i
Result:
 is:         -5.70652784321097339415e-01  -0x1.242c9a0c0f97c00000000000000000000p-1
 should be:  -5.70652784321099448839e-01  -0x1.242c9a0c0f98f00000000000000000000p-1
 difference:  2.10942374678779742680e-15   0x1.300000000000000000000000000000000p-49
 ulp       :  19.0000
 max.ulp   :  0.0000
Failure: Test: Imaginary part of: casin (-2 - 3 i) == -0.5706527843210994007 - 1.9833870299165354323 i
Result:
 is:         -1.98338702991653814678e+00  -0x1.fbbf409ccd56c00000000000000000000p+0
 should be:  -1.98338702991653548224e+00  -0x1.fbbf409ccd56000000000000000000000p+0
 difference:  2.66453525910037569702e-15   0x1.800000000000000000000000000000000p-49
 ulp       :  12.0000
 max.ulp   :  0.0000
Maximal error of real part of: casin
 is      :  19.0000 ulp
 accepted:  3.0000 ulp
Maximal error of imaginary part of: casin
 is      :  12.0000 ulp
 accepted:  0.0000 ulp
Failure: Test: Real part of: casinh (0.7 + 1.2 i) == 0.9786545955936738768 + 0.9113541895315601156 i
Result:
 is:          9.78654595593673182208e-01   0x1.f51237144f53400000000000000000000p-1
 should be:   9.78654595593673848342e-01   0x1.f51237144f53a00000000000000000000p-1
 difference:  6.66133814775093924254e-16   0x1.800000000000000000000000000000000p-51
 ulp       :  6.0000
 max.ulp   :  1.0000
Failure: Test: Imaginary part of: casinh (0.7 + 1.2 i) == 0.9786545955936738768 + 0.9113541895315601156 i
Result:
 is:          9.11354189531555336501e-01   0x1.d29d042e38a2a00000000000000000000p-1
 should be:   9.11354189531560110460e-01   0x1.d29d042e38a5500000000000000000000p-1
 difference:  4.77395900588817312382e-15   0x1.580000000000000000000000000000000p-48
 ulp       :  43.0000
 max.ulp   :  0.0000
Failure: Test: Real part of: casinh (-2 - 3 i) == -1.9686379257930962917 - 0.9646585044076027920 i
Result:
 is:         -1.96863792579308038988e+00  -0x1.f7f8a7b4f251700000000000000000000p+0
 should be:  -1.96863792579309637709e+00  -0x1.f7f8a7b4f255f00000000000000000000p+0
 difference:  1.59872115546022541821e-14   0x1.200000000000000000000000000000000p-46
 ulp       :  72.0000
 max.ulp   :  5.0000
Failure: Test: Imaginary part of: casinh (-2 - 3 i) == -1.9686379257930962917 - 0.9646585044076027920 i
Result:
 is:         -9.64658504407602257480e-01  -0x1.ede7b8307a54300000000000000000000p-1
 should be:  -9.64658504407602812591e-01  -0x1.ede7b8307a54800000000000000000000p-1
 difference:  5.55111512312578270212e-16   0x1.400000000000000000000000000000000p-51
 ulp       :  5.0000
 max.ulp   :  3.0000
Maximal error of real part of: casinh
 is      :  72.0000 ulp
 accepted:  5.0000 ulp
Maximal error of imaginary part of: casinh
 is      :  43.0000 ulp
 accepted:  3.0000 ulp
Failure: Test: Real part of: clog10 (0.7 + 1.2 i) == 0.1427786545038868803 + 0.4528483579352493248 i
Result:
 is:          1.42778654503891211380e-01   0x1.2469229d49eca00000000000000000000p-3
 should be:   1.42778654503886881511e-01   0x1.2469229d49e2e00000000000000000000p-3
 difference:  4.32986979603811050765e-15   0x1.380000000000000000000000000000000p-48
 ulp       :  156.0000
 max.ulp   :  1.0000
Failure: Test: Real part of: clog10 (-2 - 3 i) == 0.5569716761534183846 - 0.9375544629863747085 i
Result:
 is:          5.56971676153418915334e-01   0x1.1d2b643bc125400000000000000000000p-1
 should be:   5.56971676153418360222e-01   0x1.1d2b643bc124f00000000000000000000p-1
 difference:  5.55111512312578270212e-16   0x1.400000000000000000000000000000000p-51
 ulp       :  5.0000
 max.ulp   :  0.0000
Maximal error of real part of: clog10
 is      :  156.0000 ulp
 accepted:  1.0000 ulp
Maximal error of imaginary part of: clog10
 is      :  1.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: Real part of: clog (-2 - 3 i) == 1.2824746787307683680 - 2.1587989303424641704 i
Result:
 is:          1.28247467873076947953e+00   0x1.485042b318c5600000000000000000000p+0
 should be:   1.28247467873076836931e+00   0x1.485042b318c5100000000000000000000p+0
 difference:  1.11022302462515654042e-15   0x1.400000000000000000000000000000000p-50
 ulp       :  5.0000
 max.ulp   :  0.0000
Maximal error of real part of: clog
 is      :  5.0000 ulp
 accepted:  0.0000 ulp
Maximal error of imaginary part of: clog
 is      :  1.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: Real part of: cpow (2 + 3 i, 4 + 0 i) == -119.0 - 120.0 i
Result:
 is:         -1.19000000000000525802e+02  -0x1.dc0000000002500000000000000000000p+6
 should be:  -1.19000000000000000000e+02  -0x1.dc0000000000000000000000000000000p+6
 difference:  5.25801624462474137545e-13   0x1.280000000000000000000000000000000p-41
 ulp       :  37.0000
 max.ulp   :  1.0000
Failure: Test: Imaginary part of: cpow (2 + 3 i, 4 + 0 i) == -119.0 - 120.0 i
Result:
 is:         -1.20000000000000511591e+02  -0x1.e00000000002400000000000000000000p+6
 should be:  -1.20000000000000000000e+02  -0x1.e00000000000000000000000000000000p+6
 difference:  5.11590769747272133827e-13   0x1.200000000000000000000000000000000p-41
 ulp       :  36.0000
 max.ulp   :  0.0000
Maximal error of real part of: cpow
 is      :  37.0000 ulp
 accepted:  1.0000 ulp
Maximal error of imaginary part of: cpow
 is      :  36.0000 ulp
 accepted:  1.1031 ulp
Failure: Test: Real part of: csqrt (0.7 + 1.2 i) == 1.0220676100300264507 + 0.5870453129635652115 i
Result:
 is:          1.02206761003002988275e+00   0x1.05a6390f613e800000000000000000000p+0
 should be:   1.02206761003002655208e+00   0x1.05a6390f613d900000000000000000000p+0
 difference:  3.33066907387546962127e-15   0x1.e00000000000000000000000000000000p-49
 ulp       :  15.0000
 max.ulp   :  1.0000
Failure: Test: Imaginary part of: csqrt (0.7 + 1.2 i) == 1.0220676100300264507 + 0.5870453129635652115 i
Result:
 is:          5.87045312963563215014e-01   0x1.2c913408e5ad700000000000000000000p-1
 should be:   5.87045312963565213416e-01   0x1.2c913408e5ae900000000000000000000p-1
 difference:  1.99840144432528177276e-15   0x1.200000000000000000000000000000000p-49
 ulp       :  18.0000
 max.ulp   :  0.0000
Failure: Test: Real part of: csqrt (-2 - 3 i) == 0.8959774761298381247 - 1.6741492280355400404 i
Result:
 is:          8.95977476129837802077e-01   0x1.cabd8f4bdc4ce00000000000000000000p-1
 should be:   8.95977476129838135144e-01   0x1.cabd8f4bdc4d100000000000000000000p-1
 difference:  3.33066907387546962127e-16   0x1.800000000000000000000000000000000p-52
 ulp       :  3.0000
 max.ulp   :  0.0000
Failure: Test: Imaginary part of: csqrt (-2 - 3 i) == 0.8959774761298381247 - 1.6741492280355400404 i
Result:
 is:         -1.67414922803554055974e+00  -0x1.ac950b37094a800000000000000000000p+0
 should be:  -1.67414922803554011566e+00  -0x1.ac950b37094a600000000000000000000p+0
 difference:  4.44089209850062616169e-16   0x1.00000000000000000000p-51
 ulp       :  2.0000
 max.ulp   :  0.0000
Failure: Test: Real part of: csqrt (-2 + 3 i) == 0.8959774761298381247 + 1.6741492280355400404 i
Result:
 is:          8.95977476129837802077e-01   0x1.cabd8f4bdc4ce00000000000000000000p-1
 should be:   8.95977476129838135144e-01   0x1.cabd8f4bdc4d100000000000000000000p-1
 difference:  3.33066907387546962127e-16   0x1.800000000000000000000000000000000p-52
 ulp       :  3.0000
 max.ulp   :  0.0000
Failure: Test: Imaginary part of: csqrt (-2 + 3 i) == 0.8959774761298381247 + 1.6741492280355400404 i
Result:
 is:          1.67414922803554055974e+00   0x1.ac950b37094a800000000000000000000p+0
 should be:   1.67414922803554011566e+00   0x1.ac950b37094a600000000000000000000p+0
 difference:  4.44089209850062616169e-16   0x1.00000000000000000000p-51
 ulp       :  2.0000
 max.ulp   :  0.0000
Maximal error of real part of: csqrt
 is      :  15.0000 ulp
 accepted:  1.0000 ulp
Maximal error of imaginary part of: csqrt
 is      :  18.0000 ulp
 accepted:  0.0000 ulp
Failure: Test: j0 (2.0) == 0.22389077914123566805
Result:
 is:          2.23890779141231871519e-01   0x1.ca873fb24ce6f00000000000000000000p-3
 should be:   2.23890779141235674032e-01   0x1.ca873fb24cef800000000000000000000p-3
 difference:  3.80251385934116115095e-15   0x1.120000000000000000000000000000000p-48
 ulp       :  137.0000
 max.ulp   :  0.0000
Failure: Test: j0 (8.0) == 0.17165080713755390609
Result:
 is:          1.71650807137550986958e-01   0x1.5f8a7557e6fbc00000000000000000000p-3
 should be:   1.71650807137553901294e-01   0x1.5f8a7557e702500000000000000000000p-3
 difference:  2.91433543964103591861e-15   0x1.a40000000000000000000000000000000p-49
 ulp       :  105.0000
 max.ulp   :  0.0000
Maximal error of `j0'
 is      :  137.0000 ulp
 accepted:  2.0000 ulp
Failure: Test: j1 (2.0) == 0.57672480775687338720
Result:
 is:          5.76724807756863522279e-01   0x1.274879583719700000000000000000000p-1
 should be:   5.76724807756873403264e-01   0x1.27487958371f000000000000000000000p-1
 difference:  9.88098491916389320977e-15   0x1.640000000000000000000000000000000p-47
 ulp       :  89.0000
 max.ulp   :  1.0000
Failure: Test: j1 (8.0) == 0.23463634685391462438
Result:
 is:          2.34636346853910632282e-01   0x1.e0890561860f300000000000000000000p-3
 should be:   2.34636346853914629085e-01   0x1.e08905618618300000000000000000000p-3
 difference:  3.99680288865056354553e-15   0x1.200000000000000000000000000000000p-48
 ulp       :  144.0000
 max.ulp   :  1.0000
Maximal error of `j1'
 is      :  144.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: jn (0, 2.0) == 0.22389077914123566805
Result:
 is:          2.23890779141231871519e-01   0x1.ca873fb24ce6f00000000000000000000p-3
 should be:   2.23890779141235674032e-01   0x1.ca873fb24cef800000000000000000000p-3
 difference:  3.80251385934116115095e-15   0x1.120000000000000000000000000000000p-48
 ulp       :  137.0000
 max.ulp   :  0.0000
Failure: Test: jn (0, 8.0) == 0.17165080713755390609
Result:
 is:          1.71650807137550986958e-01   0x1.5f8a7557e6fbc00000000000000000000p-3
 should be:   1.71650807137553901294e-01   0x1.5f8a7557e702500000000000000000000p-3
 difference:  2.91433543964103591861e-15   0x1.a40000000000000000000000000000000p-49
 ulp       :  105.0000
 max.ulp   :  0.0000
Failure: Test: jn (1, 2.0) == 0.57672480775687338720
Result:
 is:          5.76724807756863522279e-01   0x1.274879583719700000000000000000000p-1
 should be:   5.76724807756873403264e-01   0x1.27487958371f000000000000000000000p-1
 difference:  9.88098491916389320977e-15   0x1.640000000000000000000000000000000p-47
 ulp       :  89.0000
 max.ulp   :  1.0000
Failure: Test: jn (1, 8.0) == 0.23463634685391462438
Result:
 is:          2.34636346853910632282e-01   0x1.e0890561860f300000000000000000000p-3
 should be:   2.34636346853914629085e-01   0x1.e08905618618300000000000000000000p-3
 difference:  3.99680288865056354553e-15   0x1.200000000000000000000000000000000p-48
 ulp       :  144.0000
 max.ulp   :  1.0000
Failure: Test: jn (3, 2.0) == 0.12894324947440205110
Result:
 is:          1.28943249474399918020e-01   0x1.081365fc4298300000000000000000000p-3
 should be:   1.28943249474402055199e-01   0x1.081365fc429d000000000000000000000p-3
 difference:  2.13717932240342634032e-15   0x1.340000000000000000000000000000000p-49
 ulp       :  77.0000
 max.ulp   :  1.0000
Failure: Test: jn (10, 2.0) == 0.25153862827167367096e-6
Result:
 is:          2.51538628271669393884e-07   0x1.0e16696236dca00000000000000000000p-22
 should be:   2.51538628271673681988e-07   0x1.0e16696236e1b00000000000000000000p-22
 difference:  4.28810429547489546653e-21   0x1.440000000000000000000000000000000p-68
 ulp       :  81.0000
 max.ulp   :  0.0000
Maximal error of `jn'
 is      :  144.0000 ulp
 accepted:  6.0000 ulp
Failure: Test: y0 (2.0) == 0.51037567264974511960
Result:
 is:          5.10375672649736489284e-01   0x1.054ff5cd68c3f00000000000000000000p-1
 should be:   5.10375672649745149023e-01   0x1.054ff5cd68c8d00000000000000000000p-1
 difference:  8.65973959207622101530e-15   0x1.380000000000000000000000000000000p-47
 ulp       :  78.0000
 max.ulp   :  0.0000
Failure: Test: y0 (8.0) == 0.22352148938756622053
Result:
 is:          2.23521489387562388718e-01   0x1.c9c5a276fb7a200000000000000000000p-3
 should be:   2.23521489387566218987e-01   0x1.c9c5a276fb82c00000000000000000000p-3
 difference:  3.83026943495679006446e-15   0x1.140000000000000000000000000000000p-48
 ulp       :  138.0000
 max.ulp   :  1.0000
Maximal error of `y0'
 is      :  138.0000 ulp
 accepted:  2.0000 ulp
Failure: Test: y1 (2.0) == -0.10703243154093754689
Result:
 is:         -1.07032431540935737968e-01  -0x1.b667a391465c500000000000000000000p-4
 should be:  -1.07032431540937542080e-01  -0x1.b667a3914664700000000000000000000p-4
 difference:  1.80411241501587937819e-15   0x1.040000000000000000000000000000000p-49
 ulp       :  130.0000
 max.ulp   :  1.0000
Failure: Test: y1 (8.0) == -0.15806046173124749426
Result:
 is:         -1.58060461731244827899e-01  -0x1.43b5340f692d600000000000000000000p-3
 should be:  -1.58060461731247492434e-01  -0x1.43b5340f6933600000000000000000000p-3
 difference:  2.66453525910037569702e-15   0x1.800000000000000000000000000000000p-49
 ulp       :  96.0000
 max.ulp   :  1.0000
Maximal error of `y1'
 is      :  130.0000 ulp
 accepted:  3.0000 ulp
Failure: Test: yn (0, 2.0) == 0.51037567264974511960
Result:
 is:          5.10375672649736489284e-01   0x1.054ff5cd68c3f00000000000000000000p-1
 should be:   5.10375672649745149023e-01   0x1.054ff5cd68c8d00000000000000000000p-1
 difference:  8.65973959207622101530e-15   0x1.380000000000000000000000000000000p-47
 ulp       :  78.0000
 max.ulp   :  0.0000
Failure: Test: yn (0, 8.0) == 0.22352148938756622053
Result:
 is:          2.23521489387562388718e-01   0x1.c9c5a276fb7a200000000000000000000p-3
 should be:   2.23521489387566218987e-01   0x1.c9c5a276fb82c00000000000000000000p-3
 difference:  3.83026943495679006446e-15   0x1.140000000000000000000000000000000p-48
 ulp       :  138.0000
 max.ulp   :  1.0000
Failure: Test: yn (1, 2.0) == -0.10703243154093754689
Result:
 is:         -1.07032431540935737968e-01  -0x1.b667a391465c500000000000000000000p-4
 should be:  -1.07032431540937542080e-01  -0x1.b667a3914664700000000000000000000p-4
 difference:  1.80411241501587937819e-15   0x1.040000000000000000000000000000000p-49
 ulp       :  130.0000
 max.ulp   :  1.0000
Failure: Test: yn (1, 8.0) == -0.15806046173124749426
Result:
 is:         -1.58060461731244827899e-01  -0x1.43b5340f692d600000000000000000000p-3
 should be:  -1.58060461731247492434e-01  -0x1.43b5340f6933600000000000000000000p-3
 difference:  2.66453525910037569702e-15   0x1.800000000000000000000000000000000p-49
 ulp       :  96.0000
 max.ulp   :  1.0000
Failure: Test: yn (3, 2.0) == -1.1277837768404277861
Result:
 is:         -1.12778377684040886919e+00  -0x1.20b670067d29c00000000000000000000p+0
 should be:  -1.12778377684042774298e+00  -0x1.20b670067d2f100000000000000000000p+0
 difference:  1.88737914186276611872e-14   0x1.540000000000000000000000000000000p-46
 ulp       :  85.0000
 max.ulp   :  1.0000
Failure: Test: yn (10, 2.0) == -129184.54220803928264
Result:
 is:         -1.29184542208037091768e+05  -0x1.f8a08ace255af00000000000000000000p+16
 should be:  -1.29184542208039289108e+05  -0x1.f8a08ace2564600000000000000000000p+16
 difference:  2.19733919948339462280e-09   0x1.2e0000000000000000000000000000000p-29
 ulp       :  151.0000
 max.ulp   :  2.0000
Maximal error of `yn'
 is      :  151.0000 ulp
 accepted:  3.0000 ulp

Test suite completed:
  2475 test cases plus 2267 tests for exception flags executed.
  79 errors occured.
testing double (inline functions)
Failure: Test: acos (0.7) == 0.7953988301841435554
Result:
 is:          7.95398830184144034483e-01   0x1.973e83f5d5c9f00000000000000000000p-1
 should be:   7.95398830184143590394e-01   0x1.973e83f5d5c9b00000000000000000000p-1
 difference:  4.44089209850062616169e-16   0x1.00000000000000000000p-51
 ulp       :  4.0000
 max.ulp   :  0.0000
Maximal error of `acos'
 is      :  4.0000 ulp
 accepted:  0.0000 ulp
Failure: Test: asin (0.7) == 0.7753974966107530637
Result:
 is:          7.75397496610752634538e-01   0x1.8d00e692afd9200000000000000000000p-1
 should be:   7.75397496610753078627e-01   0x1.8d00e692afd9600000000000000000000p-1
 difference:  4.44089209850062616169e-16   0x1.00000000000000000000p-51
 ulp       :  4.0000
 max.ulp   :  1.0000
Maximal error of `asin'
 is      :  4.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: hypot (0.7, 12.4) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (-0.7, 12.4) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (0.7, -12.4) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (-0.7, -12.4) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (12.4, 0.7) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (-12.4, 0.7) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (12.4, -0.7) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (-12.4, -0.7) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: hypot (0.7, 1.2) == 1.3892443989449804508
Result:
 is:          1.38924439894499429649e+00   0x1.63a5855b9eb3900000000000000000000p+0
 should be:   1.38924439894498052972e+00   0x1.63a5855b9eafb00000000000000000000p+0
 difference:  1.37667655053519411013e-14   0x1.f00000000000000000000000000000000p-47
 ulp       :  62.0000
 max.ulp   :  1.0000
Maximal error of `hypot'
 is      :  144.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: sqrt (2) == M_SQRT2l
Result:
 is:          1.41421356237311912629e+00   0x1.6a09e667f3c3900000000000000000000p+0
 should be:   1.41421356237309514547e+00   0x1.6a09e667f3bcd00000000000000000000p+0
 difference:  2.39808173319033812732e-14   0x1.b00000000000000000000000000000000p-46
 ulp       :  108.0000
 max.ulp   :  0.0000
Failure: Test: sqrt (15239.9025) == 123.45
Result:
 is:          1.23450000000000372324e+02   0x1.edccccccccce700000000000000000000p+6
 should be:   1.23450000000000002842e+02   0x1.edccccccccccd00000000000000000000p+6
 difference:  3.69482222595252096653e-13   0x1.a00000000000000000000000000000000p-42
 ulp       :  26.0000
 max.ulp   :  0.0000
Maximal error of `sqrt'
 is      :  108.0000 ulp
 accepted:  0.0000 ulp
Failure: Test: cabs (0.7 + 12.4 i) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: cabs (-12.4 + 0.7 i) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: cabs (-0.7 + 12.4 i) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: cabs (-12.4 - 0.7 i) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: cabs (-0.7 - 12.4 i) == 12.41974234837422060118
Result:
 is:          1.24197423483744771033e+01   0x1.8d6e87816077c00000000000000000000p+3
 should be:   1.24197423483742213079e+01   0x1.8d6e8781606ec00000000000000000000p+3
 difference:  2.55795384873636066914e-13   0x1.200000000000000000000000000000000p-42
 ulp       :  144.0000
 max.ulp   :  0.0000
Failure: Test: cabs (0.7 + 1.2 i) == 1.3892443989449804508
Result:
 is:          1.38924439894499429649e+00   0x1.63a5855b9eb3900000000000000000000p+0
 should be:   1.38924439894498052972e+00   0x1.63a5855b9eafb00000000000000000000p+0
 difference:  1.37667655053519411013e-14   0x1.f00000000000000000000000000000000p-47
 ulp       :  62.0000
 max.ulp   :  1.0000
Maximal error of `cabs'
 is      :  144.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: Real part of: cacos (-2 - 3 i) == 2.1414491111159960199 + 1.9833870299165354323 i
Result:
 is:          2.14144911111599389741e+00   0x1.121b0125254eb00000000000000000000p+1
 should be:   2.14144911111599611786e+00   0x1.121b0125254f000000000000000000000p+1
 difference:  2.22044604925031308085e-15   0x1.400000000000000000000000000000000p-49
 ulp       :  5.0000
 max.ulp   :  0.0000
Failure: Test: Imaginary part of: cacos (-2 - 3 i) == 2.1414491111159960199 + 1.9833870299165354323 i
Result:
 is:          1.98338702991653814678e+00   0x1.fbbf409ccd56c00000000000000000000p+0
 should be:   1.98338702991653548224e+00   0x1.fbbf409ccd56000000000000000000000p+0
 difference:  2.66453525910037569702e-15   0x1.800000000000000000000000000000000p-49
 ulp       :  12.0000
 max.ulp   :  0.0000
Maximal error of real part of: cacos
 is      :  5.0000 ulp
 accepted:  1.0000 ulp
Maximal error of imaginary part of: cacos
 is      :  12.0000 ulp
 accepted:  0.0000 ulp
Failure: Test: Real part of: cacosh (-2 - 3 i) == -1.9833870299165354323 + 2.1414491111159960199 i
Result:
 is:         -1.98338702991637494399e+00  -0x1.fbbf409ccd28d00000000000000000000p+0
 should be:  -1.98338702991653548224e+00  -0x1.fbbf409ccd56000000000000000000000p+0
 difference:  1.60538249360797635745e-13   0x1.698000000000000000000000000000000p-43
 ulp       :  723.0000
 max.ulp   :  1.0000
Failure: Test: Imaginary part of: cacosh (-2 - 3 i) == -1.9833870299165354323 + 2.1414491111159960199 i
Result:
 is:          2.14144911111599434150e+00   0x1.121b0125254ec00000000000000000000p+1
 should be:   2.14144911111599611786e+00   0x1.121b0125254f000000000000000000000p+1
 difference:  1.77635683940025046468e-15   0x1.00000000000000000000p-49
 ulp       :  4.0000
 max.ulp   :  1.0000
Maximal error of real part of: cacosh
 is      :  723.0000 ulp
 accepted:  1.0000 ulp
Maximal error of imaginary part of: cacosh
 is      :  4.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: Real part of: casin (-2 - 3 i) == -0.5706527843210994007 - 1.9833870299165354323 i
Result:
 is:         -5.70652784321097339415e-01  -0x1.242c9a0c0f97c00000000000000000000p-1
 should be:  -5.70652784321099448839e-01  -0x1.242c9a0c0f98f00000000000000000000p-1
 difference:  2.10942374678779742680e-15   0x1.300000000000000000000000000000000p-49
 ulp       :  19.0000
 max.ulp   :  0.0000
Failure: Test: Imaginary part of: casin (-2 - 3 i) == -0.5706527843210994007 - 1.9833870299165354323 i
Result:
 is:         -1.98338702991653814678e+00  -0x1.fbbf409ccd56c00000000000000000000p+0
 should be:  -1.98338702991653548224e+00  -0x1.fbbf409ccd56000000000000000000000p+0
 difference:  2.66453525910037569702e-15   0x1.800000000000000000000000000000000p-49
 ulp       :  12.0000
 max.ulp   :  0.0000
Maximal error of real part of: casin
 is      :  19.0000 ulp
 accepted:  3.0000 ulp
Maximal error of imaginary part of: casin
 is      :  12.0000 ulp
 accepted:  0.0000 ulp
Failure: Test: Real part of: casinh (0.7 + 1.2 i) == 0.9786545955936738768 + 0.9113541895315601156 i
Result:
 is:          9.78654595593673182208e-01   0x1.f51237144f53400000000000000000000p-1
 should be:   9.78654595593673848342e-01   0x1.f51237144f53a00000000000000000000p-1
 difference:  6.66133814775093924254e-16   0x1.800000000000000000000000000000000p-51
 ulp       :  6.0000
 max.ulp   :  1.0000
Failure: Test: Imaginary part of: casinh (0.7 + 1.2 i) == 0.9786545955936738768 + 0.9113541895315601156 i
Result:
 is:          9.11354189531555336501e-01   0x1.d29d042e38a2a00000000000000000000p-1
 should be:   9.11354189531560110460e-01   0x1.d29d042e38a5500000000000000000000p-1
 difference:  4.77395900588817312382e-15   0x1.580000000000000000000000000000000p-48
 ulp       :  43.0000
 max.ulp   :  0.0000
Failure: Test: Real part of: casinh (-2 - 3 i) == -1.9686379257930962917 - 0.9646585044076027920 i
Result:
 is:         -1.96863792579308038988e+00  -0x1.f7f8a7b4f251700000000000000000000p+0
 should be:  -1.96863792579309637709e+00  -0x1.f7f8a7b4f255f00000000000000000000p+0
 difference:  1.59872115546022541821e-14   0x1.200000000000000000000000000000000p-46
 ulp       :  72.0000
 max.ulp   :  5.0000
Failure: Test: Imaginary part of: casinh (-2 - 3 i) == -1.9686379257930962917 - 0.9646585044076027920 i
Result:
 is:         -9.64658504407602257480e-01  -0x1.ede7b8307a54300000000000000000000p-1
 should be:  -9.64658504407602812591e-01  -0x1.ede7b8307a54800000000000000000000p-1
 difference:  5.55111512312578270212e-16   0x1.400000000000000000000000000000000p-51
 ulp       :  5.0000
 max.ulp   :  3.0000
Maximal error of real part of: casinh
 is      :  72.0000 ulp
 accepted:  5.0000 ulp
Maximal error of imaginary part of: casinh
 is      :  43.0000 ulp
 accepted:  3.0000 ulp
Failure: Test: Real part of: clog10 (0.7 + 1.2 i) == 0.1427786545038868803 + 0.4528483579352493248 i
Result:
 is:          1.42778654503891211380e-01   0x1.2469229d49eca00000000000000000000p-3
 should be:   1.42778654503886881511e-01   0x1.2469229d49e2e00000000000000000000p-3
 difference:  4.32986979603811050765e-15   0x1.380000000000000000000000000000000p-48
 ulp       :  156.0000
 max.ulp   :  1.0000
Failure: Test: Real part of: clog10 (-2 - 3 i) == 0.5569716761534183846 - 0.9375544629863747085 i
Result:
 is:          5.56971676153418915334e-01   0x1.1d2b643bc125400000000000000000000p-1
 should be:   5.56971676153418360222e-01   0x1.1d2b643bc124f00000000000000000000p-1
 difference:  5.55111512312578270212e-16   0x1.400000000000000000000000000000000p-51
 ulp       :  5.0000
 max.ulp   :  0.0000
Maximal error of real part of: clog10
 is      :  156.0000 ulp
 accepted:  1.0000 ulp
Maximal error of imaginary part of: clog10
 is      :  1.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: Real part of: clog (-2 - 3 i) == 1.2824746787307683680 - 2.1587989303424641704 i
Result:
 is:          1.28247467873076947953e+00   0x1.485042b318c5600000000000000000000p+0
 should be:   1.28247467873076836931e+00   0x1.485042b318c5100000000000000000000p+0
 difference:  1.11022302462515654042e-15   0x1.400000000000000000000000000000000p-50
 ulp       :  5.0000
 max.ulp   :  0.0000
Maximal error of real part of: clog
 is      :  5.0000 ulp
 accepted:  0.0000 ulp
Maximal error of imaginary part of: clog
 is      :  1.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: Real part of: cpow (2 + 3 i, 4 + 0 i) == -119.0 - 120.0 i
Result:
 is:         -1.19000000000000525802e+02  -0x1.dc0000000002500000000000000000000p+6
 should be:  -1.19000000000000000000e+02  -0x1.dc0000000000000000000000000000000p+6
 difference:  5.25801624462474137545e-13   0x1.280000000000000000000000000000000p-41
 ulp       :  37.0000
 max.ulp   :  1.0000
Failure: Test: Imaginary part of: cpow (2 + 3 i, 4 + 0 i) == -119.0 - 120.0 i
Result:
 is:         -1.20000000000000511591e+02  -0x1.e00000000002400000000000000000000p+6
 should be:  -1.20000000000000000000e+02  -0x1.e00000000000000000000000000000000p+6
 difference:  5.11590769747272133827e-13   0x1.200000000000000000000000000000000p-41
 ulp       :  36.0000
 max.ulp   :  0.0000
Maximal error of real part of: cpow
 is      :  37.0000 ulp
 accepted:  1.0000 ulp
Maximal error of imaginary part of: cpow
 is      :  36.0000 ulp
 accepted:  1.1031 ulp
Failure: Test: Real part of: csqrt (0.7 + 1.2 i) == 1.0220676100300264507 + 0.5870453129635652115 i
Result:
 is:          1.02206761003002988275e+00   0x1.05a6390f613e800000000000000000000p+0
 should be:   1.02206761003002655208e+00   0x1.05a6390f613d900000000000000000000p+0
 difference:  3.33066907387546962127e-15   0x1.e00000000000000000000000000000000p-49
 ulp       :  15.0000
 max.ulp   :  1.0000
Failure: Test: Imaginary part of: csqrt (0.7 + 1.2 i) == 1.0220676100300264507 + 0.5870453129635652115 i
Result:
 is:          5.87045312963563215014e-01   0x1.2c913408e5ad700000000000000000000p-1
 should be:   5.87045312963565213416e-01   0x1.2c913408e5ae900000000000000000000p-1
 difference:  1.99840144432528177276e-15   0x1.200000000000000000000000000000000p-49
 ulp       :  18.0000
 max.ulp   :  0.0000
Failure: Test: Real part of: csqrt (-2 - 3 i) == 0.8959774761298381247 - 1.6741492280355400404 i
Result:
 is:          8.95977476129837802077e-01   0x1.cabd8f4bdc4ce00000000000000000000p-1
 should be:   8.95977476129838135144e-01   0x1.cabd8f4bdc4d100000000000000000000p-1
 difference:  3.33066907387546962127e-16   0x1.800000000000000000000000000000000p-52
 ulp       :  3.0000
 max.ulp   :  0.0000
Failure: Test: Imaginary part of: csqrt (-2 - 3 i) == 0.8959774761298381247 - 1.6741492280355400404 i
Result:
 is:         -1.67414922803554055974e+00  -0x1.ac950b37094a800000000000000000000p+0
 should be:  -1.67414922803554011566e+00  -0x1.ac950b37094a600000000000000000000p+0
 difference:  4.44089209850062616169e-16   0x1.00000000000000000000p-51
 ulp       :  2.0000
 max.ulp   :  0.0000
Failure: Test: Real part of: csqrt (-2 + 3 i) == 0.8959774761298381247 + 1.6741492280355400404 i
Result:
 is:          8.95977476129837802077e-01   0x1.cabd8f4bdc4ce00000000000000000000p-1
 should be:   8.95977476129838135144e-01   0x1.cabd8f4bdc4d100000000000000000000p-1
 difference:  3.33066907387546962127e-16   0x1.800000000000000000000000000000000p-52
 ulp       :  3.0000
 max.ulp   :  0.0000
Failure: Test: Imaginary part of: csqrt (-2 + 3 i) == 0.8959774761298381247 + 1.6741492280355400404 i
Result:
 is:          1.67414922803554055974e+00   0x1.ac950b37094a800000000000000000000p+0
 should be:   1.67414922803554011566e+00   0x1.ac950b37094a600000000000000000000p+0
 difference:  4.44089209850062616169e-16   0x1.00000000000000000000p-51
 ulp       :  2.0000
 max.ulp   :  0.0000
Maximal error of real part of: csqrt
 is      :  15.0000 ulp
 accepted:  1.0000 ulp
Maximal error of imaginary part of: csqrt
 is      :  18.0000 ulp
 accepted:  0.0000 ulp
Failure: Test: j0 (2.0) == 0.22389077914123566805
Result:
 is:          2.23890779141231871519e-01   0x1.ca873fb24ce6f00000000000000000000p-3
 should be:   2.23890779141235674032e-01   0x1.ca873fb24cef800000000000000000000p-3
 difference:  3.80251385934116115095e-15   0x1.120000000000000000000000000000000p-48
 ulp       :  137.0000
 max.ulp   :  0.0000
Failure: Test: j0 (8.0) == 0.17165080713755390609
Result:
 is:          1.71650807137550986958e-01   0x1.5f8a7557e6fbc00000000000000000000p-3
 should be:   1.71650807137553901294e-01   0x1.5f8a7557e702500000000000000000000p-3
 difference:  2.91433543964103591861e-15   0x1.a40000000000000000000000000000000p-49
 ulp       :  105.0000
 max.ulp   :  0.0000
Maximal error of `j0'
 is      :  137.0000 ulp
 accepted:  2.0000 ulp
Failure: Test: j1 (2.0) == 0.57672480775687338720
Result:
 is:          5.76724807756863522279e-01   0x1.274879583719700000000000000000000p-1
 should be:   5.76724807756873403264e-01   0x1.27487958371f000000000000000000000p-1
 difference:  9.88098491916389320977e-15   0x1.640000000000000000000000000000000p-47
 ulp       :  89.0000
 max.ulp   :  1.0000
Failure: Test: j1 (8.0) == 0.23463634685391462438
Result:
 is:          2.34636346853910632282e-01   0x1.e0890561860f300000000000000000000p-3
 should be:   2.34636346853914629085e-01   0x1.e08905618618300000000000000000000p-3
 difference:  3.99680288865056354553e-15   0x1.200000000000000000000000000000000p-48
 ulp       :  144.0000
 max.ulp   :  1.0000
Maximal error of `j1'
 is      :  144.0000 ulp
 accepted:  1.0000 ulp
Failure: Test: jn (0, 2.0) == 0.22389077914123566805
Result:
 is:          2.23890779141231871519e-01   0x1.ca873fb24ce6f00000000000000000000p-3
 should be:   2.23890779141235674032e-01   0x1.ca873fb24cef800000000000000000000p-3
 difference:  3.80251385934116115095e-15   0x1.120000000000000000000000000000000p-48
 ulp       :  137.0000
 max.ulp   :  0.0000
Failure: Test: jn (0, 8.0) == 0.17165080713755390609
Result:
 is:          1.71650807137550986958e-01   0x1.5f8a7557e6fbc00000000000000000000p-3
 should be:   1.71650807137553901294e-01   0x1.5f8a7557e702500000000000000000000p-3
 difference:  2.91433543964103591861e-15   0x1.a40000000000000000000000000000000p-49
 ulp       :  105.0000
 max.ulp   :  0.0000
Failure: Test: jn (1, 2.0) == 0.57672480775687338720
Result:
 is:          5.76724807756863522279e-01   0x1.274879583719700000000000000000000p-1
 should be:   5.76724807756873403264e-01   0x1.27487958371f000000000000000000000p-1
 difference:  9.88098491916389320977e-15   0x1.640000000000000000000000000000000p-47
 ulp       :  89.0000
 max.ulp   :  1.0000
Failure: Test: jn (1, 8.0) == 0.23463634685391462438
Result:
 is:          2.34636346853910632282e-01   0x1.e0890561860f300000000000000000000p-3
 should be:   2.34636346853914629085e-01   0x1.e08905618618300000000000000000000p-3
 difference:  3.99680288865056354553e-15   0x1.200000000000000000000000000000000p-48
 ulp       :  144.0000
 max.ulp   :  1.0000
Failure: Test: jn (3, 2.0) == 0.12894324947440205110
Result:
 is:          1.28943249474399918020e-01   0x1.081365fc4298300000000000000000000p-3
 should be:   1.28943249474402055199e-01   0x1.081365fc429d000000000000000000000p-3
 difference:  2.13717932240342634032e-15   0x1.340000000000000000000000000000000p-49
 ulp       :  77.0000
 max.ulp   :  1.0000
Failure: Test: jn (10, 2.0) == 0.25153862827167367096e-6
Result:
 is:          2.51538628271669393884e-07   0x1.0e16696236dca00000000000000000000p-22
 should be:   2.51538628271673681988e-07   0x1.0e16696236e1b00000000000000000000p-22
 difference:  4.28810429547489546653e-21   0x1.440000000000000000000000000000000p-68
 ulp       :  81.0000
 max.ulp   :  0.0000
Maximal error of `jn'
 is      :  144.0000 ulp
 accepted:  6.0000 ulp
Failure: Test: y0 (2.0) == 0.51037567264974511960
Result:
 is:          5.10375672649736489284e-01   0x1.054ff5cd68c3f00000000000000000000p-1
 should be:   5.10375672649745149023e-01   0x1.054ff5cd68c8d00000000000000000000p-1
 difference:  8.65973959207622101530e-15   0x1.380000000000000000000000000000000p-47
 ulp       :  78.0000
 max.ulp   :  0.0000
Failure: Test: y0 (8.0) == 0.22352148938756622053
Result:
 is:          2.23521489387562388718e-01   0x1.c9c5a276fb7a200000000000000000000p-3
 should be:   2.23521489387566218987e-01   0x1.c9c5a276fb82c00000000000000000000p-3
 difference:  3.83026943495679006446e-15   0x1.140000000000000000000000000000000p-48
 ulp       :  138.0000
 max.ulp   :  1.0000
Maximal error of `y0'
 is      :  138.0000 ulp
 accepted:  2.0000 ulp
Failure: Test: y1 (2.0) == -0.10703243154093754689
Result:
 is:         -1.07032431540935737968e-01  -0x1.b667a391465c500000000000000000000p-4
 should be:  -1.07032431540937542080e-01  -0x1.b667a3914664700000000000000000000p-4
 difference:  1.80411241501587937819e-15   0x1.040000000000000000000000000000000p-49
 ulp       :  130.0000
 max.ulp   :  1.0000
Failure: Test: y1 (8.0) == -0.15806046173124749426
Result:
 is:         -1.58060461731244827899e-01  -0x1.43b5340f692d600000000000000000000p-3
 should be:  -1.58060461731247492434e-01  -0x1.43b5340f6933600000000000000000000p-3
 difference:  2.66453525910037569702e-15   0x1.800000000000000000000000000000000p-49
 ulp       :  96.0000
 max.ulp   :  1.0000
Maximal error of `y1'
 is      :  130.0000 ulp
 accepted:  3.0000 ulp
Failure: Test: yn (0, 2.0) == 0.51037567264974511960
Result:
 is:          5.10375672649736489284e-01   0x1.054ff5cd68c3f00000000000000000000p-1
 should be:   5.10375672649745149023e-01   0x1.054ff5cd68c8d00000000000000000000p-1
 difference:  8.65973959207622101530e-15   0x1.380000000000000000000000000000000p-47
 ulp       :  78.0000
 max.ulp   :  0.0000
Failure: Test: yn (0, 8.0) == 0.22352148938756622053
Result:
 is:          2.23521489387562388718e-01   0x1.c9c5a276fb7a200000000000000000000p-3
 should be:   2.23521489387566218987e-01   0x1.c9c5a276fb82c00000000000000000000p-3
 difference:  3.83026943495679006446e-15   0x1.140000000000000000000000000000000p-48
 ulp       :  138.0000
 max.ulp   :  1.0000
Failure: Test: yn (1, 2.0) == -0.10703243154093754689
Result:
 is:         -1.07032431540935737968e-01  -0x1.b667a391465c500000000000000000000p-4
 should be:  -1.07032431540937542080e-01  -0x1.b667a3914664700000000000000000000p-4
 difference:  1.80411241501587937819e-15   0x1.040000000000000000000000000000000p-49
 ulp       :  130.0000
 max.ulp   :  1.0000
Failure: Test: yn (1, 8.0) == -0.15806046173124749426
Result:
 is:         -1.58060461731244827899e-01  -0x1.43b5340f692d600000000000000000000p-3
 should be:  -1.58060461731247492434e-01  -0x1.43b5340f6933600000000000000000000p-3
 difference:  2.66453525910037569702e-15   0x1.800000000000000000000000000000000p-49
 ulp       :  96.0000
 max.ulp   :  1.0000
Failure: Test: yn (3, 2.0) == -1.1277837768404277861
Result:
 is:         -1.12778377684040886919e+00  -0x1.20b670067d29c00000000000000000000p+0
 should be:  -1.12778377684042774298e+00  -0x1.20b670067d2f100000000000000000000p+0
 difference:  1.88737914186276611872e-14   0x1.540000000000000000000000000000000p-46
 ulp       :  85.0000
 max.ulp   :  1.0000
Failure: Test: yn (10, 2.0) == -129184.54220803928264
Result:
 is:         -1.29184542208037091768e+05  -0x1.f8a08ace255af00000000000000000000p+16
 should be:  -1.29184542208039289108e+05  -0x1.f8a08ace2564600000000000000000000p+16
 difference:  2.19733919948339462280e-09   0x1.2e0000000000000000000000000000000p-29
 ulp       :  151.0000
 max.ulp   :  2.0000
Maximal error of `yn'
 is      :  151.0000 ulp
 accepted:  3.0000 ulp

Test suite completed:
  2413 test cases plus 2205 tests for exception flags executed.
  79 errors occured.
# Begin of automatic generation

# acos
Test "acos (0.7) == 0.7953988301841435554":
double: 4
idouble: 4

# asin
Test "asin (-0.5) == -pi/6":
float: 2
ifloat: 2
Test "asin (0.5) == pi/6":
float: 2
ifloat: 2
Test "asin (0.7) == 0.7753974966107530637":
double: 4
float: 2
idouble: 4
ifloat: 2

# atanh
Test "atanh (0.7) == 0.8673005276940531944":
double: 1
idouble: 1

# cabs
Test "cabs (-0.7 + 12.4 i) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "cabs (-0.7 - 12.4 i) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "cabs (-12.4 + 0.7 i) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "cabs (-12.4 - 0.7 i) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "cabs (0.7 + 1.2 i) == 1.3892443989449804508":
double: 62
idouble: 62
Test "cabs (0.7 + 12.4 i) == 12.41974234837422060118":
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
idouble: 1
ifloat: 1
Test "Imaginary part of: cacos (0.7 + 1.2 i) == 1.1351827477151551089 - 1.0927647857577371459 i":
float: 1
ifloat: 1

# cacosh
Test "Real part of: cacosh (-2 - 3 i) == -1.9833870299165354323 + 2.1414491111159960199 i":
double: 723
float: 7
idouble: 723
ifloat: 7
Test "Imaginary part of: cacosh (-2 - 3 i) == -1.9833870299165354323 + 2.1414491111159960199 i":
double: 4
float: 3
idouble: 4
ifloat: 3
Test "Real part of: cacosh (0.7 + 1.2 i) == 1.0927647857577371459 + 1.1351827477151551089 i":
double: 1
float: 1
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
idouble: 3
ifloat: 2
Test "Imaginary part of: casin (0.7 + 1.2 i) == 0.4356135790797415103 + 1.0927647857577371459 i":
float: 1
ifloat: 1

# casinh
Test "Real part of: casinh (-2 - 3 i) == -1.9686379257930962917 - 0.9646585044076027920 i":
double: 72
float: 1
idouble: 72
ifloat: 1
Test "Imaginary part of: casinh (-2 - 3 i) == -1.9686379257930962917 - 0.9646585044076027920 i":
double: 5
float: 6
idouble: 5
ifloat: 6
Test "Real part of: casinh (0.7 + 1.2 i) == 0.9786545955936738768 + 0.9113541895315601156 i":
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
Test "Real part of: catan (-2 - 3 i) == -1.4099210495965755225 - 0.2290726829685387662 i":
float: 3
ifloat: 3
Test "Imaginary part of: catan (-2 - 3 i) == -1.4099210495965755225 - 0.2290726829685387662 i":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "Real part of: catan (0.7 + 1.2 i) == 1.0785743834118921877 + 0.5770573776534306764 i":
float: 4
ifloat: 4
Test "Imaginary part of: catan (0.7 + 1.2 i) == 1.0785743834118921877 + 0.5770573776534306764 i":
double: 1
idouble: 1

# catanh
Test "Real part of: catanh (-2 - 3 i) == -0.1469466662255297520 - 1.3389725222944935611 i":
double: 4
idouble: 4
Test "Imaginary part of: catanh (-2 - 3 i) == -0.1469466662255297520 - 1.3389725222944935611 i":
float: 4
ifloat: 4
Test "Real part of: catanh (0.7 + 1.2 i) == 0.2600749516525135959 + 0.9702403077950989849 i":
float: 1
ifloat: 1
Test "Imaginary part of: catanh (0.7 + 1.2 i) == 0.2600749516525135959 + 0.9702403077950989849 i":
double: 1
float: 6
idouble: 1
ifloat: 6

# cbrt
Test "cbrt (-27.0) == -3.0":
double: 1
idouble: 1
Test "cbrt (0.970299) == 0.99":
double: 1
idouble: 1

# ccos
Test "Imaginary part of: ccos (-2 - 3 i) == -4.1896256909688072301 - 9.1092278937553365979 i":
float: 1
ifloat: 1
Test "Real part of: ccos (0.7 + 1.2 i) == 1.3848657645312111080 - 0.97242170335830028619 i":
double: 1
idouble: 1
Test "Imaginary part of: ccos (0.7 + 1.2 i) == 1.3848657645312111080 - 0.97242170335830028619 i":
double: 1
idouble: 1

# ccosh
Test "Real part of: ccosh (-2 - 3 i) == -3.7245455049153225654 + 0.5118225699873846088 i":
float: 1
ifloat: 1
Test "Imaginary part of: ccosh (-2 - 3 i) == -3.7245455049153225654 + 0.5118225699873846088 i":
float: 1
ifloat: 1
Test "Real part of: ccosh (0.7 + 1.2 i) == 0.4548202223691477654 + 0.7070296600921537682 i":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "Imaginary part of: ccosh (0.7 + 1.2 i) == 0.4548202223691477654 + 0.7070296600921537682 i":
double: 1
idouble: 1

# cexp
Test "Imaginary part of: cexp (-2.0 - 3.0 i) == -0.1339809149295426134 - 0.0190985162611351964 i":
float: 1
ifloat: 1
Test "Real part of: cexp (0.7 + 1.2 i) == 0.7296989091503236012 + 1.8768962328348102821 i":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "Imaginary part of: cexp (0.7 + 1.2 i) == 0.7296989091503236012 + 1.8768962328348102821 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
idouble: 1
ifloat: 3

# clog10
Test "Imaginary part of: clog10 (-0 + inf i) == inf + pi/2*log10(e) i":
float: 1
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
idouble: 1
ifloat: 5
Test "Imaginary part of: clog10 (-3 + inf i) == inf + pi/2*log10(e) i":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-3 - inf i) == inf - pi/2*log10(e) i":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-inf + 0 i) == inf + pi*log10(e) i":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-inf + 1 i) == inf + pi*log10(e) i":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-inf - 0 i) == inf - pi*log10(e) i":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (-inf - 1 i) == inf - pi*log10(e) i":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (0 + inf i) == inf + pi/2*log10(e) i":
float: 1
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 (0.7 + 1.2 i) == 0.1427786545038868803 + 0.4528483579352493248 i":
double: 156
float: 1
idouble: 156
ifloat: 1
Test "Imaginary part of: clog10 (0.7 + 1.2 i) == 0.1427786545038868803 + 0.4528483579352493248 i":
double: 1
idouble: 1
Test "Imaginary part of: clog10 (3 + inf i) == inf + pi/2*log10(e) i":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (3 - inf i) == inf - pi/2*log10(e) i":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (inf + inf i) == inf + pi/4*log10(e) i":
float: 1
ifloat: 1
Test "Imaginary part of: clog10 (inf - inf i) == inf - pi/4*log10(e) i":
float: 1
ifloat: 1

# cos
Test "cos (0.7) == 0.7648421872844884262":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "cos (M_PI_6l * 2.0) == 0.5":
double: 1
float: 0.5
idouble: 1
ifloat: 0.5
Test "cos (M_PI_6l * 4.0) == -0.5":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "cos (pi/2) == 0":
double: 0.2758
float: 0.3667
idouble: 0.2758
ifloat: 0.3667

# cpow
Test "Real part of: cpow (2 + 3 i, 4 + 0 i) == -119.0 - 120.0 i":
double: 37
float: 4
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: 1.1031
float: 1.4667
idouble: 1.1031
ifloat: 1.4667

# csin
Test "Imaginary part of: csin (0.7 + 1.2 i) == 1.1664563419657581376 + 1.1544997246948547371 i":
float: 1
ifloat: 1

# csinh
Test "Imaginary part of: csinh (-2 - 3 i) == 3.5905645899857799520 - 0.5309210862485198052 i":
double: 1
idouble: 1
Test "Real part of: csinh (0.7 + 1.2 i) == 0.27487868678117583582 + 1.1698665727426565139 i":
float: 1
ifloat: 1
Test "Imaginary part of: csinh (0.7 + 1.2 i) == 0.27487868678117583582 + 1.1698665727426565139 i":
float: 1
ifloat: 1

# csqrt
Test "Real part of: csqrt (-2 + 3 i) == 0.8959774761298381247 + 1.6741492280355400404 i":
double: 3
float: 1
idouble: 3
ifloat: 1
Test "Imaginary part of: csqrt (-2 + 3 i) == 0.8959774761298381247 + 1.6741492280355400404 i":
double: 2
idouble: 2
Test "Real part of: csqrt (-2 - 3 i) == 0.8959774761298381247 - 1.6741492280355400404 i":
double: 3
float: 1
idouble: 3
ifloat: 1
Test "Imaginary part of: csqrt (-2 - 3 i) == 0.8959774761298381247 - 1.6741492280355400404 i":
double: 2
idouble: 2
Test "Real part of: csqrt (0.7 + 1.2 i) == 1.0220676100300264507 + 0.5870453129635652115 i":
double: 15
float: 1
idouble: 15
ifloat: 1
Test "Imaginary part of: csqrt (0.7 + 1.2 i) == 1.0220676100300264507 + 0.5870453129635652115 i":
double: 18
float: 1
idouble: 18
ifloat: 1

# ctan
Test "Real part of: ctan (-2 - 3 i) == 0.0037640256415042482 - 1.0032386273536098014 i":
double: 1
idouble: 1
Test "Real part of: ctan (0.7 + 1.2 i) == 0.1720734197630349001 + 0.9544807059989405538 i":
float: 1
ifloat: 1
Test "Imaginary part of: ctan (0.7 + 1.2 i) == 0.1720734197630349001 + 0.9544807059989405538 i":
double: 1
float: 1
idouble: 1
ifloat: 1

# ctanh
Test "Real part of: ctanh (-2 - 3 i) == -0.9653858790221331242 + 0.0098843750383224937 i":
double: 1
float: 2
idouble: 1
ifloat: 2
Test "Imaginary part of: ctanh (0 + pi/4 i) == 0.0 + 1.0 i":
float: 1
ifloat: 1
Test "Real part of: ctanh (0.7 + 1.2 i) == 1.3472197399061191630 + 0.4778641038326365540 i":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "Imaginary part of: ctanh (0.7 + 1.2 i) == 1.3472197399061191630 + 0.4778641038326365540 i":
double: 2
float: 1
idouble: 2
ifloat: 1

# erfc
Test "erfc (0.7) == 0.32219880616258152702":
double: 1
idouble: 1
Test "erfc (1.2) == 0.089686021770364619762":
double: 2
float: 2
idouble: 2
ifloat: 2
Test "erfc (2.0) == 0.0046777349810472658379":
double: 1
idouble: 1
Test "erfc (4.1) == 0.67000276540848983727e-8":
double: 24
float: 12
idouble: 24
ifloat: 12

# exp10
Test "exp10 (-1) == 0.1":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "exp10 (0.7) == 5.0118723362727228500":
float: 1
ifloat: 1
Test "exp10 (3) == 1000":
double: 6
float: 2
idouble: 6
ifloat: 2

# expm1
Test "expm1 (1) == M_El - 1.0":
float: 1
ifloat: 1

# fmod
Test "fmod (-6.5, -2.3) == -1.9":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "fmod (-6.5, 2.3) == -1.9":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "fmod (6.5, -2.3) == 1.9":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "fmod (6.5, 2.3) == 1.9":
double: 2
float: 1
idouble: 2
ifloat: 1

# hypot
Test "hypot (-0.7, -12.4) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "hypot (-0.7, 12.4) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "hypot (-12.4, -0.7) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "hypot (-12.4, 0.7) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "hypot (0.7, -12.4) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "hypot (0.7, 1.2) == 1.3892443989449804508":
double: 62
idouble: 62
Test "hypot (0.7, 12.4) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "hypot (12.4, -0.7) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1
Test "hypot (12.4, 0.7) == 12.41974234837422060118":
double: 144
float: 1
idouble: 144
ifloat: 1

# j0
Test "j0 (10.0) == -0.24593576445134833520":
double: 2
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
Test "j1 (10.0) == 0.043472746168861436670":
float: 2
ifloat: 2
Test "j1 (2.0) == 0.57672480775687338720":
double: 89
idouble: 89
Test "j1 (8.0) == 0.23463634685391462438":
double: 144
idouble: 144

# jn
Test "jn (0, 10.0) == -0.24593576445134833520":
double: 2
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: 89
idouble: 89
Test "jn (1, 8.0) == 0.23463634685391462438":
double: 144
idouble: 144
Test "jn (10, 0.1) == 0.26905328954342155795e-19":
double: 6
float: 4
idouble: 6
ifloat: 4
Test "jn (10, 0.7) == 0.75175911502153953928e-11":
double: 3
float: 1
idouble: 3
ifloat: 1
Test "jn (10, 10.0) == 0.20748610663335885770":
double: 4
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
idouble: 1
Test "jn (3, 0.7) == 0.0069296548267508408077":
float: 1
ifloat: 1
Test "jn (3, 10.0) == 0.058379379305186812343":
double: 3
float: 1
idouble: 3
ifloat: 1
Test "jn (3, 2.0) == 0.12894324947440205110":
double: 77
float: 2
idouble: 77
ifloat: 2

# lgamma
Test "lgamma (0.7) == 0.26086724653166651439":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "lgamma (1.2) == -0.853740900033158497197e-1":
double: 1
float: 2
idouble: 1
ifloat: 2

# log
Test "log (0.7) == -0.35667494393873237891":
double: 1
float: 1
idouble: 1
ifloat: 1

# log10
Test "log10 (0.7) == -0.15490195998574316929":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "log10 (e) == log10(e)":
float: 1
ifloat: 1

# log1p
Test "log1p (-0.3) == -0.35667494393873237891":
double: 1
float: 1
idouble: 1
ifloat: 1

# log2
Test "log2 (0.7) == -0.51457317282975824043":
double: 1
float: 1
idouble: 1
ifloat: 1

# sincos
Test "sincos (0.7, &sin_res, &cos_res) puts 0.76484218728448842626 in cos_res":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "sincos (M_PI_6l*2.0, &sin_res, &cos_res) puts 0.5 in cos_res":
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":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "sincos (pi/2, &sin_res, &cos_res) puts 0 in cos_res":
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":
float: 1
ifloat: 1

# sinh
Test "sinh (0.7) == 0.75858370183953350346":
double: 1
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
idouble: 0.5

# tanh
Test "tanh (0.7) == 0.60436777711716349631":
double: 1
float: 1
idouble: 1
ifloat: 1

# tgamma
Test "tgamma (-0.5) == -2 sqrt (pi)":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "tgamma (0.5) == sqrt (pi)":
float: 1
ifloat: 1
Test "tgamma (0.7) == 1.29805533264755778568":
double: 1
float: 1
idouble: 1
ifloat: 1

# y0
Test "y0 (0.7) == -0.19066492933739506743":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "y0 (1.0) == 0.088256964215676957983":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "y0 (1.5) == 0.38244892379775884396":
double: 2
float: 1
idouble: 2
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: 138
float: 1
idouble: 138
ifloat: 1

# y1
Test "y1 (0.1) == -6.4589510947020269877":
double: 1
idouble: 1
Test "y1 (0.7) == -1.1032498719076333697":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "y1 (1.5) == -0.41230862697391129595":
float: 1
ifloat: 1
Test "y1 (10.0) == 0.24901542420695388392":
double: 3
float: 1
idouble: 3
ifloat: 1
Test "y1 (2.0) == -0.10703243154093754689":
double: 130
float: 1
idouble: 130
ifloat: 1
Test "y1 (8.0) == -0.15806046173124749426":
double: 96
float: 2
idouble: 96
ifloat: 2

# yn
Test "yn (0, 0.7) == -0.19066492933739506743":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "yn (0, 1.0) == 0.088256964215676957983":
double: 2
float: 1
idouble: 2
ifloat: 1
Test "yn (0, 1.5) == 0.38244892379775884396":
double: 2
float: 1
idouble: 2
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: 138
float: 1
idouble: 138
ifloat: 1
Test "yn (1, 0.1) == -6.4589510947020269877":
double: 1
idouble: 1
Test "yn (1, 0.7) == -1.1032498719076333697":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "yn (1, 1.5) == -0.41230862697391129595":
float: 1
ifloat: 1
Test "yn (1, 10.0) == 0.24901542420695388392":
double: 3
float: 1
idouble: 3
ifloat: 1
Test "yn (1, 2.0) == -0.10703243154093754689":
double: 130
float: 1
idouble: 130
ifloat: 1
Test "yn (1, 8.0) == -0.15806046173124749426":
double: 96
float: 2
idouble: 96
ifloat: 2
Test "yn (10, 0.1) == -0.11831335132045197885e19":
double: 2
float: 2
idouble: 2
ifloat: 2
Test "yn (10, 0.7) == -0.42447194260703866924e10":
double: 3
idouble: 3
Test "yn (10, 1.0) == -0.12161801427868918929e9":
double: 1
idouble: 1
Test "yn (10, 10.0) == -0.35981415218340272205":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "yn (10, 2.0) == -129184.54220803928264":
double: 151
idouble: 151
Test "yn (3, 0.1) == -5099.3323786129048894":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "yn (3, 0.7) == -15.819479052819633505":
double: 3
float: 1
idouble: 3
ifloat: 1
Test "yn (3, 10.0) == -0.25136265718383732978":
double: 1
float: 1
idouble: 1
ifloat: 1
Test "yn (3, 2.0) == -1.1277837768404277861":
double: 85
idouble: 85

# Maximal error of functions:
Function: "acos":
double: 4
idouble: 4

Function: "asin":
double: 4
float: 2
idouble: 4
ifloat: 2

Function: "atanh":
double: 1
idouble: 1

Function: "cabs":
double: 144
float: 1
idouble: 144
ifloat: 1

Function: Real part of "cacos":
double: 5
idouble: 5

Function: Imaginary part of "cacos":
double: 12
idouble: 12

Function: Real part of "cacosh":
double: 723
idouble: 723

Function: Imaginary part of "cacosh":
double: 4
idouble: 4

Function: Real part of "casin":
double: 19
idouble: 19

Function: Imaginary part of "casin":
double: 12
idouble: 12

Function: Real part of "casinh":
double: 72
idouble: 72

Function: Imaginary part of "casinh":
double: 43
idouble: 43

Function: "cbrt":
double: 1
idouble: 1

Function: Real part of "clog":
double: 5
idouble: 5

Function: Imaginary part of "clog":
double: 1
idouble: 1

Function: Real part of "clog10":
double: 156
idouble: 156

Function: Imaginary part of "clog10":
double: 1
idouble: 1

Function: "cos":
double: 2
float: 1
idouble: 2
ifloat: 1

Function: Real part of "cpow":
double: 37
idouble: 37

Function: Imaginary part of "cpow":
double: 36
idouble: 36

Function: Real part of "csqrt":
double: 15
idouble: 15

Function: Imaginary part of "csqrt":
double: 18
idouble: 18

Function: "erfc":
double: 24
float: 12
idouble: 24
ifloat: 12

Function: "exp10":
double: 6
float: 2
idouble: 6
ifloat: 2

Function: "expm1":
float: 1
ifloat: 1

Function: "fmod":
double: 2
float: 1
idouble: 2
ifloat: 1

Function: "hypot":
double: 144
float: 1
idouble: 144
ifloat: 1

Function: "j0":
double: 137
float: 2
idouble: 137
ifloat: 2

Function: "j1":
double: 144
float: 2
idouble: 144
ifloat: 2

Function: "jn":
double: 144
float: 4
idouble: 144
ifloat: 4

Function: "lgamma":
double: 1
float: 2
idouble: 1
ifloat: 2

Function: "log":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "log10":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "log1p":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "log2":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "sincos":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "sinh":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "sqrt":
double: 108
idouble: 108

Function: "tan":
double: 0.5
idouble: 0.5

Function: "tanh":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "tgamma":
double: 1
float: 1
idouble: 1
ifloat: 1

Function: "y0":
double: 138
float: 1
idouble: 138
ifloat: 1

Function: "y1":
double: 130
float: 2
idouble: 130
ifloat: 2

Function: "yn":
double: 151
float: 2
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]