Index: gcc/config/i386/llvm-i386.cpp
===================================================================
--- gcc/config/i386/llvm-i386.cpp	(revision 45657)
+++ gcc/config/i386/llvm-i386.cpp	(working copy)
@@ -79,7 +79,7 @@
   case IX86_BUILTIN_PSLLWI: {
     Function *psllw =
       Intrinsic::getDeclaration(TheModule, Intrinsic::x86_mmx_psll_w);
-    Ops[1] = BuildVector(Ops[1], UndefValue::get(Type::Int32Ty), NULL);
+    Ops[1] = BuildVector(Ops[1]);
     Result = Builder.CreateCall(psllw, Ops.begin(), Ops.begin()+2, "tmp");
     Result = Builder.CreateBitCast(Result, ResultType, "tmp");
     return true;
@@ -97,7 +97,7 @@
   case IX86_BUILTIN_PSLLDI: {
     Function *pslld =
       Intrinsic::getDeclaration(TheModule, Intrinsic::x86_mmx_psll_d);
-    Ops[1] = BuildVector(Ops[1], UndefValue::get(Type::Int32Ty), NULL);
+    Ops[1] = BuildVector(Ops[1]);
     Result = Builder.CreateCall(pslld, Ops.begin(), Ops.begin()+2, "tmp");
     Result = Builder.CreateBitCast(Result, ResultType, "tmp");
     return true;
@@ -114,7 +114,7 @@
   case IX86_BUILTIN_PSLLQI: {
     Function *psllq =
       Intrinsic::getDeclaration(TheModule, Intrinsic::x86_mmx_psll_q);
-    Ops[1] = BuildVector(Ops[1], UndefValue::get(Type::Int32Ty), NULL);
+    Ops[1] = BuildVector(Ops[1]);
     Result = Builder.CreateCall(psllq, Ops.begin(), Ops.begin()+2, "tmp");
     Result = Builder.CreateBitCast(Result, ResultType, "tmp");
     return true;
@@ -132,7 +132,7 @@
   case IX86_BUILTIN_PSRLWI: {
     Function *psrlw =
       Intrinsic::getDeclaration(TheModule, Intrinsic::x86_mmx_psrl_w);
-    Ops[1] = BuildVector(Ops[1], UndefValue::get(Type::Int32Ty), NULL);
+    Ops[1] = BuildVector(Ops[1]);
     Result = Builder.CreateCall(psrlw, Ops.begin(), Ops.begin()+2, "tmp");
     Result = Builder.CreateBitCast(Result, ResultType, "tmp");
     return true;
@@ -150,7 +150,7 @@
   case IX86_BUILTIN_PSRLDI: {
     Function *psrld =
       Intrinsic::getDeclaration(TheModule, Intrinsic::x86_mmx_psrl_d);
-    Ops[1] = BuildVector(Ops[1], UndefValue::get(Type::Int32Ty), NULL);
+    Ops[1] = BuildVector(Ops[1]);
     Result = Builder.CreateCall(psrld, Ops.begin(), Ops.begin()+2, "tmp");
     Result = Builder.CreateBitCast(Result, ResultType, "tmp");
     return true;
@@ -167,7 +167,7 @@
   case IX86_BUILTIN_PSRLQI: {
     Function *psrlq =
       Intrinsic::getDeclaration(TheModule, Intrinsic::x86_mmx_psrl_q);
-    Ops[1] = BuildVector(Ops[1], UndefValue::get(Type::Int32Ty), NULL);
+    Ops[1] = BuildVector(Ops[1]);
     Result = Builder.CreateCall(psrlq, Ops.begin(), Ops.begin()+2, "tmp");
     Result = Builder.CreateBitCast(Result, ResultType, "tmp");
     return true;
@@ -185,7 +185,7 @@
   case IX86_BUILTIN_PSRAWI: {
     Function *psraw =
       Intrinsic::getDeclaration(TheModule, Intrinsic::x86_mmx_psra_w);
-    Ops[1] = BuildVector(Ops[1], UndefValue::get(Type::Int32Ty), NULL);
+    Ops[1] = BuildVector(Ops[1]);
     Result = Builder.CreateCall(psraw, Ops.begin(), Ops.begin()+2, "tmp");
     Result = Builder.CreateBitCast(Result, ResultType, "tmp");
     return true;
@@ -203,7 +203,7 @@
   case IX86_BUILTIN_PSRADI: {
     Function *psrad =
       Intrinsic::getDeclaration(TheModule, Intrinsic::x86_mmx_psra_d);
-    Ops[1] = BuildVector(Ops[1], UndefValue::get(Type::Int32Ty), NULL);
+    Ops[1] = BuildVector(Ops[1]);
     Result = Builder.CreateCall(psrad, Ops.begin(), Ops.begin()+2, "tmp");
     Result = Builder.CreateBitCast(Result, ResultType, "tmp");
     return true;
