diff --git a/compiler/sparc/move.lisp b/compiler/sparc/move.lisp
index afdd442c4e80132403671194e4b78e60209f795a..20fa8d394a6d2adc35224d9897d30d4d2737143b 100644
--- a/compiler/sparc/move.lisp
+++ b/compiler/sparc/move.lisp
@@ -5,11 +5,11 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/move.lisp,v 1.14 2004/01/15 16:14:37 toy Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/move.lisp,v 1.15 2004/05/13 14:37:06 rtoy Rel $")
 ;;;
 ;;; **********************************************************************
 ;;;
-;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/move.lisp,v 1.14 2004/01/15 16:14:37 toy Exp $
+;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/move.lisp,v 1.15 2004/05/13 14:37:06 rtoy Rel $
 ;;;
 ;;;    This file contains the SPARC VM definition of operand loading/saving and
 ;;; the Move VOP.
@@ -57,7 +57,7 @@
 
 (define-move-function (load-constant 5) (vop x y)
   ((constant) (descriptor-reg))
-  (loadw y code-tn (tn-offset x) other-pointer-type))
+  (loadw y code-tn (tn-offset x) other-pointer-type gtemp-tn))
 
 (define-move-function (load-stack 5) (vop x y)
   ((control-stack) (any-reg descriptor-reg))
@@ -116,13 +116,14 @@
 	    :scs (any-reg descriptor-reg zero null))
 	 (fp :scs (any-reg)
 	     :load-if (not (sc-is y any-reg descriptor-reg))))
+  (:temporary (:scs (non-descriptor-reg)) temp)
   (:results (y))
   (:generator 0
     (sc-case y
       ((any-reg descriptor-reg)
        (move y x))
       (control-stack
-       (storew x fp (tn-offset y))))))
+       (storew x fp (tn-offset y) 0 temp)))))
 ;;;
 (define-move-vop move-argument :move-argument
   (any-reg descriptor-reg)
@@ -365,13 +366,14 @@
 	 (fp :scs (any-reg)
 	     :load-if (not (sc-is y sap-reg))))
   (:results (y))
+  (:temporary (:scs (non-descriptor-reg)) temp)
   (:note "word integer argument move")
   (:generator 0
     (sc-case y
       ((signed-reg unsigned-reg)
        (move y x))
       ((signed-stack unsigned-stack)
-       (storew x fp (tn-offset y))))))
+       (storew x fp (tn-offset y) 0 temp)))))
 ;;;
 (define-move-vop move-word-argument :move-argument
   (descriptor-reg any-reg signed-reg unsigned-reg) (signed-reg unsigned-reg))