X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=blobdiff_plain;f=src%2Fmath%2Fatanh.c;h=dbe241d168300810846f80625d8027ccb1948a8b;hp=2929046336cc9cd701a0d58954440d6b227de515;hb=0cbb65479147ecdaa664e88cc2a5a925f3de502f;hpb=b03255af77776703c8d48819e824d09f6f54ba86 diff --git a/src/math/atanh.c b/src/math/atanh.c index 29290463..dbe241d1 100644 --- a/src/math/atanh.c +++ b/src/math/atanh.c @@ -30,8 +30,7 @@ #include "libm.h" -static const double one = 1.0, huge = 1e300; -static const double zero = 0.0; +static const double huge = 1e300; double atanh(double x) { @@ -44,15 +43,15 @@ double atanh(double x) if ((ix | ((lx|-lx)>>31)) > 0x3ff00000) /* |x| > 1 */ return (x-x)/(x-x); if (ix == 0x3ff00000) - return x/zero; - if (ix < 0x3e300000 && (huge+x) > zero) /* x < 2**-28 */ + return x/0.0; + if (ix < 0x3e300000 && (huge+x) > 0.0) /* x < 2**-28 */ return x; SET_HIGH_WORD(x, ix); if (ix < 0x3fe00000) { /* x < 0.5 */ t = x+x; - t = 0.5*log1p(t + t*x/(one-x)); + t = 0.5*log1p(t + t*x/(1.0-x)); } else - t = 0.5*log1p((x+x)/(one-x)); + t = 0.5*log1p((x+x)/(1.0-x)); if (hx >= 0) return t; return -t;