generic: implement __fls on all 64-bit archs
[cascardo/linux.git] / include / asm-alpha / bitops.h
index 381b4f5..15f3ae2 100644 (file)
@@ -1,6 +1,10 @@
 #ifndef _ALPHA_BITOPS_H
 #define _ALPHA_BITOPS_H
 
+#ifndef _LINUX_BITOPS_H
+#error only <linux/bitops.h> can be included directly
+#endif
+
 #include <asm/compiler.h>
 #include <asm/barrier.h>
 
@@ -384,6 +388,11 @@ static inline int fls64(unsigned long x)
 }
 #endif
 
+static inline unsigned long __fls(unsigned long x)
+{
+       return fls64(x) - 1;
+}
+
 static inline int fls(int x)
 {
        return fls64((unsigned int) x);