From f9ff03a8353afc7e83bafc99c1a2fb53f80a8128 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Wed, 29 Sep 2004 09:01:05 +0000 Subject: * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf. * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise. * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise. --- sysdeps/i386/fpu/s_fdim.S | 17 +++++++++-------- sysdeps/i386/fpu/s_fdimf.S | 17 +++++++++-------- sysdeps/i386/fpu/s_fdiml.S | 17 +++++++++-------- 3 files changed, 27 insertions(+), 24 deletions(-) (limited to 'sysdeps') diff --git a/sysdeps/i386/fpu/s_fdim.S b/sysdeps/i386/fpu/s_fdim.S index 559a814182..92deb15d85 100644 --- a/sysdeps/i386/fpu/s_fdim.S +++ b/sysdeps/i386/fpu/s_fdim.S @@ -1,5 +1,5 @@ /* Compute positive difference. - Copyright (C) 1997, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 1999, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -30,22 +30,23 @@ ENTRY(__fdim) sahf jp 1f - fsubrp %st, %st(1) - jc 2f + jc 3f - fstp %st(0) + fstp %st(1) fldz jmp 2f +3: fsubrp %st, %st(1) + ret + 1: fxam fnstsw andb $0x45, %ah cmpb $0x01, %ah - je 3f + je 2f fxch -3: fstp %st(1) - -2: ret +2: fstp %st(1) + ret END(__fdim) weak_alias (__fdim, fdim) diff --git a/sysdeps/i386/fpu/s_fdimf.S b/sysdeps/i386/fpu/s_fdimf.S index eb6ba5abc4..905cec2fae 100644 --- a/sysdeps/i386/fpu/s_fdimf.S +++ b/sysdeps/i386/fpu/s_fdimf.S @@ -1,5 +1,5 @@ /* Compute positive difference. - Copyright (C) 1997, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 1999, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -30,22 +30,23 @@ ENTRY(__fdimf) sahf jp 1f - fsubrp %st, %st(1) - jc 2f + jc 3f - fstp %st(0) + fstp %st(1) fldz jmp 2f +3: fsubrp %st, %st(1) + ret + 1: fxam fnstsw andb $0x45, %ah cmpb $0x01, %ah - je 3f + je 2f fxch -3: fstp %st(1) - -2: ret +2: fstp %st(1) + ret END(__fdimf) weak_alias (__fdimf, fdimf) diff --git a/sysdeps/i386/fpu/s_fdiml.S b/sysdeps/i386/fpu/s_fdiml.S index c4e9f15404..754b221de2 100644 --- a/sysdeps/i386/fpu/s_fdiml.S +++ b/sysdeps/i386/fpu/s_fdiml.S @@ -1,5 +1,5 @@ /* Compute positive difference. - Copyright (C) 1997, 1999 Free Software Foundation, Inc. + Copyright (C) 1997, 1999, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -30,22 +30,23 @@ ENTRY(__fdiml) sahf jp 1f - fsubrp %st, %st(1) - jc 2f + jc 3f - fstp %st(0) + fstp %st(1) fldz jmp 2f +3: fsubrp %st, %st(1) + ret + 1: fxam fnstsw andb $0x45, %ah cmpb $0x01, %ah - je 3f + je 2f fxch -3: fstp %st(1) - -2: ret +2: fstp %st(1) + ret END(__fdiml) weak_alias (__fdiml, fdiml) -- cgit v1.2.3