Inconsistent constraint in asm-i386/rwsem.h

Message ID 3AF5DB4E.B5FC78E5@mountain.net
State New, archived
Headers show
Series
  • Inconsistent constraint in asm-i386/rwsem.h
Related show

Commit Message

Tom Leete May 6, 2001, 11:16 p.m. UTC
Hi,

In include/asm-i386/rwsem.h:__up_read(), the auto variable 'tmp' is
asserted to be in edx. This patch adjusts the constraint to match
the variable.

It could be argued that tmp should be declared register instead. I
didn't because the function is inlined. The compiler will know how
much register pressure there is in each instance.

Cheers,
Tom

$ diff -u linux-2.4.5-pre1/include/asm-i386/rwsem.h~
linux-2.4.5-pre1/include/asm-i386/rwsem.h

Patch

--- linux-2.4.5-pre1/include/asm-i386/rwsem.h~	Sun May  6 05:48:08 2001
+++ linux-2.4.5-pre1/include/asm-i386/rwsem.h	Sun May  6 07:17:36 2001
@@ -164,7 +164,7 @@ 
 		"  jmp       1b\n"
 		".previous\n"
 		"# ending __up_read\n"
-		: "+m"(sem->count), "+d"(tmp)
+		: "+m"(sem->count), "+m"(tmp)
 		: "a"(sem)
 		: "memory", "cc");
 }