[llvm-commits] [llvm] r54464 - /llvm/trunk/lib/Transforms/IPO/StructRetPromotion.cpp

Matthijs Kooijman matthijs at stdin.nl
Thu Aug 7 08:14:06 PDT 2008


Author: matthijs
Date: Thu Aug  7 10:14:04 2008
New Revision: 54464

URL: http://llvm.org/viewvc/llvm-project?rev=54464&view=rev
Log:
Add some debug output to SRETPromotion.

Modified:
    llvm/trunk/lib/Transforms/IPO/StructRetPromotion.cpp

Modified: llvm/trunk/lib/Transforms/IPO/StructRetPromotion.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/IPO/StructRetPromotion.cpp?rev=54464&r1=54463&r2=54464&view=diff

==============================================================================
--- llvm/trunk/lib/Transforms/IPO/StructRetPromotion.cpp (original)
+++ llvm/trunk/lib/Transforms/IPO/StructRetPromotion.cpp Thu Aug  7 10:14:04 2008
@@ -89,6 +89,8 @@
   if (F->arg_size() == 0 || !F->hasStructRetAttr() || F->doesNotReturn())
     return false;
 
+  DOUT << "SretPromotion: Looking at sret function " << F->getNameStart() << "\n";
+
   assert (F->getReturnType() == Type::VoidTy && "Invalid function return type");
   Function::arg_iterator AI = F->arg_begin();
   const llvm::PointerType *FArgType = dyn_cast<PointerType>(AI->getType());
@@ -99,10 +101,12 @@
 
   // Check if it is ok to perform this promotion.
   if (isSafeToUpdateAllCallers(F) == false) {
+    DOUT << "SretPromotion: Not all callers can be updated\n";
     NumRejectedSRETUses++;
     return false;
   }
 
+  DOUT << "SretPromotion: sret argument will be promoted\n";
   NumSRET++;
   // [1] Replace use of sret parameter 
   AllocaInst *TheAlloca = new AllocaInst (STy, NULL, "mrv", 





More information about the llvm-commits mailing list