summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2013-08-15 19:30:41 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2013-08-15 19:30:41 +0000
commitae3be01a8693af7eb07fe2099583e8e430f67b57 (patch)
treef30159160cb1dae97a1bbdf0533f8ae029b46c76
parent6651a4a2aa9f70adf8857ec43bb679c7d1b9cd44 (diff)
Be sure to set the `non equal' bit when emulating fcmp{,u} and the operands
are orderable, but not equal.
-rw-r--r--sys/arch/m88k/m88k/m88110_fp.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/arch/m88k/m88k/m88110_fp.c b/sys/arch/m88k/m88k/m88110_fp.c
index 32fdeb74f4d..328d20d4e57 100644
--- a/sys/arch/m88k/m88k/m88110_fp.c
+++ b/sys/arch/m88k/m88k/m88110_fp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: m88110_fp.c,v 1.7 2013/01/05 11:20:56 miod Exp $ */
+/* $OpenBSD: m88110_fp.c,v 1.8 2013/08/15 19:30:40 miod Exp $ */
/*
* Copyright (c) 2007, Miodrag Vallat.
@@ -625,17 +625,17 @@ fpu_compare(struct trapframe *frame, fparg *s1, fparg *s2, u_int width,
if (float32_eq(s1->sng, s2->sng))
cc = CC_EQ;
else if (float32_lt(s1->sng, s2->sng))
- cc = CC_LT;
+ cc = CC_LT | CC_NE;
else
- cc = CC_GT;
+ cc = CC_GT | CC_NE;
break;
case FTYPE_DBL:
if (float64_eq(s1->dbl, s2->dbl))
cc = CC_EQ;
else if (float64_lt(s1->dbl, s2->dbl))
- cc = CC_LT;
+ cc = CC_LT | CC_NE;
else
- cc = CC_GT;
+ cc = CC_GT | CC_NE;
break;
}