]> granicus.if.org Git - clang/commitdiff
Fix a problem reported in PR2766 that makes clang reject old versions
authorChris Lattner <sabre@nondot.org>
Sun, 5 Oct 2008 19:05:44 +0000 (19:05 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 5 Oct 2008 19:05:44 +0000 (19:05 +0000)
of GCC's headers.  This impacts people that run clang in Tiger systems.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57126 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/AST/X86Builtins.def

index ccb75ecebcb66d6160597917df80b4f04c974752..057ff91f12c356a7a141325600e9c29750e3da17 100644 (file)
@@ -293,7 +293,12 @@ BUILTIN(__builtin_ia32_storelps, "vV2i*V4f", "")
 BUILTIN(__builtin_ia32_movmskps, "iV4f", "")
 BUILTIN(__builtin_ia32_pmovmskb, "iV8c", "")
 BUILTIN(__builtin_ia32_movntps, "vf*V4f", "")
-BUILTIN(__builtin_ia32_movntq, "vV1LLi*V1LLi", "")
+// FIXME: the prototype for __builtin_ia32_movntq changed across different
+// versions of GCC.  Until we can replace GCC's xmmintrin.h, this is hacked to
+// be a vararg builtin instead of taking V1LLi like it should.  This loses some
+// type checking but makes us compatible with old version of GCC's xmmintrin.h
+// file.
+BUILTIN(__builtin_ia32_movntq, "vV1LLi*.", "")
 BUILTIN(__builtin_ia32_sfence, "v", "")
 BUILTIN(__builtin_ia32_psadbw, "V4sV8cV8c", "")
 BUILTIN(__builtin_ia32_rcpps, "V4fV4f", "")