x86: simplify sync_test_bit()
authorJan Beulich <jbeulich@novell.com>
Fri, 14 Mar 2008 07:56:32 +0000 (07:56 +0000)
committerIngo Molnar <mingo@elte.hu>
Thu, 17 Apr 2008 15:41:13 +0000 (17:41 +0200)
There really is no need for a redundant implementation here, just keep
the alternative name for allowing consumers to use consistent naming.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/asm-x86/sync_bitops.h

index 6b775c9..bc249f4 100644 (file)
@@ -123,26 +123,7 @@ static inline int sync_test_and_change_bit(int nr, volatile unsigned long* addr)
        return oldbit;
 }
 
-static __always_inline int sync_constant_test_bit(int nr, const volatile unsigned long *addr)
-{
-       return ((1UL << (nr & 31)) &
-               (((const volatile unsigned int *)addr)[nr >> 5])) != 0;
-}
-
-static inline int sync_var_test_bit(int nr, const volatile unsigned long * addr)
-{
-       int oldbit;
-
-       __asm__ __volatile__("btl %2,%1\n\tsbbl %0,%0"
-                            :"=r" (oldbit)
-                            :"m" (ADDR),"Ir" (nr));
-       return oldbit;
-}
-
-#define sync_test_bit(nr,addr)                 \
-       (__builtin_constant_p(nr) ?             \
-        sync_constant_test_bit((nr),(addr)) :  \
-        sync_var_test_bit((nr),(addr)))
+#define sync_test_bit test_bit
 
 #undef ADDR