diff --git a/compiler/mips/arith.lisp b/compiler/mips/arith.lisp
index 2b60514fc3fcdc3f71266568917b0f7f1f899178..8890f1eebcd78ab247bd79ad30a845042646ce42 100644
--- a/compiler/mips/arith.lisp
+++ b/compiler/mips/arith.lisp
@@ -105,13 +105,13 @@
 
 ;;; Logical operatons.
 
-(define-fixnum-binop (fast-logior/fixnum logior 1 t)
+(define-fixnum-binop (fast-logior/fixnum logior 1 *)
 		     or :immed-op ori :unsigned t)
 
-(define-fixnum-binop (fast-logand/fixnum logand 1 t)
+(define-fixnum-binop (fast-logand/fixnum logand 1 *)
 		     and :immed-op andi :unsigned t)
 
-(define-fixnum-binop (fast-logxor/fixnum logxor 1 t)
+(define-fixnum-binop (fast-logxor/fixnum logxor 1 *)
 		     xor :immed-op xori :unsigned t)
 
 
@@ -245,9 +245,7 @@
 
 
 (define-vop (fast-if-</fixnum fast-conditional/fixnum)
-  (:temporary (:type fixnum :scs (any-reg descriptor-reg)
-	       :from (:argument 0))
-	      temp)
+  (:temporary (:type fixnum :scs (any-reg) :from (:argument 0)) temp)
   (:translate <)
   (:generator 3
     (sc-case y
@@ -268,9 +266,7 @@
     (nop)))
 
 (define-vop (fast-if->/fixnum fast-conditional/fixnum)
-  (:temporary (:type fixnum :scs (any-reg descriptor-reg)
-	       :from (:argument 0))
-	      temp)
+  (:temporary (:type fixnum :scs (any-reg) :from (:argument 0)) temp)
   (:translate >)
   (:generator 3
     (sc-case y