diff options
Diffstat (limited to 'sysdeps/x86_64/fpu/s_fdiml.S')
-rw-r--r-- | sysdeps/x86_64/fpu/s_fdiml.S | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sysdeps/x86_64/fpu/s_fdiml.S b/sysdeps/x86_64/fpu/s_fdiml.S index 3460b0f979..d63ca00ef1 100644 --- a/sysdeps/x86_64/fpu/s_fdiml.S +++ b/sysdeps/x86_64/fpu/s_fdiml.S @@ -1,5 +1,5 @@ /* Compute positive difference. - Copyright (C) 1997, 1998, 2002 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 2002, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -28,12 +28,14 @@ ENTRY(__fdiml) fucomi %st(1), %st jp 1f - fsubrp %st, %st(1) + jc 3f + fstp %st(1) fldz - fcomi %st(1), %st - fcmovb %st(1), %st jmp 2f +3: fsubrp %st, %st(1) + ret + 1: fucomi %st(0), %st fcmovnu %st(1), %st 2: fstp %st(1) |