forked from OSchip/llvm-project
Ooops, I did such a great job pruning nodes, that I accidentally deleted
ALL allocation nodes... hrm... bad. llvm-svn: 2018
This commit is contained in:
parent
674ff853b9
commit
8a5c470c59
|
@ -152,7 +152,7 @@ static inline void MarkReferredNodeSetReachable(const PointerValSet &PVS,
|
||||||
vector<AllocDSNode*> &AllocNodes,
|
vector<AllocDSNode*> &AllocNodes,
|
||||||
vector<bool> &ReachableAllocNodes) {
|
vector<bool> &ReachableAllocNodes) {
|
||||||
for (unsigned i = 0, e = PVS.size(); i != e; ++i)
|
for (unsigned i = 0, e = PVS.size(); i != e; ++i)
|
||||||
if (isa<ShadowDSNode>(PVS[i].Node) || isa<ShadowDSNode>(PVS[i].Node))
|
if (isa<ShadowDSNode>(PVS[i].Node) || isa<AllocDSNode>(PVS[i].Node))
|
||||||
MarkReferredNodesReachable(PVS[i].Node, ShadowNodes, ReachableShadowNodes,
|
MarkReferredNodesReachable(PVS[i].Node, ShadowNodes, ReachableShadowNodes,
|
||||||
AllocNodes, ReachableAllocNodes);
|
AllocNodes, ReachableAllocNodes);
|
||||||
}
|
}
|
||||||
|
@ -194,6 +194,7 @@ static void MarkReferredNodesReachable(DSNode *N,
|
||||||
|
|
||||||
bool FunctionDSGraph::RemoveUnreachableShadowNodes() {
|
bool FunctionDSGraph::RemoveUnreachableShadowNodes() {
|
||||||
bool Changed = false;
|
bool Changed = false;
|
||||||
|
|
||||||
while (1) {
|
while (1) {
|
||||||
// Reachable*Nodes - Contains true if there is an edge from a reachable
|
// Reachable*Nodes - Contains true if there is an edge from a reachable
|
||||||
// node to the numbered node...
|
// node to the numbered node...
|
||||||
|
|
Loading…
Reference in New Issue