1 2 /* @(#)w_sqrt.c 1.3 95/01/18 */ 3 /* 4 * ==================================================== 5 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 6 * 7 * Developed at SunSoft, 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 /* 15 * wrapper sqrt(x) 16 */ 17 18 #include "fdlibm.h" 19 20 #ifdef __STDC__ sqrt(double x)21 double sqrt(double x) /* wrapper sqrt */ 22 #else 23 double sqrt(x) /* wrapper sqrt */ 24 double x; 25 #endif 26 { 27 #ifdef _IEEE_LIBM 28 return __ieee754_sqrt(x); 29 #else 30 double z; 31 z = __ieee754_sqrt(x); 32 if(_LIB_VERSION == _IEEE_ || isnan(x)) return z; 33 if(x<0.0) { 34 return __kernel_standard(x,x,26); /* sqrt(negative) */ 35 } else 36 return z; 37 #endif 38 } 39