summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/util/u_sse.h
diff options
context:
space:
mode:
authorJosé Fonseca <[email protected]>2013-04-24 21:58:20 +0100
committerJosé Fonseca <[email protected]>2013-04-25 11:59:01 +0100
commitf0c296773d5c5a9c3d933a51ce6c5580a7e2c4e0 (patch)
treeba4041fa6fa47e5c7dbf6b4735dc57ea0c8b9e03 /src/gallium/auxiliary/util/u_sse.h
parent45a60e2e7a860891e529ba68c0264d5ecbdb8f28 (diff)
util/u_sse: Fix _mm_shuffle_epi8 prototype for clang.
Clang does not support __artificial__. Instead match precisely what's in the clang headers.
Diffstat (limited to 'src/gallium/auxiliary/util/u_sse.h')
-rw-r--r--src/gallium/auxiliary/util/u_sse.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/util/u_sse.h b/src/gallium/auxiliary/util/u_sse.h
index 1df6c872677..d100c47068d 100644
--- a/src/gallium/auxiliary/util/u_sse.h
+++ b/src/gallium/auxiliary/util/u_sse.h
@@ -175,7 +175,12 @@ static INLINE void u_print_ps(const char *name, __m128 r)
* MSVC will never get in here as its intrinsics support do not rely on
* compiler command line options.
*/
-static __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
+static __inline __m128i
+#ifdef __clang__
+ __attribute__((__always_inline__, __nodebug__))
+#else
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
+#endif
_mm_shuffle_epi8(__m128i a, __m128i mask)
{
__m128i result;