[cfe-commits] r68652 - in /cfe/trunk/lib/CodeGen: CGBlocks.cpp CGCXX.cpp CGExpr.cpp CGObjC.cpp

Anders Carlsson andersca at mac.com
Wed Apr 8 16:13:17 PDT 2009


Author: andersca
Date: Wed Apr  8 18:13:16 2009
New Revision: 68652

URL: http://llvm.org/viewvc/llvm-project?rev=68652&view=rev
Log:
Use the new EmitCallArgs function. No indented functionality change.

Modified:
    cfe/trunk/lib/CodeGen/CGBlocks.cpp
    cfe/trunk/lib/CodeGen/CGCXX.cpp
    cfe/trunk/lib/CodeGen/CGExpr.cpp
    cfe/trunk/lib/CodeGen/CGObjC.cpp

Modified: cfe/trunk/lib/CodeGen/CGBlocks.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGBlocks.cpp?rev=68652&r1=68651&r2=68652&view=diff

==============================================================================
--- cfe/trunk/lib/CodeGen/CGBlocks.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGBlocks.cpp Wed Apr  8 18:13:16 2009
@@ -435,16 +435,15 @@
   CallArgList Args;
   Args.push_back(std::make_pair(RValue::get(BlockLiteral), VoidPtrTy));
 
+  QualType FnType = BPT->getPointeeType();
+
   // And the rest of the arguments.
-  for (CallExpr::const_arg_iterator i = E->arg_begin(), e = E->arg_end();
-       i != e; ++i)
-    Args.push_back(std::make_pair(EmitAnyExprToTemp(*i),
-                                  i->getType()));
+  EmitCallArgs(Args, FnType->getAsFunctionProtoType(),
+               E->arg_begin(), E->arg_end());
 
   // Load the function.
   llvm::Value *Func = Builder.CreateLoad(FuncPtr, false, "tmp");
 
-  QualType FnType = BPT->getPointeeType();
   QualType ResultType = FnType->getAsFunctionType()->getResultType();
 
   const CGFunctionInfo &FnInfo = 

Modified: cfe/trunk/lib/CodeGen/CGCXX.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGCXX.cpp?rev=68652&r1=68651&r2=68652&view=diff

==============================================================================
--- cfe/trunk/lib/CodeGen/CGCXX.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGCXX.cpp Wed Apr  8 18:13:16 2009
@@ -166,9 +166,7 @@
   Args.push_back(std::make_pair(RValue::get(BaseValue), 
                                 MD->getThisType(getContext())));
   
-  for (CallExpr::const_arg_iterator I = CE->arg_begin(), E = CE->arg_end(); 
-       I != E; ++I)
-    Args.push_back(std::make_pair(EmitAnyExprToTemp(*I), I->getType()));
+  EmitCallArgs(Args, FPT, CE->arg_begin(), CE->arg_end());
   
   QualType ResultType = MD->getType()->getAsFunctionType()->getResultType();
   return EmitCall(CGM.getTypes().getFunctionInfo(ResultType, Args), 

Modified: cfe/trunk/lib/CodeGen/CGExpr.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGExpr.cpp?rev=68652&r1=68651&r2=68652&view=diff

==============================================================================
--- cfe/trunk/lib/CodeGen/CGExpr.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGExpr.cpp Wed Apr  8 18:13:16 2009
@@ -1214,9 +1214,7 @@
   QualType ResultType = FnType->getAsFunctionType()->getResultType();
 
   CallArgList Args;
-  for (CallExpr::const_arg_iterator I = ArgBeg; I != ArgEnd; ++I)
-    Args.push_back(std::make_pair(EmitAnyExprToTemp(*I), 
-                                  I->getType()));
+  EmitCallArgs(Args, FnType->getAsFunctionProtoType(), ArgBeg, ArgEnd);
 
   return EmitCall(CGM.getTypes().getFunctionInfo(ResultType, Args), 
                   Callee, Args, TargetDecl);

Modified: cfe/trunk/lib/CodeGen/CGObjC.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGObjC.cpp?rev=68652&r1=68651&r2=68652&view=diff

==============================================================================
--- cfe/trunk/lib/CodeGen/CGObjC.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGObjC.cpp Wed Apr  8 18:13:16 2009
@@ -79,6 +79,7 @@
     Receiver = EmitScalarExpr(E->getReceiver());
   }
 
+  // FIXME: This should use EmitCallArgs.
   CallArgList Args;
   for (CallExpr::const_arg_iterator i = E->arg_begin(), e = E->arg_end(); 
        i != e; ++i)





More information about the cfe-commits mailing list