patch-2.4.20 linux-2.4.20/arch/mips/math-emu/dp_cmp.c
Next file: linux-2.4.20/arch/mips/math-emu/dp_div.c
Previous file: linux-2.4.20/arch/mips/math-emu/dp_add.c
Back to the patch index
Back to the overall index
- Lines: 32
- Date:
Thu Nov 28 15:53:10 2002
- Orig file:
linux-2.4.19/arch/mips/math-emu/dp_cmp.c
- Orig date:
Fri Aug 2 17:39:43 2002
diff -urN linux-2.4.19/arch/mips/math-emu/dp_cmp.c linux-2.4.20/arch/mips/math-emu/dp_cmp.c
@@ -27,7 +27,7 @@
#include "ieee754dp.h"
-int ieee754dp_cmp(ieee754dp x, ieee754dp y, int cmp)
+int ieee754dp_cmp(ieee754dp x, ieee754dp y, int cmp, int sig)
{
COMPXDP;
COMPYDP;
@@ -39,18 +39,18 @@
CLEARCX; /* Even clear inexact flag here */
if (ieee754dp_isnan(x) || ieee754dp_isnan(y)) {
- if (xc == IEEE754_CLASS_SNAN || yc == IEEE754_CLASS_SNAN)
+ if (sig || xc == IEEE754_CLASS_SNAN || yc == IEEE754_CLASS_SNAN)
SETCX(IEEE754_INVALID_OPERATION);
if (cmp & IEEE754_CUN)
return 1;
if (cmp & (IEEE754_CLT | IEEE754_CGT)) {
- if (SETCX(IEEE754_INVALID_OPERATION))
+ if (sig && SETCX(IEEE754_INVALID_OPERATION))
return ieee754si_xcpt(0, "fcmpf", x);
}
return 0;
} else {
- long long int vx = x.bits;
- long long int vy = y.bits;
+ s64 vx = x.bits;
+ s64 vy = y.bits;
if (vx < 0)
vx = -vx ^ DP_SIGN_BIT;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)