Mesa (master): Fix gcc version checks for _mesa_bitcount
Alan Coopersmith
alanc at kemper.freedesktop.org
Sat Oct 22 01:41:07 UTC 2011
Module: Mesa
Branch: master
Commit: 8c509e1181fc8be85587f290b0a9337724fb7a7b
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8c509e1181fc8be85587f290b0a9337724fb7a7b
Author: Alan Coopersmith <alan.coopersmith at oracle.com>
Date: Thu Oct 20 17:14:05 2011 -0700
Fix gcc version checks for _mesa_bitcount
- Fix _GNUC__ typo in both checks
- Fix logic error in check for gcc < 3.4 that breaks for gcc 2.x & older
Without this fix, builds with gcc 3.4.x end up depending on undefined
_mesa_bitcount instead of gcc's __builtin_popcount.
NOTE: This is a candidate for the stable branches.
Signed-off-by: Alan Coopersmith <alan.coopersmith at oracle.com>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
---
src/mesa/main/imports.c | 2 +-
src/mesa/main/imports.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/mesa/main/imports.c b/src/mesa/main/imports.c
index 345a1c5..2469e42 100644
--- a/src/mesa/main/imports.c
+++ b/src/mesa/main/imports.c
@@ -514,7 +514,7 @@ _mesa_ffsll(int64_t val)
#endif
#if !defined(__GNUC__) ||\
- ((_GNUC__ == 3 && __GNUC_MINOR__ < 4) && __GNUC__ < 4)
+ ((__GNUC__ * 100 + __GNUC_MINOR__) < 304) /* Not gcc 3.4 or later */
/**
* Return number of bits set in given GLuint.
*/
diff --git a/src/mesa/main/imports.h b/src/mesa/main/imports.h
index 20fa148..9cb6c6c 100644
--- a/src/mesa/main/imports.h
+++ b/src/mesa/main/imports.h
@@ -576,7 +576,7 @@ _mesa_init_sqrt_table(void);
#define _mesa_ffs(i) ffs(i)
#define _mesa_ffsll(i) ffsll(i)
-#if ((_GNUC__ == 3 && __GNUC_MINOR__ >= 4) || __GNUC__ >= 4)
+#if ((__GNUC__ * 100 + __GNUC_MINOR__) >= 304) /* gcc 3.4 or later */
#define _mesa_bitcount(i) __builtin_popcount(i)
#define _mesa_bitcount_64(i) __builtin_popcountll(i)
#else
More information about the mesa-commit
mailing list