]> granicus.if.org Git - clang/commitdiff
simplify some builder calls.
authorChris Lattner <sabre@nondot.org>
Tue, 6 May 2008 00:56:42 +0000 (00:56 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 6 May 2008 00:56:42 +0000 (00:56 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50694 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGBuiltin.cpp
lib/CodeGen/CGExprAgg.cpp
lib/CodeGen/CGObjCEtoile.cpp
lib/CodeGen/CGObjCGNU.cpp

index 98e01b04a55994be5cbd4562d4f6e055878aca9e..f32031325d62e7a25dcb27dcf287fdcfde94a115 100644 (file)
@@ -140,9 +140,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(unsigned BuiltinID, const CallExpr *E) {
 
     DstPtr = Builder.CreateBitCast(DstPtr, Type);
     SrcPtr = Builder.CreateBitCast(SrcPtr, Type);
-    Value *Args[] = { DstPtr, SrcPtr };
-    return RValue::get(Builder.CreateCall(CGM.getIntrinsic(Intrinsic::vacopy), 
-                                          &Args[0], &Args[2]));
+    return RValue::get(Builder.CreateCall2(CGM.getIntrinsic(Intrinsic::vacopy), 
+                                           DstPtr, SrcPtr));
   }
   case Builtin::BI__builtin_classify_type: {
     APSInt Result(32);
@@ -559,18 +558,16 @@ Value *CodeGenFunction::EmitX86BuiltinExpr(unsigned BuiltinID,
     llvm::Type *PtrTy = llvm::PointerType::getUnqual(llvm::Type::Int8Ty);
     Value *One = llvm::ConstantInt::get(llvm::Type::Int32Ty, 1);
     Value *Tmp = Builder.CreateAlloca(llvm::Type::Int32Ty, One, "tmp");
-    One = Builder.CreateBitCast(Tmp, PtrTy);
     Builder.CreateStore(Ops[0], Tmp);
     return Builder.CreateCall(CGM.getIntrinsic(Intrinsic::x86_sse_ldmxcsr),
-                             &One, &One+1);
+                              Builder.CreateBitCast(Tmp, PtrTy));
   }
   case X86::BI__builtin_ia32_stmxcsr: {
     llvm::Type *PtrTy = llvm::PointerType::getUnqual(llvm::Type::Int8Ty);
     Value *One = llvm::ConstantInt::get(llvm::Type::Int32Ty, 1);
     Value *Tmp = Builder.CreateAlloca(llvm::Type::Int32Ty, One, "tmp");
-    One = Builder.CreateBitCast(Tmp, PtrTy);
     One = Builder.CreateCall(CGM.getIntrinsic(Intrinsic::x86_sse_stmxcsr),
-                             &One, &One+1);
+                             Builder.CreateBitCast(Tmp, PtrTy));
     return Builder.CreateLoad(Tmp, "stmxcsr");
   }
   case X86::BI__builtin_ia32_cmpordps:
index f91c39253ca0a0a52e685aa27d994eb88a25225a..508bf753832a70b1bc2426d05f1623ad3e6682d3 100644 (file)
@@ -330,14 +330,10 @@ void AggExprEmitter::EmitNullInitializationToLValue(LValue LV, QualType T) {
     
     const llvm::Type *BP = llvm::PointerType::getUnqual(llvm::Type::Int8Ty);
     llvm::Value* DestPtr = Builder.CreateBitCast(LV.getAddress(), BP, "tmp");
-    
-    llvm::Value *MemSetOps[4] = {
-      DestPtr, llvm::ConstantInt::get(llvm::Type::Int8Ty, 0),
-      llvm::ConstantInt::get(llvm::Type::Int64Ty, Size/8),
-      llvm::ConstantInt::get(llvm::Type::Int32Ty, 0)
-    };
-    
-    Builder.CreateCall(MemSet, MemSetOps, MemSetOps+4);
+    Builder.CreateCall4(MemSet, DestPtr, 
+                        llvm::ConstantInt::get(llvm::Type::Int8Ty, 0),
+                        llvm::ConstantInt::get(llvm::Type::Int64Ty, Size/8),
+                        llvm::ConstantInt::get(llvm::Type::Int32Ty, 0));
   }
 }
 
index 4ff48f12b6be4b21d1ec8533d05b58c769c80fc3..d5023b4240c6debeb8505d082029985989ef0320 100644 (file)
@@ -131,10 +131,7 @@ llvm::Value *CGObjCEtoile::getSelector(llvm::IRBuilder &Builder,
         PtrToInt8Ty,
         PtrToInt8Ty,
         NULL);
-  llvm::SmallVector<llvm::Value*, 2> Args;
-  Args.push_back(SelName);
-  Args.push_back(SelTypes);
-  return Builder.CreateCall(SelFunction, Args.begin(), Args.end());
+  return Builder.CreateCall2(SelFunction, SelName, SelTypes);
 }
 
 static void SetField(llvm::IRBuilder &Builder, llvm::Value *Structure, 
@@ -180,9 +177,8 @@ llvm::Value *CGObjCEtoile::generateMessageSend(llvm::IRBuilder &Builder,
   LookupArgs.push_back(Receiver);
   LookupArgs.push_back(cmd);
   LookupArgs.push_back(Sender);
-  llvm::Value *Slot = Builder.CreateCall(Lookup,
-      LookupArgs.begin(),
-      LookupArgs.end());
+  llvm::Value *Slot = Builder.CreateCall(Lookup, LookupArgs.begin(),
+                                         LookupArgs.end());
   
   // Create the call structure
   llvm::Value *Call = Builder.CreateAlloca(CallTy);
index 5bb8fac73b29dc448ebc372e7aaace05aefde380..8373cfd84f2c5b3678fcb5c958bbb33a1b1018ac 100644 (file)
@@ -108,8 +108,7 @@ llvm::Value *CGObjCGNU::getSelector(llvm::IRBuilder &Builder,
           PtrToInt8Ty,
           PtrToInt8Ty,
           NULL);
-    llvm::Value *Args[] = { SelName, SelTypes };
-    cmd = Builder.CreateCall(SelFunction, Args, Args+2);
+    cmd = Builder.CreateCall2(SelFunction, SelName, SelTypes);
   }
   return cmd;
 }
@@ -142,13 +141,12 @@ llvm::Value *CGObjCGNU::generateMessageSend(llvm::IRBuilder &Builder,
      TheModule.getOrInsertFunction("objc_msg_lookup",
                                    llvm::PointerType::getUnqual(impType),
                                    Receiver->getType(), SelectorTy, NULL);
+  llvm::Value *imp = Builder.CreateCall2(lookupFunction, Receiver, cmd);
+
+  // Call the method.
   llvm::SmallVector<llvm::Value*, 16> lookupArgs;
   lookupArgs.push_back(Receiver);
   lookupArgs.push_back(cmd);
-  llvm::Value *imp = Builder.CreateCall(lookupFunction,
-                                        lookupArgs.begin(), lookupArgs.end());
-
-  // Call the method.
   lookupArgs.insert(lookupArgs.end(), ArgV, ArgV+ArgC);
   return Builder.CreateCall(imp, lookupArgs.begin(), lookupArgs.end());
 }