diff options
author | 2016-10-27 15:44:54 +0000 | |
---|---|---|
committer | 2016-10-27 15:44:55 +0000 | |
commit | 384cb6674b967a9c58da9ad70fd6f98caa1d8691 (patch) | |
tree | b75a3309609ebbcd0d9d8d8b4297db82e80e988a /compiler/optimizing/ssa_phi_elimination.cc | |
parent | a908348b4388854dab0b655b55dbeac1ecec2949 (diff) | |
parent | 2c45bc9137c29f886e69923535aff31a74d90829 (diff) |
Merge "Remove H[Reverse]PostOrderIterator and HInsertionOrderIterator."
Diffstat (limited to 'compiler/optimizing/ssa_phi_elimination.cc')
-rw-r--r-- | compiler/optimizing/ssa_phi_elimination.cc | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/compiler/optimizing/ssa_phi_elimination.cc b/compiler/optimizing/ssa_phi_elimination.cc index b1ec99ab8e..aec7a3c555 100644 --- a/compiler/optimizing/ssa_phi_elimination.cc +++ b/compiler/optimizing/ssa_phi_elimination.cc @@ -34,8 +34,7 @@ void SsaDeadPhiElimination::MarkDeadPhis() { ArenaSet<HPhi*> initially_live(graph_->GetArena()->Adapter(kArenaAllocSsaPhiElimination)); // Add to the worklist phis referenced by non-phi instructions. - for (HReversePostOrderIterator it(*graph_); !it.Done(); it.Advance()) { - HBasicBlock* block = it.Current(); + for (HBasicBlock* block : graph_->GetReversePostOrder()) { for (HInstructionIterator inst_it(block->GetPhis()); !inst_it.Done(); inst_it.Advance()) { HPhi* phi = inst_it.Current()->AsPhi(); if (phi->IsDead()) { @@ -84,8 +83,7 @@ void SsaDeadPhiElimination::EliminateDeadPhis() { // Remove phis that are not live. Visit in post order so that phis // that are not inputs of loop phis can be removed when they have // no users left (dead phis might use dead phis). - for (HPostOrderIterator it(*graph_); !it.Done(); it.Advance()) { - HBasicBlock* block = it.Current(); + for (HBasicBlock* block : graph_->GetPostOrder()) { HInstruction* current = block->GetFirstPhi(); HInstruction* next = nullptr; HPhi* phi; @@ -119,8 +117,7 @@ void SsaDeadPhiElimination::EliminateDeadPhis() { void SsaRedundantPhiElimination::Run() { // Add all phis in the worklist. Order does not matter for correctness, and // neither will necessarily converge faster. - for (HReversePostOrderIterator it(*graph_); !it.Done(); it.Advance()) { - HBasicBlock* block = it.Current(); + for (HBasicBlock* block : graph_->GetReversePostOrder()) { for (HInstructionIterator inst_it(block->GetPhis()); !inst_it.Done(); inst_it.Advance()) { worklist_.push_back(inst_it.Current()->AsPhi()); } |