summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorMatt Turner <[email protected]>2015-02-20 18:46:43 -0800
committerMatt Turner <[email protected]>2015-02-23 10:41:22 -0800
commit3492e88090d2d0c0bfbc934963b8772b45fc8880 (patch)
tree6120d1a4c8a1df9eee9e03affcaca2748f8da75c /src/gallium
parent5a191f49ad084e728122fed83bd7511817e66831 (diff)
gallium/util: Use HAVE___BUILTIN_* macros.
Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Jose Fonseca <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/auxiliary/util/u_math.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/gallium/auxiliary/util/u_math.h b/src/gallium/auxiliary/util/u_math.h
index dd2ce01fc54..1e1bdf0cc79 100644
--- a/src/gallium/auxiliary/util/u_math.h
+++ b/src/gallium/auxiliary/util/u_math.h
@@ -398,7 +398,7 @@ unsigned ffs( unsigned u )
static INLINE unsigned
util_last_bit(unsigned u)
{
-#if defined(__GNUC__)
+#if defined(HAVE___BUILTIN_CLZ)
return u == 0 ? 0 : 32 - __builtin_clz(u);
#else
unsigned r = 0;
@@ -520,7 +520,7 @@ float_to_byte_tex(float f)
static INLINE unsigned
util_logbase2(unsigned n)
{
-#if defined(PIPE_CC_GCC)
+#if defined(HAVE___BUILTIN_CLZ)
return ((sizeof(unsigned) * 8 - 1) - __builtin_clz(n | 1));
#else
unsigned pos = 0;
@@ -540,7 +540,7 @@ util_logbase2(unsigned n)
static INLINE unsigned
util_next_power_of_two(unsigned x)
{
-#if defined(PIPE_CC_GCC)
+#if defined(HAVE___BUILTIN_CLZ)
if (x <= 1)
return 1;
@@ -572,7 +572,7 @@ util_next_power_of_two(unsigned x)
static INLINE unsigned
util_bitcount(unsigned n)
{
-#if defined(PIPE_CC_GCC)
+#if defined(HAVE___BUILTIN_POPCOUNT)
return __builtin_popcount(n);
#else
/* K&R classic bitcount.
@@ -641,8 +641,7 @@ util_bitreverse(unsigned n)
static INLINE uint32_t
util_bswap32(uint32_t n)
{
-/* We need the gcc version checks for non-autoconf build system */
-#if defined(HAVE___BUILTIN_BSWAP32) || (defined(PIPE_CC_GCC) && (PIPE_CC_GCC_VERSION >= 403))
+#if defined(HAVE___BUILTIN_BSWAP32)
return __builtin_bswap32(n);
#else
return (n >> 24) |