Disable MMX when incompatible clang is being used.
authorJeremy Huddleston <jeremyhu@apple.com>
Thu, 8 Mar 2012 17:41:32 +0000 (09:41 -0800)
committerSøren Sandmann Pedersen <ssp@redhat.com>
Tue, 13 Mar 2012 22:02:26 +0000 (18:02 -0400)
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
configure.ac

index c3c711c..1ca3c02 100644 (file)
@@ -297,6 +297,15 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
 #include <mmintrin.h>
 int main () {
     __m64 v = _mm_cvtsi32_si64 (1);
+    __m64 w;
+    int8_t x;
+
+    /* Some versions of clang will choke on K */
+    asm ("pshufw %2, %1, %0\n\t"
+        : "=y" (v)
+        : "y" (w), "K" (x)
+    );
+
     return _mm_cvtsi64_si32 (v);
 }]])], have_mmx_intrinsics=yes)
 CFLAGS=$xserver_save_CFLAGS