Print this page
11210 libm should be cstyle(1ONBLD) clean
*** 20,40 ****
*/
/*
* Copyright 2011 Nexenta Systems, Inc. All rights reserved.
*/
/*
* Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#pragma weak __sinhl = sinhl
#include "libm.h"
#include "longdouble.h"
! /* SINH(X)
* RETURN THE HYPERBOLIC SINE OF X
*
* Method :
* 1. reduce x to non-negative by SINH(-x) = - SINH(x).
* 2.
--- 20,43 ----
*/
/*
* Copyright 2011 Nexenta Systems, Inc. All rights reserved.
*/
+
/*
* Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#pragma weak __sinhl = sinhl
#include "libm.h"
#include "longdouble.h"
! /* BEGIN CSTYLED */
! /*
! * SINH(X)
* RETURN THE HYPERBOLIC SINE OF X
*
* Method :
* 1. reduce x to non-negative by SINH(-x) = - SINH(x).
* 2.
*** 54,63 ****
--- 57,67 ----
* Special cases:
* SINH(x) is x if x is +INF, -INF, or NaN.
* only SINH(0)=0 is exact for finite argument.
*
*/
+ /* END CSTYLED */
static const long double C[] = {
0.5L,
1.0L,
1.135652340629414394879149e+04L,
*** 74,88 ****
--- 78,95 ----
{
long double r, t;
if (!finitel(x))
return (x + x); /* x is INF or NaN */
+
r = fabsl(x);
+
if (r < lnovft) {
t = expm1l(r);
r = copysignl((t + t / (one + t)) * half, x);
} else {
r = copysignl(expl((r - lnovft) - lnovlo), x);
r = scalbnl(r, 16383);
}
+
return (r);
}