aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/SimplifyInstructions.cpp
diff options
context:
space:
mode:
authorDuncan Sands <baldrick@free.fr>2010-12-31 16:17:54 +0000
committerDuncan Sands <baldrick@free.fr>2010-12-31 16:17:54 +0000
commit6cc7126ed9c53339098766b40044463f70f7ce00 (patch)
treecc0e05324983cda8139905442caa90bdec89aec3 /llvm/lib/Transforms/Utils/SimplifyInstructions.cpp
parent687aaf07cca21b12de6edb3ccb2022dc55453d39 (diff)
downloadllvm-6cc7126ed9c53339098766b40044463f70f7ce00.zip
llvm-6cc7126ed9c53339098766b40044463f70f7ce00.tar.gz
llvm-6cc7126ed9c53339098766b40044463f70f7ce00.tar.bz2
Zap dead instructions harder.
llvm-svn: 122645
Diffstat (limited to 'llvm/lib/Transforms/Utils/SimplifyInstructions.cpp')
-rw-r--r--llvm/lib/Transforms/Utils/SimplifyInstructions.cpp9
1 files changed, 2 insertions, 7 deletions
diff --git a/llvm/lib/Transforms/Utils/SimplifyInstructions.cpp b/llvm/lib/Transforms/Utils/SimplifyInstructions.cpp
index 4e00784..4205622 100644
--- a/llvm/lib/Transforms/Utils/SimplifyInstructions.cpp
+++ b/llvm/lib/Transforms/Utils/SimplifyInstructions.cpp
@@ -83,13 +83,8 @@ namespace {
// Finally, run over the function zapping any dead instructions.
for (Function::iterator BB = F.begin(), E = F.end(); BB != E; ++BB)
- for (BasicBlock::iterator BI = BB->begin(), BE = BB->end(); BI != BE;) {
- Instruction *I = BI++;
- if (isInstructionTriviallyDead(I)) {
- I->eraseFromParent();
- Changed = true;
- }
- }
+ for (BasicBlock::iterator BI = BB->begin(), BE = BB->end(); BI != BE;)
+ Changed |= RecursivelyDeleteTriviallyDeadInstructions(BI++);
return Changed;
}