diff options
author | Chris Lattner <sabre@nondot.org> | 2003-09-20 16:34:13 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2003-09-20 16:34:13 +0000 |
commit | 808a7aeec77e79ad236614a578b1bb758ce796ab (patch) | |
tree | 97f4e36e707c16b9b64ffc36c2acd3f1e6796f51 /lib/Analysis/DataStructure/TopDownClosure.cpp | |
parent | 192cd9cccd3eb2c030c3a25d636d90b69841868e (diff) |
Switch from using CallInst's to represent call sites to using the LLVM
CallSite class. Now we can represent function calls by invoke instructions
too!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8629 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/DataStructure/TopDownClosure.cpp')
-rw-r--r-- | lib/Analysis/DataStructure/TopDownClosure.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/Analysis/DataStructure/TopDownClosure.cpp b/lib/Analysis/DataStructure/TopDownClosure.cpp index 92a03ee2f4..13535e3f80 100644 --- a/lib/Analysis/DataStructure/TopDownClosure.cpp +++ b/lib/Analysis/DataStructure/TopDownClosure.cpp @@ -96,9 +96,10 @@ void TDDataStructures::ComputePostOrder(Function &F,hash_set<DSGraph*> &Visited, const std::vector<DSCallSite> &FunctionCalls = G.getFunctionCalls(); for (unsigned i = 0, e = FunctionCalls.size(); i != e; ++i) { + Instruction *CallI = FunctionCalls[i].getCallSite().getInstruction(); std::pair<BUDataStructures::ActualCalleesTy::const_iterator, BUDataStructures::ActualCalleesTy::const_iterator> - IP = ActualCallees.equal_range(&FunctionCalls[i].getCallInst()); + IP = ActualCallees.equal_range(CallI); for (BUDataStructures::ActualCalleesTy::const_iterator I = IP.first; I != IP.second; ++I) @@ -191,10 +192,11 @@ void TDDataStructures::inlineGraphIntoCallees(DSGraph &Graph) { // Clone and merge the reachable subgraph from the call into callee's graph. // for (unsigned i = 0, e = FunctionCalls.size(); i != e; ++i) { + Instruction *CallI = FunctionCalls[i].getCallSite().getInstruction(); // For each function in the invoked function list at this call site... std::pair<BUDataStructures::ActualCalleesTy::const_iterator, BUDataStructures::ActualCalleesTy::const_iterator> - IP = ActualCallees.equal_range(&FunctionCalls[i].getCallInst()); + IP = ActualCallees.equal_range(CallI); // Multiple callees may have the same graph, so try to inline and merge // only once for each <callSite,calleeGraph> pair, not once for each |