diff options
Diffstat (limited to 'libm/upstream-freebsd/lib/msun/src/e_sqrt.c')
-rw-r--r-- | libm/upstream-freebsd/lib/msun/src/e_sqrt.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/libm/upstream-freebsd/lib/msun/src/e_sqrt.c b/libm/upstream-freebsd/lib/msun/src/e_sqrt.c index 12fb56e13..37351a425 100644 --- a/libm/upstream-freebsd/lib/msun/src/e_sqrt.c +++ b/libm/upstream-freebsd/lib/msun/src/e_sqrt.c @@ -14,6 +14,18 @@ #include <sys/cdefs.h> __FBSDID("$FreeBSD$"); +#include <float.h> + +#include "math.h" +#include "math_private.h" + +#ifdef USE_BUILTIN_SQRT +double +__ieee754_sqrt(double x) +{ + return (__builtin_sqrt(x)); +} +#else /* __ieee754_sqrt(x) * Return correctly rounded sqrt. * ------------------------------------------ @@ -84,11 +96,6 @@ __FBSDID("$FreeBSD$"); *--------------- */ -#include <float.h> - -#include "math.h" -#include "math_private.h" - static const double one = 1.0, tiny=1.0e-300; double @@ -187,6 +194,7 @@ __ieee754_sqrt(double x) INSERT_WORDS(z,ix0,ix1); return z; } +#endif #if (LDBL_MANT_DIG == 53) __weak_reference(sqrt, sqrtl); |