aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Transforms/Scalar/LoopIndexSplit.cpp
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2009-03-25 23:57:48 +0000
committerDevang Patel <dpatel@apple.com>2009-03-25 23:57:48 +0000
commitf29fbf114fafbd2f16409d4d273a471802a83f42 (patch)
tree6adfb2dd1e8a83e6c858a6e10f13483a3d6f9fab /lib/Transforms/Scalar/LoopIndexSplit.cpp
parent96aa205e94d936ff3b65900b8a76377c9190f050 (diff)
downloadexternal_llvm-f29fbf114fafbd2f16409d4d273a471802a83f42.zip
external_llvm-f29fbf114fafbd2f16409d4d273a471802a83f42.tar.gz
external_llvm-f29fbf114fafbd2f16409d4d273a471802a83f42.tar.bz2
Before deleting a basic block, give other loop passes a chance cleanup analysis values, related to the instructions in the basic block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67719 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Scalar/LoopIndexSplit.cpp')
-rw-r--r--lib/Transforms/Scalar/LoopIndexSplit.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Transforms/Scalar/LoopIndexSplit.cpp b/lib/Transforms/Scalar/LoopIndexSplit.cpp
index e93d448..98e5cc1 100644
--- a/lib/Transforms/Scalar/LoopIndexSplit.cpp
+++ b/lib/Transforms/Scalar/LoopIndexSplit.cpp
@@ -673,6 +673,7 @@ void LoopIndexSplit::removeBlocks(BasicBlock *DeadBB, Loop *LP,
while (!WorkList.empty()) {
BasicBlock *BB = WorkList.back(); WorkList.pop_back();
+ LPM->deleteSimpleAnalysisValue(BB, LP);
for(BasicBlock::iterator BBI = BB->begin(), BBE = BB->end();
BBI != BBE; ) {
Instruction *I = BBI;
@@ -680,7 +681,6 @@ void LoopIndexSplit::removeBlocks(BasicBlock *DeadBB, Loop *LP,
I->replaceAllUsesWith(UndefValue::get(I->getType()));
I->eraseFromParent();
}
- LPM->deleteSimpleAnalysisValue(BB, LP);
DT->eraseNode(BB);
DF->removeBlock(BB);
LI->removeBlock(BB);