On 10/04/2011 07:00 AM, Brian Paul wrote: > On 10/03/2011 04:11 PM, Paul Berry wrote: >> The i965 driver already had a function to do this (brw_count_bits()), >> but it was buggy (it only counted the bottom 32 bits) and it was >> clumsy (it had a strange and broken fallback for non-GCC-like >> compilers, which fortunately was never used). Since Mesa already has >> a _mesa_bitcount() function, it seems better to just create a >> _mesa_bitcount_64() function rather than special-case this in the i965 >> driver. >> --- >> src/mesa/drivers/dri/i965/brw_util.h | 7 ++----- >> src/mesa/main/imports.c | 13 +++++++++++++ >> src/mesa/main/imports.h | 3 +++ >> 3 files changed, 18 insertions(+), 5 deletions(-) >> >> diff --git a/src/mesa/drivers/dri/i965/brw_util.h >> b/src/mesa/drivers/dri/i965/brw_util.h >> index 940a871..bbf36f6 100644 >> --- a/src/mesa/drivers/dri/i965/brw_util.h >> +++ b/src/mesa/drivers/dri/i965/brw_util.h >> @@ -34,15 +34,12 @@ >> #define BRW_UTIL_H >> >> #include "main/mtypes.h" >> +#include "main/imports.h" >> >> -#ifdef __GNUC__ >> -#define brw_count_bits(v) __builtin_popcount(v) >> -#else >> static inline GLuint brw_count_bits(uint64_t v) >> { >> - return _mesa_popcount(v>>32) + _mesa_popcount(v&0xffffffff); >> + return _mesa_bitcount_64(v); >> } >> -#endif > > I'm guessing you could eventually get rid of the brw_count_bits() > wrapper altogether at some point. > > Reviewed-by: Brian Paul <bri...@vmware.com>
I'd be glad to see that go, too. Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev