[llvm-commits] [poolalloc] r117654 - /poolalloc/trunk/lib/PoolAllocate/PoolAllocate.cpp
John Criswell
criswell at uiuc.edu
Fri Oct 29 09:02:42 PDT 2010
Author: criswell
Date: Fri Oct 29 11:02:42 2010
New Revision: 117654
URL: http://llvm.org/viewvc/llvm-project?rev=117654&view=rev
Log:
Do not add a DSNode to a DenseSet before trying to find DSNodes reachable from
it; this causes DSNode::markReachableNodes() to think it has visited the root
DSNode, and it never does the reachablility search.
This change fixes em3d and other programs which suffered pool mismatch errors
caused by poolalloc creating a local pool for a pool that was passed in.
Modified:
poolalloc/trunk/lib/PoolAllocate/PoolAllocate.cpp
Modified: poolalloc/trunk/lib/PoolAllocate/PoolAllocate.cpp
URL: http://llvm.org/viewvc/llvm-project/poolalloc/trunk/lib/PoolAllocate/PoolAllocate.cpp?rev=117654&r1=117653&r2=117654&view=diff
==============================================================================
--- poolalloc/trunk/lib/PoolAllocate/PoolAllocate.cpp (original)
+++ poolalloc/trunk/lib/PoolAllocate/PoolAllocate.cpp Fri Oct 29 11:02:42 2010
@@ -752,7 +752,6 @@
DenseSet<const DSNode*> MarkedNodes;
for (unsigned index = 0; index < RootNodes.size(); ++index) {
if (DSNode * N = RootNodes[index].getNode()) {
- MarkedNodes.insert (N);
N->markReachableNodes(MarkedNodes);
}
}
More information about the llvm-commits
mailing list