[Mesa-dev] [PATCH 1/2] Fix gcc version checks for _mesa_bitcount
Ian Romanick
idr at freedesktop.org
Fri Oct 21 18:36:23 PDT 2011
On 10/21/2011 04:10 PM, Alan Coopersmith wrote:
> - 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>
For the series,
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-dev
mailing list