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

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Regenerate sparc64 ulps


Jakub Jelinek <jakub at redhat dot com> writes:

> Hi!
>
> With this patch, all float and double tests pass, but ldouble has still lots
> of failures because some libm-test.inc constants don't have enough precision
> (36 digits) - I obviously have not included any ULPs bigger than 6
> in libm-test-ulps.
> The failed tests are:
> Failure: Test: lgamma (0.7) == 0.26086724653166651439
> Failure: Test: lgamma (1.2) == -0.853740900033158497197e-1
> Failure: Test: tgamma (0.7) == 1.29805533264755778568
> Failure: Test: tgamma (1.2) == 0.91816874239976061064
> Failure: Test: Real part of: ccos (-2 - 3 i) == -4.1896256909688072301 - 9.1092278937553365979 i
> Failure: Test: Imaginary part of: ccos (-2 - 3 i) == -4.1896256909688072301 - 9.1092278937553365979 i
> Failure: Test: Real part of: ccosh (-2 - 3 i) == -3.7245455049153225654 + 0.5118225699873846088 i
> Failure: Test: Imaginary part of: ccosh (-2 - 3 i) == -3.7245455049153225654 + 0.5118225699873846088 i
> Failure: Test: Real part of: clog10 (-2 - 3 i) == 0.5569716761534183846 - 0.9375544629863747085 i
> Failure: Test: Imaginary part of: clog10 (-2 - 3 i) == 0.5569716761534183846 - 0.9375544629863747085 i
> Failure: Test: Real part of: cpow (0.75 + 1.25 i, 1.0 + 1.0 i) == 0.0846958290317209430433805274189191353 + 0.513285749182902449043287190519090481 i

This one has 36 digits already.

> Failure: Test: Real part of: csin (-2 - 3 i) == -9.1544991469114295734 + 4.1689069599665643507 i
> Failure: Test: Imaginary part of: csin (-2 - 3 i) == -9.1544991469114295734 + 4.1689069599665643507 i
> Failure: Test: Real part of: csinh (-2 - 3 i) == 3.5905645899857799520 - 0.5309210862485198052 i
> Failure: Test: Imaginary part of: csinh (-2 - 3 i) == 3.5905645899857799520 - 0.5309210862485198052 i
> Failure: Test: Real part of: ctan (-2 - 3 i) == 0.0037640256415042482 - 1.0032386273536098014 i
> Failure: Test: Imaginary part of: ctan (-2 - 3 i) == 0.0037640256415042482 - 1.0032386273536098014 i
> Failure: Test: Real part of: ctanh (-2 - 3 i) == -0.9653858790221331242 + 0.0098843750383224937 i
> Failure: Test: Imaginary part of: ctanh (-2 - 3 i) == -0.9653858790221331242 + 0.0098843750383224937 i
> for which ulps are counted in trilions.
> Andreas, could you please recompute those constants?

I recomputed those constants above now with 36 digits and have
committed your patch together with the appended patch and made the
needed changes for the i386 file,

Andreas

2003-03-22  Andreas Jaeger  <aj at suse dot de>

	* math/libm-test.inc (tgamma_test): Recompute some constants with
	36 digits precision.
	(lgamma_test): Likewise.
	(ccos_test): Likewise.
	(ccosh_test): Likewise.
	(clog10_test): Likewise.
	(csin_test): Likewise.
	(csinh_test): Likewise.
	(ctan_test): Likewise.
	(ctanh_test): Likewise.

============================================================
Index: math/libm-test.inc
--- math/libm-test.inc	15 Feb 2003 07:11:32 -0000	1.50
+++ math/libm-test.inc	21 Mar 2003 15:08:29 -0000
@@ -1537,7 +1537,7 @@ ccos_test (void)
   TEST_c_c (ccos, nan_value, nan_value, nan_value, nan_value);
 
   TEST_c_c (ccos, 0.75L, 1.25L, 1.38173873063425888530729933139078645L, -1.09193013555397466170919531722024128L);
-  TEST_c_c (ccos, -2, -3, -4.1896256909688072301L, -9.1092278937553365979L);
+  TEST_c_c (ccos, -2, -3, -4.18962569096880723013255501961597373L, -9.10922789375533659797919726277886212L);
 
   END (ccos, complex);
 }
@@ -1606,7 +1606,7 @@ ccosh_test (void)
 
   TEST_c_c (ccosh, 0.75L, 1.25L, 0.408242591877968807788852146397499084L, 0.780365930845853240391326216300863152L);
 
-  TEST_c_c (ccosh, -2, -3, -3.7245455049153225654L, 0.5118225699873846088L);
+  TEST_c_c (ccosh, -2, -3, -3.72454550491532256547397070325597253L, 0.511822569987384608834463849801875634L );
 
   END (ccosh, complex);
 }
@@ -1836,7 +1836,7 @@ clog10_test (void)
   TEST_c_c (clog10, nan_value, nan_value, nan_value, nan_value);
 
   TEST_c_c (clog10, 0.75L, 1.25L, 0.163679467193165171449476605077428975L, 0.447486970040493067069984724340855636L);
-  TEST_c_c (clog10, -2, -3, 0.5569716761534183846L, -0.9375544629863747085L);
+  TEST_c_c (clog10, -2, -3, 0.556971676153418384603252578971164214L, -0.937554462986374708541507952140189646L);
 
   END (clog10, complex);
 }
@@ -2072,7 +2072,7 @@ csin_test (void)
   TEST_c_c (csin, nan_value, nan_value, nan_value, nan_value);
 
   TEST_c_c (csin, 0.75L, 1.25L, 1.28722291002649188575873510790565441L, 1.17210635989270256101081285116138863L);
-  TEST_c_c (csin, -2, -3, -9.1544991469114295734L, 4.1689069599665643507L);
+  TEST_c_c (csin, -2, -3, -9.15449914691142957346729954460983256L, 4.16890695996656435075481305885375484L);
 
   END (csin, complex);
 }
@@ -2140,7 +2140,7 @@ csinh_test (void)
   TEST_c_c (csinh, nan_value, nan_value, nan_value, nan_value);
 
   TEST_c_c (csinh, 0.75L, 1.25L, 0.259294854551162779153349830618433028L, 1.22863452409509552219214606515777594L);
-  TEST_c_c (csinh, -2, -3, 3.5905645899857799520L, -0.5309210862485198052L);
+  TEST_c_c (csinh, -2, -3, 3.59056458998577995201256544779481679L, -0.530921086248519805267040090660676560L);
 
   END (csinh, complex);
 }
@@ -2264,7 +2264,7 @@ ctan_test (void)
   TEST_c_c (ctan, nan_value, nan_value, nan_value, nan_value);
 
   TEST_c_c (ctan, 0.75L, 1.25L, 0.160807785916206426725166058173438663L, 0.975363285031235646193581759755216379L);
-  TEST_c_c (ctan, -2, -3, 0.0037640256415042482L, -1.0032386273536098014L);
+  TEST_c_c (ctan, -2, -3, 0.376402564150424829275122113032269084e-2L, -1.00323862735360980144635859782192726L);
 
   END (ctan, complex);
 }
@@ -2323,7 +2323,7 @@ ctanh_test (void)
   TEST_c_c (ctanh, 0, M_PI_4l, 0.0, 1.0);
 
   TEST_c_c (ctanh, 0.75L, 1.25L, 1.37260757053378320258048606571226857L, 0.385795952609750664177596760720790220L);
-  TEST_c_c (ctanh, -2, -3, -0.9653858790221331242L, 0.0098843750383224937L);
+  TEST_c_c (ctanh, -2, -3, -0.965385879022133124278480269394560686L, 0.988437503832249372031403430350121098e-2L);
 
   END (ctanh, complex);
 }
@@ -3067,8 +3067,8 @@ lgamma_test (void)
 
   TEST_f_f1 (lgamma, 0.5, M_LOG_SQRT_PIl, 1);
   TEST_f_f1 (lgamma, -0.5, M_LOG_2_SQRT_PIl, -1);
-  TEST_f_f1 (lgamma, 0.7L, 0.26086724653166651439L, 1);
-  TEST_f_f1 (lgamma, 1.2L, -0.853740900033158497197e-1L, 1);
+  TEST_f_f1 (lgamma, 0.7L, 0.260867246531666514385732417016759578L, 1);
+  TEST_f_f1 (lgamma, 1.2L, -0.853740900033158497197028392998854470e-1L, 1);
 
   END (lgamma);
 }
@@ -4078,8 +4078,8 @@ tgamma_test (void)
   TEST_f_f (tgamma, 1, 1);
   TEST_f_f (tgamma, 4, 6);
 
-  TEST_f_f (tgamma, 0.7L, 1.29805533264755778568L);
-  TEST_f_f (tgamma, 1.2L, 0.91816874239976061064L);
+  TEST_f_f (tgamma, 0.7L, 1.29805533264755778568117117915281162L);
+  TEST_f_f (tgamma, 1.2L, 0.918168742399760610640951655185830401L);
 
   END (tgamma);
 }
-- 
 Andreas Jaeger
  SuSE Labs aj at suse dot de
   private aj at arthur dot inka dot de
    http://www.suse.de/~aj


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