Print this page
5261 libm should stop using synonyms.h
5298 fabs is 0-sized, confuses dis(1) and others
Reviewed by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
Approved by: Gordon Ross <gwr@nexenta.com>


   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 /*
  22  * Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
  23  */
  24 /*
  25  * Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
  26  * Use is subject to license terms.
  27  */
  28 
  29 #pragma weak sincosf = __sincosf
  30 
  31 /* INDENT OFF */
  32 /*
  33  * For |x| < pi/4, let z = x * x, and approximate sin(x) by
  34  *
  35  *      S(x) = x(S0 + S1*z)(S2 + S3*z + z*z)
  36  * where
  37  *      S0 =   1.85735322054308378716204874632872525989806770558e-0003,
  38  *      S1 =  -1.95035094218403635082921458859320791358115801259e-0004,
  39  *      S2 =   5.38400550766074785970952495168558701485841707252e+0002,
  40  *      S3 =  -3.31975110777873728964197739157371509422022905947e+0001,
  41  *
  42  * with error bounded by |(sin(x) - S(x))/x| < 2**(-28.2), and
  43  * cos(x) by
  44  *
  45  *      C(x) = (C0 + C1*z + C2*z*z) * (C3 + C4*z + z*z)
  46  * where
  47  *      C0 =   1.09349482127188401868272000389539985058873853699e-0003
  48  *      C1 =  -5.03324285989964979398034700054920226866107675091e-0004
  49  *      C2 =   2.43792880266971107750418061559602239831538067410e-0005




   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 /*
  22  * Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
  23  */
  24 /*
  25  * Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
  26  * Use is subject to license terms.
  27  */
  28 
  29 #pragma weak __sincosf = sincosf
  30 
  31 /* INDENT OFF */
  32 /*
  33  * For |x| < pi/4, let z = x * x, and approximate sin(x) by
  34  *
  35  *      S(x) = x(S0 + S1*z)(S2 + S3*z + z*z)
  36  * where
  37  *      S0 =   1.85735322054308378716204874632872525989806770558e-0003,
  38  *      S1 =  -1.95035094218403635082921458859320791358115801259e-0004,
  39  *      S2 =   5.38400550766074785970952495168558701485841707252e+0002,
  40  *      S3 =  -3.31975110777873728964197739157371509422022905947e+0001,
  41  *
  42  * with error bounded by |(sin(x) - S(x))/x| < 2**(-28.2), and
  43  * cos(x) by
  44  *
  45  *      C(x) = (C0 + C1*z + C2*z*z) * (C3 + C4*z + z*z)
  46  * where
  47  *      C0 =   1.09349482127188401868272000389539985058873853699e-0003
  48  *      C1 =  -5.03324285989964979398034700054920226866107675091e-0004
  49  *      C2 =   2.43792880266971107750418061559602239831538067410e-0005