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