diff --git a/compiler/ppc/insts.lisp b/compiler/ppc/insts.lisp
index bd2b420d0c2a10ec7a31ba899c0b960dd34f3d3f..f6a1fbb213f65f36ec80aba7783997070479cdc0 100644
--- a/compiler/ppc/insts.lisp
+++ b/compiler/ppc/insts.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/ppc/insts.lisp,v 1.17 2006/02/03 15:54:38 rtoy Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ppc/insts.lisp,v 1.18 2006/03/18 05:17:49 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -236,18 +236,17 @@ about function addresses and register values.")
 	      (disassem:note (format nil "Header word ~A, size ~D?" type size)
 			     dstate)))))))))
 
-#+nil
-(defun handle-add-inst (reg word dstate)
-  (let ((rt (ldb (byte 5 21) word))
+(defun handle-and-inst (reg word dstate)
+  (let ((rs (ldb (byte 5 21) word))
 	(ra (ldb (byte 5 16) word)))
     (when (and (= reg 6)
-	       (= rt alloc-offset)
+	       (= rs alloc-offset)
 	       (= ra alloc-offset))
-      ;; We have "ADD $ALLOC, $ALLOC, $NL3".  This turns off
+      ;; We have "and $ALLOC, $ALLOC, $NL3".  This turns off
       ;; pseudo-atomic.  (See the pseudo-atomic macro.)
       (disassem:note "Reset pseudo-atomic flag" dstate)
       (setf *pseudo-atomic-set* nil))))
-  
+
 (defun update-addis-notes (word)
   ;; If this instruction writes to register that was the target of an
   ;; ADDIS instruction, we should remove it from *note-addis-inst* so
@@ -279,11 +278,10 @@ about function addresses and register values.")
 	       (= 24 opcode))
 	   ;; An ADDI or ORI instruction.
 	   (handle-addi-inst reg word dstate))
-	  #+nil
 	  ((and (= 31 opcode)
-		(= 266 (ldb (byte 9 1) word)))
-	   ;; An ADD instruction
-	   (handle-add-inst reg word dstate))
+		(= 28 (ldb (byte 10 1) word)))
+	   ;; An AND instruction
+	   (handle-and-inst reg word dstate))
 	  )
     (update-addis-notes word)))