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> 5262 libm needs to be carefully unifdef'd 5268 libm doesn't need to hide symbols which are already local Reviewed by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net> Reviewed by: Igor Kozhukhov <ikozhukhov@gmail.com> Reviewed by: Gordon Ross <gwr@nexenta.com> Approved by: Gordon Ross <gwr@nexenta.com>

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 /* 23 * Copyright 2011 Nexenta Systems, Inc. All rights reserved. 24 */ 25 /* 26 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 27 * Use is subject to license terms. 28 */ 29 30 #if defined(ELFOBJ) 31 #pragma weak expm1l = __expm1l 32 #endif 33 #if !defined(__sparc) 34 #error Unsupported architecture 35 #endif 36 37 /* 38 * expm1l(x) 39 * 40 * Table driven method 41 * Written by K.C. Ng, June 1995. 42 * Algorithm : 43 * 1. expm1(x) = x if x<2**-114 44 * 2. if |x| <= 0.0625 = 1/16, use approximation 45 * expm1(x) = x + x*P/(2-P) 46 * where 47 * P = x - z*(P1+z*(P2+z*(P3+z*(P4+z*(P5+z*P6+z*P7))))), z = x*x; 48 * (this formula is derived from 49 * 2-P+x = R = x*(exp(x)+1)/(exp(x)-1) ~ 2 + x*x/6 - x^4/360 + ...) 50 * 51 * P1 = 1.66666666666666666666666666666638500528074603030e-0001 52 * P2 = -2.77777777777777777777777759668391122822266551158e-0003 | 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 /* 23 * Copyright 2011 Nexenta Systems, Inc. All rights reserved. 24 */ 25 /* 26 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 27 * Use is subject to license terms. 28 */ 29 30 #pragma weak __expm1l = expm1l 31 32 #if !defined(__sparc) 33 #error Unsupported architecture 34 #endif 35 36 /* 37 * expm1l(x) 38 * 39 * Table driven method 40 * Written by K.C. Ng, June 1995. 41 * Algorithm : 42 * 1. expm1(x) = x if x<2**-114 43 * 2. if |x| <= 0.0625 = 1/16, use approximation 44 * expm1(x) = x + x*P/(2-P) 45 * where 46 * P = x - z*(P1+z*(P2+z*(P3+z*(P4+z*(P5+z*P6+z*P7))))), z = x*x; 47 * (this formula is derived from 48 * 2-P+x = R = x*(exp(x)+1)/(exp(x)-1) ~ 2 + x*x/6 - x^4/360 + ...) 49 * 50 * P1 = 1.66666666666666666666666666666638500528074603030e-0001 51 * P2 = -2.77777777777777777777777759668391122822266551158e-0003 |