This is the mail archive of the libc-alpha@sourceware.org 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]
Other format: [Raw text]

Re: Improve tgamma accuracy (bug 18613) [committed]


On Thu, 2 Jul 2015, Szabolcs Nagy wrote:

> hm i tried to verify this on aarch64 and also regenerate the libm ulps
> 
> but the new ulps file somehow become much smaller than expected
> 
> $ grep Function NewUlps
> Function: Real part of "cexp_downward":
> Function: Imaginary part of "cexp_downward":
> Function: Real part of "cexp_towardzero":
> Function: Imaginary part of "cexp_towardzero":
> Function: Real part of "cexp_upward":
> Function: Imaginary part of "cexp_upward":
> Function: Real part of "csin_upward":
> Function: Real part of "csinh_downward":
> Function: "jn_downward":
> Function: "jn_towardzero":
> Function: "jn_upward":
> Function: "tgamma_downward":
> Function: "tgamma_towardzero":
> Function: "tgamma_upward":
> 
> so most functions have no errors and 'make regen-ulps'
> has no error output.

Those are the cases for which tests were only recently added (previously 
not tested in all rounding modes).  But NewUlps is created by adding the 
new ulps to the old ones, not just taking the new ones on their own.  (I 
recommend truncating the libm-test-ulps file in the source tree before 
running "make regen-ulps" anyway, so that you get ulps reductions as well 
as increases and new ulps.)

A proper from-scratch regeneration (starting with the existing file 
truncated) should give you a file very similar to the mips64 update I 
recently checked in, since both use the same floating-point formats and 
neither has custom versions of any libm functions whose results aren't 
exactly determined.

-- 
Joseph S. Myers
joseph@codesourcery.com


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