Keep global nodes in each DS Graph (by forcing them to be marked live).

llvm-svn: 4831
This commit is contained in:
Vikram S. Adve 2002-11-25 18:21:25 +00:00
parent 5014e38273
commit 68690673ad
1 changed files with 3 additions and 3 deletions

View File

@ -997,10 +997,10 @@ void DSGraph::removeDeadNodes() {
// Mark all nodes reachable by (non-global) scalar nodes as alive...
for (std::map<Value*, DSNodeHandle>::iterator I = ScalarMap.begin(),
E = ScalarMap.end(); I != E; ++I)
if (!isa<GlobalValue>(I->first)) // Don't mark globals!
// if (!isa<GlobalValue>(I->first)) // Don't mark globals!
markAlive(I->second.getNode(), Alive);
else // Keep track of global nodes
GlobalNodes.push_back(std::make_pair(I->first, I->second.getNode()));
// else // Keep track of global nodes
// GlobalNodes.push_back(std::make_pair(I->first, I->second.getNode()));
// The return value is alive as well...
markAlive(RetNode.getNode(), Alive);