Make the BU closure keep track of which actual calls happen

Minor cleanups


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7059 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2003-07-02 04:37:48 +00:00
parent 3051419036
commit 744f93996e

View File

@ -173,6 +173,9 @@ unsigned BUDataStructures::calculateGraphs(Function *F,
}
}
// Clean up the graph before we start inlining a bunch again...
SCCGraph->removeTriviallyDeadNodes();
// Now that we have one big happy family, resolve all of the call sites in
// the graph...
calculateGraph(*SCCGraph);
@ -232,8 +235,7 @@ void BUDataStructures::calculateGraph(DSGraph &Graph) {
// Resolve the current call...
Function *Callee = *I;
const DSCallSite &CS = I.getCallSite();
ActualCallees.insert(std::make_pair(&CS.getCallInst(), Callee));
DSCallSite CS = I.getCallSite();
if (Callee->isExternal()) {
// Ignore this case, simple varargs functions we cannot stub out!
@ -246,6 +248,8 @@ void BUDataStructures::calculateGraph(DSGraph &Graph) {
Graph.mergeInGraph(CS, *Callee, Graph, 0);
} else {
ActualCallees.insert(std::make_pair(&CS.getCallInst(), Callee));
// Get the data structure graph for the called function.
//
DSGraph &GI = getDSGraph(*Callee); // Graph to inline