diff options
Diffstat (limited to 'sysdeps/i386/fpu/e_hypot.S')
-rw-r--r-- | sysdeps/i386/fpu/e_hypot.S | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/sysdeps/i386/fpu/e_hypot.S b/sysdeps/i386/fpu/e_hypot.S index 63083ad4c9..0ca788407f 100644 --- a/sysdeps/i386/fpu/e_hypot.S +++ b/sysdeps/i386/fpu/e_hypot.S @@ -1,5 +1,5 @@ /* Compute the hypothenuse of X and Y. - Copyright (C) 1998-2015 Free Software Foundation, Inc. + Copyright (C) 1998-2016 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -18,9 +18,21 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> +#include <i386-math-asm.h> + +DEFINE_DBL_MIN + +#ifdef PIC +# define MO(op) op##@GOTOFF(%edx) +#else +# define MO(op) op +#endif .text ENTRY(__ieee754_hypot) +#ifdef PIC + LOAD_PIC_REG (dx) +#endif fldl 4(%esp) // x fxam fnstsw @@ -37,6 +49,7 @@ ENTRY(__ieee754_hypot) fmul %st(0) // x * x : y * y faddp // x * x + y * y fsqrt + DBL_NARROW_EVAL_UFLOW_NONNEG 2: ret // We have to test whether any of the parameters is Inf. |