mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-01 00:25:01 +00:00
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
42ebbcbaf7
commit
fa67ad938c
@ -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
Block a user