diff --git a/src/include/storage/s_lock.h b/src/include/storage/s_lock.h
index d45baaa93b6f476abbb069c4e68acd2a0d31c94f..4f13fd342cfab2a0ef2dab09cac867bbbce6ecb5 100644
--- a/src/include/storage/s_lock.h
+++ b/src/include/storage/s_lock.h
@@ -63,7 +63,7 @@
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- *	  $Id: s_lock.h,v 1.104 2003/04/04 05:32:30 tgl Exp $
+ *	  $Id: s_lock.h,v 1.105 2003/04/04 06:57:39 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -229,20 +229,20 @@ tas(volatile slock_t *lock)
 	int _res;
 
 	__asm__ __volatile__(
-"	lwarx   %0,0,%3		\n"
+"	lwarx   %0,0,%2		\n"
 "	cmpwi   %0,0		\n"
 "	bne     1f			\n"
 "	addi    %0,%0,1		\n"
-"	stwcx.  %0,0,%3		\n"
+"	stwcx.  %0,0,%2		\n"
 "	beq     2f         	\n"
-"1:	li      %2,1		\n"
+"1:	li      %1,1		\n"
 "	b		3f			\n"
 "2:						\n"
 "	isync				\n"
-"	li      %2,0		\n"
+"	li      %1,0		\n"
 "3:						\n"
 
-:	"=&r" (_t), "=m" (lock), "=r" (_res)
+:	"=&r" (_t), "=r" (_res)
 :	"r" (lock)
 :	"cc", "memory"
 	);