Print this page
11210 libm should be cstyle(1ONBLD) clean
@@ -20,10 +20,11 @@
*/
/*
* Copyright 2011 Nexenta Systems, Inc. All rights reserved.
*/
+
/*
* Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -36,25 +37,30 @@
one = 1.0L,
big = 1.0e+20L,
tiny = 1.0e-20L;
long double
-asinhl(long double x) {
+asinhl(long double x)
+{
long double t, w;
+
#ifndef lint
volatile long double dummy;
#endif
w = fabsl(x);
+
if (isnanl(x))
return (x + x); /* x is NaN */
+
if (w < tiny) {
#ifndef lint
dummy = x + big; /* inexact if x != 0 */
#endif
return (x); /* tiny x */
} else if (w < big) {
t = one / w;
return (copysignl(log1pl(w + w / (t + sqrtl(one + t * t))), x));
- } else
+ } else {
return (copysignl(logl(w) + ln2, x));
+ }
}