source: trunk/sys/libm/w_sqrt.c @ 185

Last change on this file since 185 was 1, checked in by alain, 8 years ago

First import

File size: 832 bytes
RevLine 
[1]1
2/* @(#)w_sqrt.c 5.1 93/09/24 */
3/*
4 * ====================================================
5 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
6 *
7 * Developed at SunPro, 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 <libm/fdlibm.h>
19
20#ifdef __STDC__
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}
Note: See TracBrowser for help on using the repository browser.