]> granicus.if.org Git - clang/commitdiff
Fix some prototypes, and implement some builtins until we have our header files compl...
authorNate Begeman <natebegeman@mac.com>
Fri, 16 May 2008 18:59:42 +0000 (18:59 +0000)
committerNate Begeman <natebegeman@mac.com>
Fri, 16 May 2008 18:59:42 +0000 (18:59 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51199 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/AST/X86Builtins.def
lib/CodeGen/CGBuiltin.cpp

index 90dcac5a3ff35a1c0c9a790625df23b0aa8cd840..97a07bca2ad4a94d523c3cfd1d3f13adff49b17f 100644 (file)
@@ -406,11 +406,11 @@ BUILTIN(__builtin_ia32_vec_ext_v2df, "dV2di", "")
 BUILTIN(__builtin_ia32_vec_ext_v2di, "LLiV2LLii", "")
 BUILTIN(__builtin_ia32_vec_ext_v4sf, "fV4fi", "")
 BUILTIN(__builtin_ia32_vec_ext_v4si, "iV4ii", "")
-BUILTIN(__builtin_ia32_vec_ext_v8hi, "v", "")
-BUILTIN(__builtin_ia32_vec_ext_v4hi, "v", "")
+BUILTIN(__builtin_ia32_vec_ext_v8hi, "UsV8si", "")
+BUILTIN(__builtin_ia32_vec_ext_v4hi, "sV4si", "")
 BUILTIN(__builtin_ia32_vec_ext_v2si, "iV2ii", "")
-BUILTIN(__builtin_ia32_vec_set_v8hi, "v", "")
-BUILTIN(__builtin_ia32_vec_set_v4hi, "v", "")
+BUILTIN(__builtin_ia32_vec_set_v8hi, "V8sV8ssi", "")
+BUILTIN(__builtin_ia32_vec_set_v4hi, "V4sv4ssi", "")
 
 // Apple local SSE builtins?  These are probably not needed eventually, but are
 // in the apple-gcc xmmintrin.h file (rdar://4099020).
index 9e06f1810914e43322f4d741bbae8cb406abe38c..d15780a63ba7205b4bc33c7f7bf64cca843fc87c 100644 (file)
@@ -792,6 +792,9 @@ Value *CodeGenFunction::EmitX86BuiltinExpr(unsigned BuiltinID,
     return Builder.CreateBitCast(Ops[0], 
                                  llvm::VectorType::get(llvm::Type::Int32Ty, 4));
   }
+  case X86::BI__builtin_ia32_vec_set_v4hi:
+  case X86::BI__builtin_ia32_vec_set_v8hi:
+    return Builder.CreateInsertElement(Ops[0], Ops[1], Ops[2], "pinsrw");
   case X86::BI__builtin_ia32_andps:
   case X86::BI__builtin_ia32_andpd:
   case X86::BI__builtin_ia32_andnps: