From: Nate Begeman Date: Fri, 16 May 2008 18:59:42 +0000 (+0000) Subject: Fix some prototypes, and implement some builtins until we have our header files compl... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=24512501319aa6d7f70b1bd79470df0197b832c8;p=clang Fix some prototypes, and implement some builtins until we have our header files completed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51199 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/AST/X86Builtins.def b/include/clang/AST/X86Builtins.def index 90dcac5a3f..97a07bca2a 100644 --- a/include/clang/AST/X86Builtins.def +++ b/include/clang/AST/X86Builtins.def @@ -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). diff --git a/lib/CodeGen/CGBuiltin.cpp b/lib/CodeGen/CGBuiltin.cpp index 9e06f18109..d15780a63b 100644 --- a/lib/CodeGen/CGBuiltin.cpp +++ b/lib/CodeGen/CGBuiltin.cpp @@ -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: