summaryrefslogtreecommitdiff
path: root/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
commitfea0b8b66604439aebf7e2b0f850ef5b7b0a6ed9 (patch)
treef36f0ff9c319ab90ae8bfa39e23f110f3a1f80d8 /lib/Transforms/Utils/SimplifyInstructions.cpp
parent19282365147f498a60463d250dbed2f8e1b81861 (diff)
downloadllvm-fea0b8b66604439aebf7e2b0f850ef5b7b0a6ed9.tar.gz
llvm-fea0b8b66604439aebf7e2b0f850ef5b7b0a6ed9.tar.bz2
llvm-fea0b8b66604439aebf7e2b0f850ef5b7b0a6ed9.tar.xz
Zap dead instructions harder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122645 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Utils/SimplifyInstructions.cpp')
-rw-r--r--lib/Transforms/Utils/SimplifyInstructions.cpp9
1 files changed, 2 insertions, 7 deletions
diff --git a/lib/Transforms/Utils/SimplifyInstructions.cpp b/lib/Transforms/Utils/SimplifyInstructions.cpp
index 4e0078425b..4205622037 100644
--- a/lib/Transforms/Utils/SimplifyInstructions.cpp
+++ b/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;
}