summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
diff options
context:
space:
mode:
authorBrian M. Rzycki <brzycki@gmail.com>2017-12-13 22:01:17 +0000
committerBrian M. Rzycki <brzycki@gmail.com>2017-12-13 22:01:17 +0000
commit580bc3c8fa1e01991e41174d513ab600f9015c51 (patch)
tree57406d9d75f1c5ae80e8043fd55840f7928bff3c /llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
parent3c7a35de7fbc0a73505545cd9f68a3bbacb68e57 (diff)
downloadbcm5719-llvm-580bc3c8fa1e01991e41174d513ab600f9015c51.tar.gz
bcm5719-llvm-580bc3c8fa1e01991e41174d513ab600f9015c51.zip
Reverting [JumpThreading] Preservation of DT and LVI across the pass
Stage 2 bootstrap failed: http://lab.llvm.org:8011/builders/clang-x86_64-linux-selfhost-modules-2/builds/14434 llvm-svn: 320641
Diffstat (limited to 'llvm/lib/Transforms/Utils/BasicBlockUtils.cpp')
-rw-r--r--llvm/lib/Transforms/Utils/BasicBlockUtils.cpp18
1 files changed, 4 insertions, 14 deletions
diff --git a/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp b/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
index a44746d040e..606bd8bacca 100644
--- a/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
+++ b/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
@@ -45,22 +45,16 @@
using namespace llvm;
-void llvm::DeleteDeadBlock(BasicBlock *BB, DeferredDominance *DDT) {
+void llvm::DeleteDeadBlock(BasicBlock *BB) {
assert((pred_begin(BB) == pred_end(BB) ||
// Can delete self loop.
BB->getSinglePredecessor() == BB) && "Block is not dead!");
TerminatorInst *BBTerm = BB->getTerminator();
- std::vector<DominatorTree::UpdateType> Updates;
// Loop through all of our successors and make sure they know that one
// of their predecessors is going away.
- if (DDT)
- Updates.reserve(BBTerm->getNumSuccessors());
- for (BasicBlock *Succ : BBTerm->successors()) {
+ for (BasicBlock *Succ : BBTerm->successors())
Succ->removePredecessor(BB);
- if (DDT)
- Updates.push_back({DominatorTree::Delete, BB, Succ});
- }
// Zap all the instructions in the block.
while (!BB->empty()) {
@@ -75,12 +69,8 @@ void llvm::DeleteDeadBlock(BasicBlock *BB, DeferredDominance *DDT) {
BB->getInstList().pop_back();
}
- if (DDT) {
- DDT->applyUpdates(Updates);
- DDT->deleteBB(BB); // Deferred deletion of BB.
- } else {
- BB->eraseFromParent(); // Zap the block!
- }
+ // Zap the block!
+ BB->eraseFromParent();
}
void llvm::FoldSingleEntryPHINodes(BasicBlock *BB,
OpenPOWER on IntegriCloud