From 873965b49f283ad028dd4e0e5b7e93a758c84993 Mon Sep 17 00:00:00 2001 From: marha Date: Mon, 26 Sep 2011 17:04:30 +0200 Subject: fontconfig libX11 libXext libXft libXmu mesa git update 26 sep 2011 --- mesalib/src/gallium/auxiliary/util/u_math.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'mesalib/src/gallium/auxiliary/util/u_math.h') diff --git a/mesalib/src/gallium/auxiliary/util/u_math.h b/mesalib/src/gallium/auxiliary/util/u_math.h index 46d932293..c74c1da76 100644 --- a/mesalib/src/gallium/auxiliary/util/u_math.h +++ b/mesalib/src/gallium/auxiliary/util/u_math.h @@ -424,6 +424,22 @@ unsigned ffs( unsigned u ) #endif +/* Destructively loop over all of the bits in a mask as in: + * + * while (mymask) { + * int i = u_bit_scan(&mymask); + * ... process element i + * } + * + */ +static INLINE int u_bit_scan(unsigned *mask) +{ + int i = ffs(*mask) - 1; + *mask &= ~(1 << i); + return i; +} + + /** * Return float bits. */ -- cgit v1.2.3