freebsd-skq/lib/msun
Bruce Evans 1a787460ba Fixed some magic numbers.
The threshold for not being tiny was too small.  Use the usual 2**-12
threshold.  As for sinhf, use a different method (now the same as for
sinhf) to set the inexact flag for tiny nonzero x so that the larger
threshold works, although this method is imperfect.  As for sinhf,
this change is not just an optimization, since the general code that
we fell into has accuracy problems even for tiny x.  On amd64, avoiding
it fixes tanhf on 2*13495596 args with errors of between 1 and 1.3
ulps and thus reduces the total number of args with errors of >= 1 ulp
from 37533748 to 5271278; the maximum error is unchanged at 2.2 ulps.

The magic number 22 is log(DBL_MAX)/2 plus slop.  This is bogus for
float precision.  Use 9 (log(FLT_MAX)/2 plus less slop than for
double precision).  Unlike for coshf and tanhf, this is just an
optimization, and MAX isn't misspelled EPSILON in the commit log.

I started testing with nonstandard rounding modes, and verified that
the chosen thresholds work for all modes modulo problems not related
to thresholds.  The best thresholds are not very dependent on the mode,
at least for tanhf.
2005-12-11 11:40:55 +00:00
..
alpha
amd64
arm
bsdsrc Removed an unused declaration which was so old that it wasn't a prototype 2005-11-18 05:03:12 +00:00
i387 Fixed some comments added in rev.1.5. 2005-10-30 12:21:02 +00:00
ia64
man s/5.5/6.0/ in HISTORY section. 2005-11-24 09:25:10 +00:00
powerpc
sparc64
src Fixed some magic numbers. 2005-12-11 11:40:55 +00:00
Makefile Detach k_rem_pio2f.c from the build since it is now unused. It is a libm 2005-11-06 17:59:40 +00:00