diff --git a/compiler/mips/move.lisp b/compiler/mips/move.lisp
index e783a46228eabd7f692131105b8eff9802ab5802..f1c99c77cac24487a76e0675bad26ee7961fa009 100644
--- a/compiler/mips/move.lisp
+++ b/compiler/mips/move.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman (FAHLMAN@CMUC). 
 ;;; **********************************************************************
 ;;;
-;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/move.lisp,v 1.19 1990/07/03 06:31:12 wlott Exp $
+;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/move.lisp,v 1.20 1990/07/03 17:29:05 ram Exp $
 ;;;
 ;;;    This file contains the MIPS VM definition of operand loading/saving and
 ;;; the Move VOP.
@@ -140,13 +140,15 @@
 ;;; Move a tagged number to an untagged representation.
 ;;;
 (define-vop (move-to-signed/unsigned)
-  (:args (x :scs (any-reg descriptor-reg)))
+  (:args (x :scs (any-reg descriptor-reg constant)))
   (:results (y :scs (signed-reg unsigned-reg)))
   (:temporary (:scs (non-descriptor-reg)) temp)
   (:generator 4
     (sc-case x
       (any-reg
        (inst sra y x 2))
+      (constant
+       (inst li y (tn-value x)))
       (descriptor-reg
        (let ((done (gen-label)))
 	 (inst and temp x 3)