From c1005dbf61235fa516177faf5f9d6a003592de81 Mon Sep 17 00:00:00 2001
From: ram <ram>
Date: Thu, 23 May 1991 15:36:55 +0000
Subject: [PATCH] In %unary-truncate, kill some more time before doing the fcvt
 to ensure that the new mode takes effect.

---
 compiler/mips/float.lisp | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/compiler/mips/float.lisp b/compiler/mips/float.lisp
index a0d6b5ad9..58f7299e3 100644
--- a/compiler/mips/float.lisp
+++ b/compiler/mips/float.lisp
@@ -7,12 +7,10 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/float.lisp,v 1.12 1991/02/20 15:14:35 ram Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/float.lisp,v 1.13 1991/05/23 15:36:55 ram Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
-;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/float.lisp,v 1.12 1991/02/20 15:14:35 ram Exp $
-;;;
 ;;;    This file contains floating point support for the MIPS.
 ;;;
 ;;; Written by Rob MacLachlan
@@ -322,7 +320,12 @@
 		    (inst and new-status status-save)
 		    (inst or new-status float-round-to-zero)
 		    (inst ctc1 new-status 31)
+
+		    ;; These instructions seem to be necessary to ensure that
+		    ;; the new modes affect the fcvt instruction.
 		    (inst nop)
+		    (inst cfc1 new-status 31)
+
 		    (note-this-location vop :internal-error)
 		    (inst fcvt :word ,from-format temp x)
 		    (inst mfc1 y temp)
-- 
GitLab