diff --git a/compiler/float-tran.lisp b/compiler/float-tran.lisp
index 2a01bb74f860df7af25a1bd4e1be86735c92e02f..49f4a7a978cad509b71074a700f10c8cdf42d69b 100644
--- a/compiler/float-tran.lisp
+++ b/compiler/float-tran.lisp
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/float-tran.lisp,v 1.64 1998/02/24 18:12:10 dtc Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/float-tran.lisp,v 1.65 1998/03/21 07:53:30 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -1193,7 +1193,16 @@
 		 '(complex (realpart z) (- (imagpart z))))
 	       ;; Cis.
 	       (deftransform cis ((z) ((,type)) *)
-		 '(complex (cos z) (sin z))))))
+		 '(complex (cos z) (sin z)))
+	       ;; Comparison
+	       (deftransform = ((w z) ((complex ,type) (complex ,type)) *)
+		 '(and (= (realpart w) (realpart z))
+		       (= (imagpart w) (imagpart z))))
+	       (deftransform = ((w z) ((complex ,type) ,type) *)
+		 '(and (= (realpart w) z) (zerop (imagpart w))))
+	       (deftransform = ((w z) (,type (complex ,type)) *)
+		 '(and (= (realpart z) w) (zerop (imagpart z))))
+	       )))
 
   (frob single-float)
   (frob double-float))