From 1b1b3eea2a0d0570350c93f0a394abd44254da54 Mon Sep 17 00:00:00 2001
From: wlott <wlott>
Date: Mon, 3 Aug 1992 15:12:23 +0000
Subject: [PATCH] Fixed move-from-unsigned to actually treat the value as
 unsigned instead of signed.  It was producing negative fixnums when the high
 three bits were set (which should result in a 32-bit bignum).

---
 compiler/mips/move.lisp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/compiler/mips/move.lisp b/compiler/mips/move.lisp
index cd0c9adcc..6642ff269 100644
--- a/compiler/mips/move.lisp
+++ b/compiler/mips/move.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/move.lisp,v 1.30 1992/07/28 20:37:37 wlott Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/move.lisp,v 1.31 1992/08/03 15:12:23 wlott Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -248,7 +248,7 @@
   (:note "unsigned word to integer coercion")
   (:generator 20
     (move x arg)
-    (inst sra temp x 29)
+    (inst srl temp x 29)
     (inst beq temp done)
     (inst sll y x 2)
       
-- 
GitLab