diff options
author | Szabolcs Nagy <nsz@port70.net> | 2012-12-16 19:52:42 +0100 |
---|---|---|
committer | Szabolcs Nagy <nsz@port70.net> | 2012-12-16 19:52:42 +0100 |
commit | e42a977fe5dbe48ba45072ab82886e6b5a694487 (patch) | |
tree | 949685001df3ff5253943835cd8e5943ba6a9b0b /src/math/fmax.c | |
parent | f143458223f90262a9c2d929f9e815a74e3aa139 (diff) | |
download | musl-e42a977fe5dbe48ba45072ab82886e6b5a694487.tar.gz musl-e42a977fe5dbe48ba45072ab82886e6b5a694487.tar.bz2 musl-e42a977fe5dbe48ba45072ab82886e6b5a694487.tar.xz musl-e42a977fe5dbe48ba45072ab82886e6b5a694487.zip |
math: tanh.c cleanup similar to sinh, cosh
comments are kept in the double version of the function
compared to fdlibm/freebsd we partition the domain into one
more part and select different threshold points:
now the [log(5/3)/2,log(3)/2] and [log(3)/2,inf] domains
should have <1.5ulp error
(so only the last bit may be wrong, assuming good exp, expm1)
(note that log(3)/2 and log(5/3)/2 are the points where tanh
changes resolution: tanh(log(3)/2)=0.5, tanh(log(5/3)/2)=0.25)
for some x < log(5/3)/2 (~=0.2554) the error can be >1.5ulp
but it should be <2ulp
(the freebsd code had some >2ulp errors in [0.255,1])
even with the extra logic the new code produces smaller
object files
Diffstat (limited to 'src/math/fmax.c')
0 files changed, 0 insertions, 0 deletions