[PATCH 3/12] generic ffz()

From: Akinobu Mita
Date: Wed Jan 25 2006 - 22:30:12 EST


This patch introduces the C-language equivalent of the function:
unsigned long ffz(unsigned long word);

HAVE_ARCH_FFZ_BITOPS is defined when the architecture has its own
version of these functions.

This code largely copied from:
include/asm-sparc64/bitops.h


Index: 2.6-git/include/asm-generic/bitops.h
===================================================================
--- 2.6-git.orig/include/asm-generic/bitops.h 2006-01-25 19:14:09.000000000 +0900
+++ 2.6-git/include/asm-generic/bitops.h 2006-01-25 19:14:10.000000000 +0900
@@ -230,6 +230,13 @@

#endif /* HAVE_ARCH___FFS_BITOPS */

+#ifndef HAVE_ARCH_FFZ_BITOPS
+
+/* Undefined if no bit is zero. */
+#define ffz(x) __ffs(~x)
+
+#endif /* HAVE_ARCH_FFZ_BITOPS */
+
/*
* fls: find last bit set.
*/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/