1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- #if defined(LIBM_SCCS) && !defined(lint)
- static char rcsid[] = "$NetBSD: w_atanh.c,v 1.6 1995/05/10 20:48:43 jtc Exp $";
- #endif
- #include "math.h"
- #include "math_private.h"
- #ifdef __STDC__
- double atanh(double x)
- #else
- double atanh(x)
- double x;
- #endif
- {
- #ifdef _IEEE_LIBM
- return __ieee754_atanh(x);
- #else
- double z,y;
- z = __ieee754_atanh(x);
- if(_LIB_VERSION == _IEEE_ || isnan(x)) return z;
- y = fabs(x);
- if(y>=1.0) {
- if(y>1.0)
- return __kernel_standard(x,x,30);
- else
- return __kernel_standard(x,x,31);
- } else
- return z;
- #endif
- }
|