aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sim/common/ChangeLog6
-rw-r--r--sim/common/sim-fpu.c4
2 files changed, 10 insertions, 0 deletions
diff --git a/sim/common/ChangeLog b/sim/common/ChangeLog
index f90e95d..37a8e73 100644
--- a/sim/common/ChangeLog
+++ b/sim/common/ChangeLog
@@ -1,3 +1,9 @@
+2006-08-29 Thiemo Seufer <ths@mips.com>
+ Nigel Stephens <nigel@mips.com>
+
+ * sim-fpu.c (pack_fpu): Handle QUIET_NAN correctly for
+ SIM_QUIET_NAN_NEGATED.
+
2006-08-29 Nigel Stephens <nigel@mips.com>
* sim-profile.c (profile_pc_init): Initialise default profiling
diff --git a/sim/common/sim-fpu.c b/sim/common/sim-fpu.c
index d7d8600..4f7fbc9 100644
--- a/sim/common/sim-fpu.c
+++ b/sim/common/sim-fpu.c
@@ -213,7 +213,11 @@ pack_fpu (const sim_fpu *src,
/* force fraction to correct class */
fraction = src->fraction;
fraction >>= NR_GUARDS;
+#ifdef SIM_QUIET_NAN_NEGATED
+ fraction |= QUIET_NAN;
+#else
fraction &= ~QUIET_NAN;
+#endif
break;
case sim_fpu_class_infinity:
sign = src->sign;