[llvm-commits] CVS: llvm-poolalloc/lib/PoolAllocate/TransformFunctionBody.cpp

Andrew Lenharth alenhar2 at cs.uiuc.edu
Fri Mar 31 14:28:04 PST 2006



Changes in directory llvm-poolalloc/lib/PoolAllocate:

TransformFunctionBody.cpp updated: 1.50 -> 1.51
---
Log message:

fall back on the complete call graph to get indirect targets if needed

---
Diffs of the changes:  (+9 -0)

 TransformFunctionBody.cpp |    9 +++++++++
 1 files changed, 9 insertions(+)


Index: llvm-poolalloc/lib/PoolAllocate/TransformFunctionBody.cpp
diff -u llvm-poolalloc/lib/PoolAllocate/TransformFunctionBody.cpp:1.50 llvm-poolalloc/lib/PoolAllocate/TransformFunctionBody.cpp:1.51
--- llvm-poolalloc/lib/PoolAllocate/TransformFunctionBody.cpp:1.50	Wed Jan 25 16:07:36 2006
+++ llvm-poolalloc/lib/PoolAllocate/TransformFunctionBody.cpp	Fri Mar 31 16:27:40 2006
@@ -509,6 +509,15 @@
       ECGraphs.getSomeCalleeForCallSite(cast<CallInst>(OrigInst)) :
       ECGraphs.getSomeCalleeForCallSite(cast<InvokeInst>(OrigInst));
 
+    if (!CF) 
+      for (EquivClassGraphs::callee_iterator I = ECGraphs.callee_begin(OrigInst), 
+	     E = ECGraphs.callee_end(OrigInst); I != E; ++I)
+	if (I->second) {
+	  CF = I->second;
+	  break;
+	}
+        
+
     if (!CF) {
       // FIXME: Unknown callees for a call-site. Warn and ignore.
       std::cerr << "\n***\n*** WARNING (FuncTransform::visitCallSite): "






More information about the llvm-commits mailing list