source: trunk/sys/libm/w_atanh.c @ 286

Last change on this file since 286 was 1, checked in by alain, 8 years ago

First import

File size: 948 bytes
Line 
1
2/* @(#)w_atanh.c 5.1 93/09/24 */
3/*
4 * ====================================================
5 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
6 *
7 * Developed at SunPro, a Sun Microsystems, Inc. business.
8 * Permission to use, copy, modify, and distribute this
9 * software is freely granted, provided that this notice
10 * is preserved.
11 * ====================================================
12 */
13/*
14 * wrapper atanh(x)
15 */
16
17#include <libm/fdlibm.h>
18
19
20#ifdef __STDC__
21        double atanh(double x)          /* wrapper atanh */
22#else
23        double atanh(x)                 /* wrapper atanh */
24        double x;
25#endif
26{
27#ifdef _IEEE_LIBM
28        return __ieee754_atanh(x);
29#else
30        double z,y;
31        z = __ieee754_atanh(x);
32        if(_LIB_VERSION == _IEEE_ || isnan(x)) return z;
33        y = fabs(x);
34        if(y>=1.0) {
35            if(y>1.0)
36                return __kernel_standard(x,x,30); /* atanh(|x|>1) */
37            else 
38                return __kernel_standard(x,x,31); /* atanh(|x|==1) */
39        } else
40            return z;
41#endif
42}
Note: See TracBrowser for help on using the repository browser.