From f19779c541316be83aa7b3d0608cf596b6f70b8c Mon Sep 17 00:00:00 2001
From: dtc <dtc>
Date: Thu, 19 Feb 1998 19:35:10 +0000
Subject: [PATCH] Remove uses of the dword-reg SC for temporaries in VOPs in
 preparation for the removal of this SC. There is a current limit of 32 SCs
 and with new features planned they are becoming a scarce resource; the
 dword-reg SC is redundant as the unsigned-reg etc SCs can be used for
 temporaries.

---
 compiler/x86/alloc.lisp     | 18 +++++------
 compiler/x86/arith.lisp     | 45 ++++++++++++++--------------
 compiler/x86/array.lisp     | 32 ++++++++++----------
 compiler/x86/c-call.lisp    |  6 ++--
 compiler/x86/call.lisp      | 59 ++++++++++++++++++-------------------
 compiler/x86/cell.lisp      | 10 +++----
 compiler/x86/char.lisp      |  4 +--
 compiler/x86/debug.lisp     |  8 ++---
 compiler/x86/float.lisp     | 20 +++++++------
 compiler/x86/move.lisp      | 27 ++++++++---------
 compiler/x86/nlx.lisp       | 16 +++++-----
 compiler/x86/print.lisp     |  4 +--
 compiler/x86/static-fn.lisp | 10 +++----
 compiler/x86/subprim.lisp   |  8 ++---
 compiler/x86/system.lisp    |  8 ++---
 compiler/x86/type-vops.lisp |  6 ++--
 compiler/x86/values.lisp    | 10 +++----
 17 files changed, 145 insertions(+), 146 deletions(-)

diff --git a/compiler/x86/alloc.lisp b/compiler/x86/alloc.lisp
index ce37fb673..0200bf97a 100644
--- a/compiler/x86/alloc.lisp
+++ b/compiler/x86/alloc.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/x86/alloc.lisp,v 1.6 1997/11/19 03:00:32 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/alloc.lisp,v 1.7 1998/02/19 19:34:35 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -26,8 +26,8 @@
 
 (define-vop (list-or-list*)
   (:args (things :more t))
-  (:temporary (:sc dword-reg) ptr temp)
-  (:temporary (:sc dword-reg :to (:result 0) :target result) res)
+  (:temporary (:sc unsigned-reg) ptr temp)
+  (:temporary (:sc unsigned-reg :to (:result 0) :target result) res)
   (:info num)
   (:results (result :scs (descriptor-reg)))
   (:variant-vars star)
@@ -84,9 +84,9 @@
   (:args (boxed-arg :scs (any-reg) :target boxed)
 	 (unboxed-arg :scs (any-reg) :target unboxed))
   (:results (result :scs (descriptor-reg)))
-  (:temporary (:sc dword-reg :from :eval) temp)
-  (:temporary (:sc dword-reg :from (:argument 0)) boxed)
-  (:temporary (:sc dword-reg :from (:argument 1)) unboxed)
+  (:temporary (:sc unsigned-reg :from :eval) temp)
+  (:temporary (:sc unsigned-reg :from (:argument 0)) boxed)
+  (:temporary (:sc unsigned-reg :from (:argument 1)) unboxed)
   (:generator 100
     (move boxed boxed-arg)
     (inst add boxed (fixnum (1+ code-trace-table-offset-slot)))
@@ -115,8 +115,8 @@
   (:args (boxed-arg :scs (any-reg) :target boxed)
 	 (unboxed-arg :scs (any-reg) :target unboxed))
   (:results (result :scs (descriptor-reg) :from :eval))
-  (:temporary (:sc dword-reg :from (:argument 0)) boxed)
-  (:temporary (:sc dword-reg :from (:argument 1)) unboxed)
+  (:temporary (:sc unsigned-reg :from (:argument 0)) boxed)
+  (:temporary (:sc unsigned-reg :from (:argument 1)) unboxed)
   (:node-var node)
   (:generator 100
     (move boxed boxed-arg)
@@ -233,7 +233,7 @@
   (:policy :fast-safe)
   (:translate make-symbol)
   (:args (name :scs (descriptor-reg) :to :eval))
-  (:temporary (:sc dword-reg :from :eval) temp)
+  (:temporary (:sc unsigned-reg :from :eval) temp)
   (:results (result :scs (descriptor-reg) :from :argument))
   (:node-var node)
   (:generator 37
diff --git a/compiler/x86/arith.lisp b/compiler/x86/arith.lisp
index a61d98024..774a98800 100644
--- a/compiler/x86/arith.lisp
+++ b/compiler/x86/arith.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/x86/arith.lisp,v 1.9 1997/12/11 17:41:30 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/arith.lisp,v 1.10 1998/02/19 19:34:38 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -391,7 +391,8 @@
   (:arg-types unsigned-num unsigned-num)
   (:temporary (:sc unsigned-reg :offset eax-offset :target result
 		   :from (:argument 0) :to :result) eax)
-  (:temporary (:sc dword-reg :offset edx-offset :from :eval :to :result) edx)
+  (:temporary (:sc unsigned-reg :offset edx-offset
+		   :from :eval :to :result) edx)
   (:ignore edx)
   (:results (result :scs (unsigned-reg)))
   (:result-types unsigned-num)
@@ -409,9 +410,9 @@
   (:args (x :scs (any-reg) :target eax)
 	 (y :scs (any-reg control-stack)))
   (:arg-types tagged-num tagged-num)
-  (:temporary (:sc dword-reg :offset eax-offset :target quo
+  (:temporary (:sc signed-reg :offset eax-offset :target quo
 		   :from (:argument 0) :to (:result 0)) eax)
-  (:temporary (:sc any-reg :offset edx-offset :target rem
+  (:temporary (:sc unsigned-reg :offset edx-offset :target rem
 		   :from (:argument 0) :to (:result 1)) edx)
   (:results (quo :scs (any-reg))
 	    (rem :scs (any-reg)))
@@ -438,7 +439,7 @@
   (:args (x :scs (any-reg) :target eax))
   (:info y)
   (:arg-types tagged-num (:constant (signed-byte 30)))
-  (:temporary (:sc dword-reg :offset eax-offset :target quo
+  (:temporary (:sc signed-reg :offset eax-offset :target quo
 		   :from :argument :to (:result 0)) eax)
   (:temporary (:sc any-reg :offset edx-offset :target rem
 		   :from :eval :to (:result 1)) edx)
@@ -464,9 +465,9 @@
   (:args (x :scs (unsigned-reg) :target eax)
 	 (y :scs (unsigned-reg signed-stack)))
   (:arg-types unsigned-num unsigned-num)
-  (:temporary (:sc dword-reg :offset eax-offset :target quo
+  (:temporary (:sc unsigned-reg :offset eax-offset :target quo
 		   :from (:argument 0) :to (:result 0)) eax)
-  (:temporary (:sc dword-reg :offset edx-offset :target rem
+  (:temporary (:sc unsigned-reg :offset edx-offset :target rem
 		   :from (:argument 0) :to (:result 1)) edx)
   (:results (quo :scs (unsigned-reg))
 	    (rem :scs (unsigned-reg)))
@@ -491,11 +492,11 @@
   (:args (x :scs (unsigned-reg) :target eax))
   (:info y)
   (:arg-types unsigned-num (:constant (unsigned-byte 32)))
-  (:temporary (:sc dword-reg :offset eax-offset :target quo
+  (:temporary (:sc unsigned-reg :offset eax-offset :target quo
 		   :from :argument :to (:result 0)) eax)
-  (:temporary (:sc dword-reg :offset edx-offset :target rem
+  (:temporary (:sc unsigned-reg :offset edx-offset :target rem
 		   :from :eval :to (:result 1)) edx)
-  (:temporary (:sc dword-reg :from :eval :to :result) y-arg)
+  (:temporary (:sc unsigned-reg :from :eval :to :result) y-arg)
   (:results (quo :scs (unsigned-reg))
 	    (rem :scs (unsigned-reg)))
   (:result-types unsigned-num unsigned-num)
@@ -515,9 +516,9 @@
   (:args (x :scs (signed-reg) :target eax)
 	 (y :scs (signed-reg signed-stack)))
   (:arg-types signed-num signed-num)
-  (:temporary (:sc dword-reg :offset eax-offset :target quo
+  (:temporary (:sc signed-reg :offset eax-offset :target quo
 		   :from (:argument 0) :to (:result 0)) eax)
-  (:temporary (:sc dword-reg :offset edx-offset :target rem
+  (:temporary (:sc signed-reg :offset edx-offset :target rem
 		   :from (:argument 0) :to (:result 1)) edx)
   (:results (quo :scs (signed-reg))
 	    (rem :scs (signed-reg)))
@@ -542,11 +543,11 @@
   (:args (x :scs (signed-reg) :target eax))
   (:info y)
   (:arg-types signed-num (:constant (signed-byte 32)))
-  (:temporary (:sc dword-reg :offset eax-offset :target quo
+  (:temporary (:sc signed-reg :offset eax-offset :target quo
 		   :from :argument :to (:result 0)) eax)
-  (:temporary (:sc dword-reg :offset edx-offset :target rem
+  (:temporary (:sc signed-reg :offset edx-offset :target rem
 		   :from :eval :to (:result 1)) edx)
-  (:temporary (:sc dword-reg :from :eval :to :result) y-arg)
+  (:temporary (:sc signed-reg :from :eval :to :result) y-arg)
   (:results (quo :scs (signed-reg))
 	    (rem :scs (signed-reg)))
   (:result-types signed-num signed-num)
@@ -608,7 +609,7 @@
 				    (location= number result))))
 	 (amount :scs (unsigned-reg) :target ecx))
   (:arg-types tagged-num positive-fixnum)
-  (:temporary (:sc dword-reg :offset ecx-offset :from (:argument 1)) ecx)
+  (:temporary (:sc unsigned-reg :offset ecx-offset :from (:argument 1)) ecx)
   (:results (result :scs (any-reg) :from (:argument 0)
 		    :load-if (not (and (sc-is number control-stack)
 				       (sc-is result control-stack)
@@ -667,7 +668,7 @@
 				    (location= number result))))
 	 (amount :scs (unsigned-reg) :target ecx))
   (:arg-types (:or signed-num unsigned-num) positive-fixnum)
-  (:temporary (:sc dword-reg :offset ecx-offset :from (:argument 1)) ecx)
+  (:temporary (:sc unsigned-reg :offset ecx-offset :from (:argument 1)) ecx)
   (:results (result :scs (signed-reg unsigned-reg) :from (:argument 0)
 		    :load-if (not
 			      (and (sc-is number signed-stack unsigned-stack)
@@ -690,7 +691,7 @@
   (:arg-types (:or signed-num unsigned-num) signed-num)
   (:results (result :scs (signed-reg unsigned-reg) :from (:argument 0)))
   (:result-types (:or signed-num unsigned-num))
-  (:temporary (:sc dword-reg :offset ecx-offset :from (:argument 1)) ecx)
+  (:temporary (:sc signed-reg :offset ecx-offset :from (:argument 1)) ecx)
   (:note "inline ASH")
   (:generator 5
     (move result number)
@@ -747,7 +748,7 @@
   (:arg-types unsigned-num)
   (:results (result :scs (unsigned-reg)))
   (:result-types positive-fixnum)
-  (:temporary (:sc dword-reg :from (:argument 0)) temp)
+  (:temporary (:sc unsigned-reg :from (:argument 0)) temp)
   (:generator 30
     (move result arg)
 
@@ -943,7 +944,7 @@
 	 (prev :scs (unsigned-reg) :target result)
 	 (next :scs (unsigned-reg)))
   (:arg-types tagged-num unsigned-num unsigned-num)
-  (:temporary (:sc dword-reg :offset ecx-offset :from (:argument 0)) ecx)
+  (:temporary (:sc signed-reg :offset ecx-offset :from (:argument 0)) ecx)
   (:results (result :scs (unsigned-reg) :from (:argument 1)))
   (:result-types unsigned-num)
   (:policy :fast-safe)
@@ -1032,7 +1033,7 @@
   (:args (num :scs (unsigned-reg) :target r)
 	 (amount :scs (signed-reg) :target ecx))
   (:arg-types unsigned-num tagged-num)
-  (:temporary (:sc dword-reg :offset ecx-offset :from (:argument 1)) ecx)
+  (:temporary (:sc signed-reg :offset ecx-offset :from (:argument 1)) ecx)
   (:results (r :scs (unsigned-reg) :from (:argument 0)))
   (:result-types unsigned-num))
 
@@ -1262,7 +1263,7 @@
   (:args (digit :scs (unsigned-reg unsigned-stack) :target result)
 	 (count :scs (unsigned-reg) :target ecx))
   (:arg-types unsigned-num positive-fixnum)
-  (:temporary (:sc dword-reg :offset ecx-offset :from (:argument 1)) ecx)
+  (:temporary (:sc unsigned-reg :offset ecx-offset :from (:argument 1)) ecx)
   (:results (result :scs (unsigned-reg) :from (:argument 0)
 		    :load-if (not (and (sc-is result unsigned-stack)
 				       (location= digit result)))))
diff --git a/compiler/x86/array.lisp b/compiler/x86/array.lisp
index f886bb28c..eb62338e5 100644
--- a/compiler/x86/array.lisp
+++ b/compiler/x86/array.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/x86/array.lisp,v 1.10 1998/01/17 05:47:17 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/array.lisp,v 1.11 1998/02/19 19:34:41 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -154,7 +154,7 @@
 	 (:arg-types ,type positive-fixnum)
 	 (:results (result :scs (unsigned-reg) :from (:argument 0)))
 	 (:result-types positive-fixnum)
-	 (:temporary (:sc dword-reg :offset ecx-offset) ecx)
+	 (:temporary (:sc unsigned-reg :offset ecx-offset) ecx)
 	 (:generator 20
 	   (move ecx index)
 	   (inst shr ecx ,bit-shift)
@@ -194,9 +194,9 @@
 	 (:arg-types ,type positive-fixnum positive-fixnum)
 	 (:results (result :scs (unsigned-reg)))
 	 (:result-types positive-fixnum)
-	 (:temporary (:sc dword-reg) word-index)
-	 (:temporary (:sc dword-reg :from (:argument 0)) ptr old)
-	 (:temporary (:sc dword-reg :offset ecx-offset :from (:argument 1))
+	 (:temporary (:sc unsigned-reg) word-index)
+	 (:temporary (:sc unsigned-reg :from (:argument 0)) ptr old)
+	 (:temporary (:sc unsigned-reg :offset ecx-offset :from (:argument 1))
 		     ecx)
 	 (:generator 25
 	   (move word-index index)
@@ -236,7 +236,7 @@
 	 (:info index)
 	 (:results (result :scs (unsigned-reg)))
 	 (:result-types positive-fixnum)
-	 (:temporary (:sc dword-reg :to (:result 0)) old)
+	 (:temporary (:sc unsigned-reg :to (:result 0)) old)
 	 (:generator 20
 	   (multiple-value-bind (word extra) (floor index ,elements-per-word)
 	     (inst mov old
@@ -877,7 +877,7 @@
 	 (index :scs (unsigned-reg) :to (:eval 0))
 	 (value :scs (unsigned-reg signed-reg) :target eax))
   (:arg-types simple-array-unsigned-byte-8 positive-fixnum positive-fixnum)
-  (:temporary (:sc dword-reg :offset eax-offset :target result
+  (:temporary (:sc unsigned-reg :offset eax-offset :target result
 		   :from (:argument 2) :to (:result 0))
 	      eax)
   (:results (result :scs (unsigned-reg signed-reg)))
@@ -899,7 +899,7 @@
   (:info index)
   (:arg-types simple-array-unsigned-byte-8 (:constant (signed-byte 30))
 	      positive-fixnum)
-  (:temporary (:sc dword-reg :offset eax-offset :target result
+  (:temporary (:sc unsigned-reg :offset eax-offset :target result
 		   :from (:argument 1) :to (:result 0))
 	      eax)
   (:results (result :scs (unsigned-reg signed-reg)))
@@ -952,7 +952,7 @@
 	 (index :scs (unsigned-reg) :to (:eval 0))
 	 (value :scs (unsigned-reg signed-reg) :target eax))
   (:arg-types simple-array-unsigned-byte-16 positive-fixnum positive-fixnum)
-  (:temporary (:sc dword-reg :offset eax-offset :target result
+  (:temporary (:sc unsigned-reg :offset eax-offset :target result
 		   :from (:argument 2) :to (:result 0))
 	      eax)
   (:results (result :scs (unsigned-reg signed-reg)))
@@ -974,7 +974,7 @@
   (:info index)
   (:arg-types simple-array-unsigned-byte-16 (:constant (signed-byte 30))
 	      positive-fixnum)
-  (:temporary (:sc dword-reg :offset eax-offset :target result
+  (:temporary (:sc unsigned-reg :offset eax-offset :target result
 		   :from (:argument 1) :to (:result 0))
 	      eax)
   (:results (result :scs (unsigned-reg signed-reg)))
@@ -997,7 +997,7 @@
   (:args (object :scs (descriptor-reg))
 	 (index :scs (unsigned-reg)))
   (:arg-types simple-string positive-fixnum)
-  (:temporary (:sc dword-reg ; byte-reg
+  (:temporary (:sc unsigned-reg ; byte-reg
 		   :offset eax-offset ; al-offset
 		   :target value
 		   :from (:eval 0) :to (:result 0))
@@ -1018,7 +1018,7 @@
   (:args (object :scs (descriptor-reg)))
   (:info index)
   (:arg-types simple-string (:constant (signed-byte 30)))
-  (:temporary (:sc dword-reg :offset eax-offset :target value
+  (:temporary (:sc unsigned-reg :offset eax-offset :target value
 		   :from (:eval 0) :to (:result 0))
 	      eax)
   (:ignore eax)
@@ -1105,7 +1105,7 @@
 	 (index :scs (unsigned-reg) :to (:eval 0))
 	 (value :scs (signed-reg) :target eax))
   (:arg-types simple-array-signed-byte-8 positive-fixnum tagged-num)
-  (:temporary (:sc dword-reg :offset eax-offset :target result
+  (:temporary (:sc unsigned-reg :offset eax-offset :target result
 		   :from (:argument 2) :to (:result 0))
 	      eax)
   (:results (result :scs (signed-reg)))
@@ -1126,7 +1126,7 @@
   (:info index)
   (:arg-types simple-array-signed-byte-8 (:constant (signed-byte 30))
 	      tagged-num)
-  (:temporary (:sc dword-reg :offset eax-offset :target result
+  (:temporary (:sc unsigned-reg :offset eax-offset :target result
 		   :from (:argument 1) :to (:result 0))
 	      eax)
   (:results (result :scs (signed-reg)))
@@ -1177,7 +1177,7 @@
 	 (index :scs (unsigned-reg) :to (:eval 0))
 	 (value :scs (signed-reg) :target eax))
   (:arg-types simple-array-signed-byte-16 positive-fixnum tagged-num)
-  (:temporary (:sc dword-reg :offset eax-offset :target result
+  (:temporary (:sc signed-reg :offset eax-offset :target result
 		   :from (:argument 2) :to (:result 0))
 	      eax)
   (:results (result :scs (signed-reg)))
@@ -1197,7 +1197,7 @@
 	 (value :scs (signed-reg) :target eax))
   (:info index)
   (:arg-types simple-array-signed-byte-16 (:constant (signed-byte 30)) tagged-num)
-  (:temporary (:sc dword-reg :offset eax-offset :target result
+  (:temporary (:sc signed-reg :offset eax-offset :target result
 		   :from (:argument 1) :to (:result 0))
 	      eax)
   (:results (result :scs (signed-reg)))
diff --git a/compiler/x86/c-call.lisp b/compiler/x86/c-call.lisp
index 68ad13f98..b5cc44194 100644
--- a/compiler/x86/c-call.lisp
+++ b/compiler/x86/c-call.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/x86/c-call.lisp,v 1.6 1997/11/25 15:29:12 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/c-call.lisp,v 1.7 1998/02/19 19:34:44 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -149,8 +149,8 @@
 	 (args :more t))
   (:results (results :more t))
   ;; eax is already wired
-  (:temporary (:sc dword-reg :offset ecx-offset) ecx)
-  (:temporary (:sc dword-reg :offset edx-offset) edx)
+  (:temporary (:sc unsigned-reg :offset ecx-offset) ecx)
+  (:temporary (:sc unsigned-reg :offset edx-offset) edx)
   (:node-var node)
   (:vop-var vop)
   (:save-p t)
diff --git a/compiler/x86/call.lisp b/compiler/x86/call.lisp
index aca386076..74c588008 100644
--- a/compiler/x86/call.lisp
+++ b/compiler/x86/call.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/x86/call.lisp,v 1.13 1998/01/24 14:53:40 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/call.lisp,v 1.14 1998/02/19 19:34:47 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -702,7 +702,7 @@
 	 (vals :more t))
   (:move-args :known-return)
   (:info val-locs)
-  (:temporary (:sc dword-reg :from (:argument 1)) rpc)
+  (:temporary (:sc unsigned-reg :from (:argument 1)) rpc)
   (:ignore val-locs vals)
   (:vop-var vop)
   (:generator 6
@@ -887,7 +887,7 @@
      eax)
 
     ;; We pass the number of arguments in ECX.
-    (:temporary (:sc dword-reg :offset ecx-offset :to :eval) ecx)
+    (:temporary (:sc unsigned-reg :offset ecx-offset :to :eval) ecx)
 
     ;; With variable call, we have to load the register-args out
     ;; of the (new) stack frame before doing the call.  Therefore,
@@ -902,12 +902,11 @@
 		    register-arg-names register-arg-offsets))
 
     ,@(when (eq return :tail)
-	    '((:temporary (:sc dword-reg :from (:argument 1) :to (:argument 2))
-			  old-fp-tmp)
+	    '((:temporary (:sc unsigned-reg
+			   :from (:argument 1) :to (:argument 2)) old-fp-tmp)
 	      #+x86-lra
-	      (:temporary (:sc dword-reg :from (:argument 2) :to (:argument 3))
-			  ret-pc-tmp)
-	      ))
+	      (:temporary (:sc unsigned-reg
+			   :from (:argument 2) :to (:argument 3)) ret-pc-tmp)))
 
     (:generator ,(+ (if named 5 0)
 		    (if variable 19 1)
@@ -1079,8 +1078,8 @@
 	 (function :scs (descriptor-reg control-stack) :target eax)
 	 (old-fp)
 	 (ret-addr))
-  (:temporary (:sc dword-reg :offset esi-offset :from (:argument 0)) esi)
-  (:temporary (:sc dword-reg :offset eax-offset :from (:argument 1)) eax)
+  (:temporary (:sc unsigned-reg :offset esi-offset :from (:argument 0)) esi)
+  (:temporary (:sc unsigned-reg :offset eax-offset :from (:argument 1)) eax)
 ;  (:ignore ret-addr old-fp)
   (:generator 75
     ;; Move these into the passing locations if they are not already there.
@@ -1116,8 +1115,8 @@
   (:args (old-fp)
 	 (return-pc)
 	 (value))
-  (:temporary (:sc dword-reg) ofp)
-  (:temporary (:sc dword-reg) ret)
+  (:temporary (:sc unsigned-reg) ofp)
+  (:temporary (:sc unsigned-reg) ret)
   (:ignore value)
   (:generator 6
     (trace-table-entry trace-table-function-epilogue)
@@ -1149,18 +1148,18 @@
 
   ;; In the case of other than one value, we need these registers to tell
   ;; the caller where they are and how many there are.
-  (:temporary (:sc dword-reg :offset ebx-offset) ebx)
-  (:temporary (:sc dword-reg :offset ecx-offset) ecx)
+  (:temporary (:sc unsigned-reg :offset ebx-offset) ebx)
+  (:temporary (:sc unsigned-reg :offset ecx-offset) ecx)
 
   ;; We need to stretch the lifetime of return-pc past the argument
   ;; registers so that we can default the argument registers without
   ;; trashing return-pc.
-  (:temporary (:sc dword-reg :offset (first register-arg-offsets) :from :eval)
-	      a0)
-  (:temporary (:sc dword-reg :offset (second register-arg-offsets) :from :eval)
-	      a1)
-  (:temporary (:sc dword-reg :offset (third register-arg-offsets) :from :eval)
-	      a2)
+  (:temporary (:sc unsigned-reg :offset (first register-arg-offsets)
+		   :from :eval) a0)
+  (:temporary (:sc unsigned-reg :offset (second register-arg-offsets)
+		   :from :eval) a1)
+  (:temporary (:sc unsigned-reg :offset (third register-arg-offsets)
+		   :from :eval) a2)
 
   (:generator 6
     (trace-table-entry trace-table-function-epilogue)
@@ -1216,13 +1215,13 @@
 	 (vals :scs (any-reg) :target esi)
 	 (nvals :scs (any-reg) :target ecx))
 
-  (:temporary (:sc dword-reg :offset eax-offset :from (:argument 1)) eax)
-  (:temporary (:sc dword-reg :offset esi-offset :from (:argument 2)) esi)
-  (:temporary (:sc dword-reg :offset ecx-offset :from (:argument 3)) ecx)
-  (:temporary (:sc dword-reg :offset ebx-offset :from (:eval 0)) ebx)
+  (:temporary (:sc unsigned-reg :offset eax-offset :from (:argument 1)) eax)
+  (:temporary (:sc unsigned-reg :offset esi-offset :from (:argument 2)) esi)
+  (:temporary (:sc unsigned-reg :offset ecx-offset :from (:argument 3)) ecx)
+  (:temporary (:sc unsigned-reg :offset ebx-offset :from (:eval 0)) ebx)
   (:temporary (:sc descriptor-reg :offset (first register-arg-offsets)
 		   :from (:eval 0)) a0)
-  (:temporary (:sc dword-reg :from (:eval 1)) old-fp-temp)
+  (:temporary (:sc unsigned-reg :from (:eval 1)) old-fp-temp)
   (:node-var node)
 
   (:generator 13
@@ -1406,7 +1405,7 @@
   (:args (object :scs (descriptor-reg) :to :result)
 	 (index :scs (any-reg) :target temp))
   (:arg-types * tagged-num)
-  (:temporary (:sc dword-reg :from (:argument 1) :to :result) temp)
+  (:temporary (:sc unsigned-reg :from (:argument 1) :to :result) temp)
   (:results (value :scs (any-reg descriptor-reg)))
   (:result-types *)
   (:generator 5
@@ -1435,10 +1434,10 @@
   (:args (context :scs (descriptor-reg) :target src)
 	 (count :scs (any-reg) :target ecx))
   (:arg-types * tagged-num)
-  (:temporary (:sc dword-reg :offset esi-offset :from (:argument 0)) src)
-  (:temporary (:sc dword-reg :offset ecx-offset :from (:argument 1)) ecx)
-  (:temporary (:sc dword-reg :offset eax-offset) eax)
-  (:temporary (:sc dword-reg) dst)
+  (:temporary (:sc unsigned-reg :offset esi-offset :from (:argument 0)) src)
+  (:temporary (:sc unsigned-reg :offset ecx-offset :from (:argument 1)) ecx)
+  (:temporary (:sc unsigned-reg :offset eax-offset) eax)
+  (:temporary (:sc unsigned-reg) dst)
   (:results (result :scs (descriptor-reg)))
   (:node-var node)
   (:generator 20
diff --git a/compiler/x86/cell.lisp b/compiler/x86/cell.lisp
index 2c1cef3f9..f7fa623bc 100644
--- a/compiler/x86/cell.lisp
+++ b/compiler/x86/cell.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/x86/cell.lisp,v 1.5 1997/11/04 09:11:01 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/cell.lisp,v 1.6 1998/02/19 19:34:50 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -161,7 +161,7 @@
   (:translate (setf fdefn-function))
   (:args (function :scs (descriptor-reg) :target result)
 	 (fdefn :scs (descriptor-reg)))
-  (:temporary (:sc dword-reg) raw)
+  (:temporary (:sc unsigned-reg) raw)
   (:temporary (:sc byte-reg) type)
   (:results (result :scs (descriptor-reg)))
   (:generator 38
@@ -200,7 +200,7 @@
 (define-vop (bind)
   (:args (val :scs (any-reg descriptor-reg))
 	 (symbol :scs (descriptor-reg)))
-  (:temporary (:sc dword-reg) temp bsp)
+  (:temporary (:sc unsigned-reg) temp bsp)
   (:generator 5
     (load-symbol-value bsp *binding-stack-pointer*)
     (loadw temp symbol symbol-value-slot other-pointer-type)
@@ -211,7 +211,7 @@
     (storew val symbol symbol-value-slot other-pointer-type)))
 
 (define-vop (unbind)
-  (:temporary (:sc dword-reg) symbol value bsp)
+  (:temporary (:sc unsigned-reg) symbol value bsp)
   (:generator 0
     (load-symbol-value bsp *binding-stack-pointer*)
     (loadw symbol bsp (- binding-symbol-slot binding-size))
@@ -224,7 +224,7 @@
 
 (define-vop (unbind-to-here)
   (:args (where :scs (descriptor-reg any-reg)))
-  (:temporary (:sc dword-reg) symbol value bsp)
+  (:temporary (:sc unsigned-reg) symbol value bsp)
   (:generator 0
     (load-symbol-value bsp *binding-stack-pointer*)
     (inst cmp where bsp)
diff --git a/compiler/x86/char.lisp b/compiler/x86/char.lisp
index 4225739c5..804434bb4 100644
--- a/compiler/x86/char.lisp
+++ b/compiler/x86/char.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/x86/char.lisp,v 1.3 1997/11/18 10:53:21 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/char.lisp,v 1.4 1998/02/19 19:34:52 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;; 
@@ -131,7 +131,7 @@
   (:policy :fast-safe)
   (:args (code :scs (unsigned-reg unsigned-stack) :target eax))
   (:arg-types positive-fixnum)
-  (:temporary (:sc dword-reg :offset eax-offset :target res
+  (:temporary (:sc unsigned-reg :offset eax-offset :target res
 		   :from (:argument 0) :to (:result 0))
 	      eax)
   (:results (res :scs (base-char-reg)))
diff --git a/compiler/x86/debug.lisp b/compiler/x86/debug.lisp
index 60ef8dac7..19c6b6179 100644
--- a/compiler/x86/debug.lisp
+++ b/compiler/x86/debug.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/x86/debug.lisp,v 1.3 1997/11/18 10:53:22 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/debug.lisp,v 1.4 1998/02/19 19:34:54 dtc Rel $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -45,7 +45,7 @@
   (:args (sap :scs (sap-reg) :to :eval)
 	 (offset :scs (any-reg) :target temp))
   (:arg-types system-area-pointer positive-fixnum)
-  (:temporary (:sc dword-reg :from (:argument 1)) temp)
+  (:temporary (:sc unsigned-reg :from (:argument 1)) temp)
   (:results (result :scs (descriptor-reg)))
   (:result-types *)
   (:generator 9
@@ -73,7 +73,7 @@
 	 (offset :scs (any-reg) :target temp)
 	 (value :scs (descriptor-reg) :to :result :target result))
   (:arg-types system-area-pointer positive-fixnum *)
-  (:temporary (:sc dword-reg :from (:argument 1) :to :result) temp)
+  (:temporary (:sc unsigned-reg :from (:argument 1) :to :result) temp)
   (:results (result :scs (descriptor-reg)))
   (:result-types *)
   (:generator 9
@@ -102,7 +102,7 @@
   (:policy :fast-safe)
   (:args (thing :scs (descriptor-reg)))
   (:results (code :scs (descriptor-reg)))
-  (:temporary (:sc dword-reg) temp)
+  (:temporary (:sc unsigned-reg) temp)
   (:variant-vars lowtag)
   (:generator 5
     (let ((bogus (gen-label))
diff --git a/compiler/x86/float.lisp b/compiler/x86/float.lisp
index f12426917..af9b32ca1 100644
--- a/compiler/x86/float.lisp
+++ b/compiler/x86/float.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/x86/float.lisp,v 1.20 1998/01/17 05:47:15 dtc Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/float.lisp,v 1.21 1998/02/19 19:34:56 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -1584,7 +1584,8 @@
   (:result-types unsigned-num)
   (:translate floating-point-modes)
   (:policy :fast-safe)
-  (:temporary (:sc dword-reg :offset eax-offset :target res :to :result) eax)
+  (:temporary (:sc unsigned-reg :offset eax-offset :target res
+		   :to :result) eax)
   (:generator 8
    (inst sub esp-tn npx-env-size)	; make space on stack
    (inst wait)                          ; Catch any pending FPE exceptions
@@ -1605,7 +1606,8 @@
   (:result-types unsigned-num)
   (:translate (setf floating-point-modes))
   (:policy :fast-safe)
-  (:temporary (:sc dword-reg :offset eax-offset :from :eval :to :result) eax)
+  (:temporary (:sc unsigned-reg :offset eax-offset
+		   :from :eval :to :result) eax)
   (:generator 3
    (inst sub esp-tn npx-env-size)	; make space on stack
    (inst wait)                          ; Catch any pending FPE exceptions
@@ -1708,11 +1710,11 @@
 	     `(define-vop (,func)
 		(:translate ,trans)
 		(:args (x :scs (double-reg) :target fr0))
-		(:temporary (:sc dword-reg :offset eax-offset
+		(:temporary (:sc unsigned-reg :offset eax-offset
 				 :from :eval :to :result) eax)
-		(:temporary (:sc double-reg :offset fr0-offset
+		(:temporary (:sc unsigned-reg :offset fr0-offset
 				 :from :argument :to :result) fr0)
-		(:temporary (:sc double-reg :offset fr1-offset
+		(:temporary (:sc unsigned-reg :offset fr1-offset
 				 :from :argument :to :result) fr1)
 		(:results (y :scs (double-reg)))
 		(:arg-types double-float)
@@ -1753,7 +1755,7 @@
 (define-vop (ftan)
   (:translate %tan)
   (:args (x :scs (double-reg) :target fr0))
-  (:temporary (:sc dword-reg :offset eax-offset
+  (:temporary (:sc unsigned-reg :offset eax-offset
 		   :from :argument :to :result) eax)
   (:temporary (:sc double-reg :offset fr0-offset
 		   :from :argument :to :result) fr0)
@@ -1814,7 +1816,7 @@
 		(:args (x :scs (double-reg) :target fr0))
 		(:temporary (:sc double-reg :offset fr0-offset
 				 :from :argument :to :result) fr0)
-		(:temporary (:sc dword-reg :offset eax-offset
+		(:temporary (:sc unsigned-reg :offset eax-offset
 			     :from :argument :to :result) eax)
 		(:results (y :scs (double-reg)))
 	        (:arg-types double-float)
@@ -1850,7 +1852,7 @@
 		   :from :argument :to :result) fr0)
   (:temporary (:sc double-reg :offset fr1-offset
 		   :from :argument :to :result) fr1)
-  (:temporary (:sc dword-reg :offset eax-offset
+  (:temporary (:sc unsigned-reg :offset eax-offset
 		   :from :argument :to :result) eax)
   (:results (y :scs (double-reg)))
   (:arg-types double-float)
diff --git a/compiler/x86/move.lisp b/compiler/x86/move.lisp
index 1b8de8433..15196c38d 100644
--- a/compiler/x86/move.lisp
+++ b/compiler/x86/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/x86/move.lisp,v 1.6 1997/11/19 03:00:38 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/move.lisp,v 1.7 1998/02/19 19:34:59 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -234,9 +234,8 @@
   (:args (x :scs (descriptor-reg) :target eax))
   (:results (y :scs (signed-reg unsigned-reg)))
   (:note "integer to untagged word coercion")
-  (:temporary (:sc dword-reg :offset eax-offset
-		   :from (:argument 0)
-		   :to (:result 0) :target y) eax)
+  (:temporary (:sc unsigned-reg :offset eax-offset
+		   :from (:argument 0) :to (:result 0) :target y) eax)
   (:generator 4
     (move eax x)
     (inst test al-tn 3)
@@ -281,12 +280,11 @@
 #+nil
 (define-vop (move-from-signed)
   (:args (x :scs (signed-reg unsigned-reg) :target eax))
-  (:temporary (:sc dword-reg :offset eax-offset :from (:argument 0)) eax)
-  (:temporary (:sc dword-reg :offset ebx-offset :to (:result 0) :target y)
+  (:temporary (:sc unsigned-reg :offset eax-offset :from (:argument 0)) eax)
+  (:temporary (:sc unsigned-reg :offset ebx-offset :to (:result 0) :target y)
 	      ebx)
-  (:temporary (:sc dword-reg :offset ecx-offset
-		   :from (:argument 0) :to (:result 0))
-	      ecx)
+  (:temporary (:sc unsigned-reg :offset ecx-offset
+		   :from (:argument 0) :to (:result 0)) ecx)
   (:ignore ecx)
   (:results (y :scs (any-reg descriptor-reg)))
   (:note "signed word to integer coercion")
@@ -329,12 +327,11 @@
 #+nil
 (define-vop (move-from-unsigned)
   (:args (x :scs (signed-reg unsigned-reg) :target eax))
-  (:temporary (:sc dword-reg :offset eax-offset :from (:argument 0)) eax)
-  (:temporary (:sc dword-reg :offset ebx-offset :to (:result 0) :target y)
+  (:temporary (:sc unsigned-reg :offset eax-offset :from (:argument 0)) eax)
+  (:temporary (:sc unsigned-reg :offset ebx-offset :to (:result 0) :target y)
 	      ebx)
-  (:temporary (:sc dword-reg :offset ecx-offset
-		   :from (:argument 0) :to (:result 0))
-	      ecx)
+  (:temporary (:sc unsigned-reg :offset ecx-offset
+		   :from (:argument 0) :to (:result 0)) ecx)
   (:ignore ecx)
   (:results (y :scs (any-reg descriptor-reg)))
   (:note "unsigned word to integer coercion")
@@ -346,7 +343,7 @@
 ;;; Faster inline version.
 (define-vop (move-from-unsigned)
   (:args (x :scs (signed-reg unsigned-reg) :to :save))
-  (:temporary (:sc dword-reg) alloc)
+  (:temporary (:sc unsigned-reg) alloc)
   (:results (y :scs (any-reg descriptor-reg)))
   (:node-var node)
   (:note "unsigned word to integer coercion")
diff --git a/compiler/x86/nlx.lisp b/compiler/x86/nlx.lisp
index 552b067a2..369539965 100644
--- a/compiler/x86/nlx.lisp
+++ b/compiler/x86/nlx.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/x86/nlx.lisp,v 1.10 1998/01/17 05:56:38 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/nlx.lisp,v 1.11 1998/02/19 19:35:01 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -100,7 +100,7 @@
 (define-vop (make-unwind-block)
   (:args (tn))
   (:info entry-label)
-  (:temporary (:sc dword-reg) temp)
+  (:temporary (:sc unsigned-reg) temp)
   (:results (block :scs (any-reg)))
   (:generator 22
     (inst lea block (catch-block-ea tn))
@@ -137,13 +137,13 @@
 ;;;
 (define-vop (set-unwind-protect)
   (:args (tn))
-  (:temporary (:sc dword-reg) new-uwp)
+  (:temporary (:sc unsigned-reg) new-uwp)
   (:generator 7
     (inst lea new-uwp (catch-block-ea tn))
     (store-symbol-value new-uwp lisp::*current-unwind-protect-block*)))
 
 (define-vop (unlink-catch-block)
-  (:temporary (:sc dword-reg) block)
+  (:temporary (:sc unsigned-reg) block)
   (:policy :fast-safe)
   (:translate %catch-breakup)
   (:generator 17
@@ -152,7 +152,7 @@
     (store-symbol-value block lisp::*current-catch-block*)))
 
 (define-vop (unlink-unwind-protect)
-    (:temporary (:sc dword-reg) block)
+    (:temporary (:sc unsigned-reg) block)
   (:policy :fast-safe)
   (:translate %unwind-protect-breakup)
   (:generator 17
@@ -216,9 +216,9 @@
   ;; Again, no SC restrictions for the args, 'cause the loading would
   ;; happen before the entry label.
   (:info label)
-  (:temporary (:sc dword-reg :offset ecx-offset :from (:argument 2)) ecx)
-  (:temporary (:sc dword-reg :offset esi-offset) esi)
-  (:temporary (:sc dword-reg :offset edi-offset) edi)
+  (:temporary (:sc unsigned-reg :offset ecx-offset :from (:argument 2)) ecx)
+  (:temporary (:sc unsigned-reg :offset esi-offset) esi)
+  (:temporary (:sc unsigned-reg :offset edi-offset) edi)
   (:results (result :scs (any-reg) :from (:argument 0))
 	    (num :scs (any-reg control-stack)))
   (:save-p :force-to-stack)
diff --git a/compiler/x86/print.lisp b/compiler/x86/print.lisp
index db111aaf6..35a9266d3 100644
--- a/compiler/x86/print.lisp
+++ b/compiler/x86/print.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/x86/print.lisp,v 1.2 1997/11/04 09:11:15 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/print.lisp,v 1.3 1998/02/19 19:35:03 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -21,7 +21,7 @@
 
 (define-vop (print)
   (:args (object :scs (descriptor-reg any-reg)))
-  (:temporary (:sc dword-reg :offset eax-offset :target result
+  (:temporary (:sc unsigned-reg :offset eax-offset :target result
 		   :from :eval :to (:result 0))
 	      eax)
   (:results (result :scs (descriptor-reg)))
diff --git a/compiler/x86/static-fn.lisp b/compiler/x86/static-fn.lisp
index 618887650..c05d1855f 100644
--- a/compiler/x86/static-fn.lisp
+++ b/compiler/x86/static-fn.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/x86/static-fn.lisp,v 1.3 1997/12/05 06:55:32 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/static-fn.lisp,v 1.4 1998/02/19 19:35:04 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -28,10 +28,10 @@
   (:variant-vars function)
   (:vop-var vop)
   (:node-var node)
-  (:temporary (:sc dword-reg :offset ebx-offset :from (:eval 0) :to (:eval 2))
-	      ebx)
-  (:temporary (:sc dword-reg :offset ecx-offset :from (:eval 0) :to (:eval 2))
-	      ecx))
+  (:temporary (:sc unsigned-reg :offset ebx-offset
+		   :from (:eval 0) :to (:eval 2)) ebx)
+  (:temporary (:sc unsigned-reg :offset ecx-offset
+		   :from (:eval 0) :to (:eval 2)) ecx))
 
 (eval-when (compile load eval)
 
diff --git a/compiler/x86/subprim.lisp b/compiler/x86/subprim.lisp
index d042c0f50..bf91e318c 100644
--- a/compiler/x86/subprim.lisp
+++ b/compiler/x86/subprim.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/x86/subprim.lisp,v 1.2 1997/11/18 10:53:25 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/subprim.lisp,v 1.3 1998/02/19 19:35:05 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -27,8 +27,8 @@
   (:translate length)
   (:args (object :scs (descriptor-reg control-stack) :target ptr))
   (:arg-types list)
-  (:temporary (:sc dword-reg :offset eax-offset) eax)
-  (:temporary (:sc dword-reg :from (:argument 0)) ptr)
+  (:temporary (:sc unsigned-reg :offset eax-offset) eax)
+  (:temporary (:sc unsigned-reg :from (:argument 0)) ptr)
   (:results (count :scs (any-reg)))
   (:result-types positive-fixnum)
   (:policy :fast-safe)
@@ -65,7 +65,7 @@
   (:translate length)
   (:args (object :scs (descriptor-reg control-stack) :target ptr))
   (:arg-types list)
-  (:temporary (:sc dword-reg :from (:argument 0)) ptr)
+  (:temporary (:sc unsigned-reg :from (:argument 0)) ptr)
   (:results (count :scs (any-reg)))
   (:result-types positive-fixnum)
   (:policy :fast)
diff --git a/compiler/x86/system.lisp b/compiler/x86/system.lisp
index 732da8551..0eaf2690f 100644
--- a/compiler/x86/system.lisp
+++ b/compiler/x86/system.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/x86/system.lisp,v 1.8 1998/01/29 07:15:45 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/system.lisp,v 1.9 1998/02/19 19:35:07 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -39,7 +39,7 @@
   (:translate get-type)
   (:policy :fast-safe)
   (:args (object :scs (descriptor-reg)))
-  (:temporary (:sc dword-reg :offset eax-offset :to (:result 0)) eax)
+  (:temporary (:sc unsigned-reg :offset eax-offset :to (:result 0)) eax)
   (:results (result :scs (unsigned-reg)))
   (:result-types positive-fixnum)
   (:generator 6
@@ -89,7 +89,7 @@
   (:args (type :scs (unsigned-reg) :target eax)
 	 (function :scs (descriptor-reg)))
   (:arg-types positive-fixnum *)
-  (:temporary (:sc dword-reg :offset eax-offset :from (:argument 0)
+  (:temporary (:sc unsigned-reg :offset eax-offset :from (:argument 0)
 		   :to (:result 0) :target result)
 	      eax)
   (:results (result :scs (unsigned-reg)))
@@ -128,7 +128,7 @@
 	 (data :scs (any-reg) :target eax))
   (:arg-types * positive-fixnum)
   (:results (res :scs (descriptor-reg)))
-  (:temporary (:sc dword-reg :offset eax-offset
+  (:temporary (:sc unsigned-reg :offset eax-offset
 		   :from (:argument 1) :to (:result 0)) eax)
   (:generator 6
     (move eax data)
diff --git a/compiler/x86/type-vops.lisp b/compiler/x86/type-vops.lisp
index 80f01f892..2458b653f 100644
--- a/compiler/x86/type-vops.lisp
+++ b/compiler/x86/type-vops.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/x86/type-vops.lisp,v 1.9 1998/01/17 05:47:18 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/type-vops.lisp,v 1.10 1998/02/19 19:35:08 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;; 
@@ -260,14 +260,14 @@
 (define-vop (check-type)
   (:args (value :target result :scs (any-reg descriptor-reg)))
   (:results (result :scs (any-reg descriptor-reg)))
-  (:temporary (:sc dword-reg :offset eax-offset :to (:result 0)) eax)
+  (:temporary (:sc unsigned-reg :offset eax-offset :to (:result 0)) eax)
   (:ignore eax)
   (:vop-var vop)
   (:save-p :compute-only))
 
 (define-vop (type-predicate)
   (:args (value :scs (any-reg descriptor-reg)))
-  (:temporary (:sc dword-reg :offset eax-offset) eax)
+  (:temporary (:sc unsigned-reg :offset eax-offset) eax)
   (:ignore eax)
   (:conditional)
   (:info target not-p)
diff --git a/compiler/x86/values.lisp b/compiler/x86/values.lisp
index 765b09d78..bf19cab39 100644
--- a/compiler/x86/values.lisp
+++ b/compiler/x86/values.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/x86/values.lisp,v 1.3 1997/11/04 09:11:17 dtc Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/values.lisp,v 1.4 1998/02/19 19:35:10 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -36,7 +36,7 @@
 ;;;
 (define-vop (push-values)
   (:args (vals :more t))
-  (:temporary (:sc dword-reg :to (:result 0) :target start) temp)
+  (:temporary (:sc unsigned-reg :to (:result 0) :target start) temp)
   (:results (start) (count))
   (:info nvals)
   (:generator 20
@@ -57,8 +57,8 @@
   (:results (start :scs (any-reg))
 	    (count :scs (any-reg)))
   (:temporary (:sc descriptor-reg :from (:argument 0) :to (:result 1)) list)
-  (:temporary (:sc dword-reg :to (:result 1)) nil-temp)
-  (:temporary (:sc dword-reg :offset eax-offset :to (:result 1)) eax)
+  (:temporary (:sc descriptor-reg :to (:result 1)) nil-temp)
+  (:temporary (:sc unsigned-reg :offset eax-offset :to (:result 1)) eax)
   (:vop-var vop)
   (:save-p :compute-only)
   (:generator 0
@@ -98,7 +98,7 @@
   (:arg-types * positive-fixnum positive-fixnum)
   (:temporary (:sc any-reg :offset esi-offset :from (:argument 0)) src)
   (:temporary (:sc descriptor-reg :offset eax-offset) temp)
-  (:temporary (:sc dword-reg :offset ecx-offset) temp1)
+  (:temporary (:sc unsigned-reg :offset ecx-offset) temp1)
   (:results (start :scs (any-reg))
             (count :scs (any-reg)))
   (:generator 20
-- 
GitLab