diff options
| author | Vladimir Marko <vmarko@google.com> | 2015-09-03 13:35:12 +0000 |
|---|---|---|
| committer | Vladimir Marko <vmarko@google.com> | 2015-09-08 18:09:49 +0100 |
| commit | 6058455d486219994921b63a2d774dc9908415a2 (patch) | |
| tree | 3d205227f3ff54cd3a50bc5c0e7cb3ad6c175b86 /compiler/optimizing/dead_code_elimination.cc | |
| parent | 637ee0b9c10ab7732a7ee7b8335f3fff4ac1549c (diff) | |
| download | art-6058455d486219994921b63a2d774dc9908415a2.tar.gz art-6058455d486219994921b63a2d774dc9908415a2.tar.bz2 art-6058455d486219994921b63a2d774dc9908415a2.zip | |
Optimizing: Tag basic block allocations with their source.
Replace GrowableArray with ArenaVector in HBasicBlock and,
to track the source of allocations, assign one new and two
Quick's arena allocation types to these vectors. Rename
kArenaAllocSuccessor to kArenaAllocSuccessors.
Bug: 23736311
Change-Id: Ib52e51698890675bde61f007fe6039338cf1a025
Diffstat (limited to 'compiler/optimizing/dead_code_elimination.cc')
| -rw-r--r-- | compiler/optimizing/dead_code_elimination.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/compiler/optimizing/dead_code_elimination.cc b/compiler/optimizing/dead_code_elimination.cc index 50cbf5ca77..509478cfad 100644 --- a/compiler/optimizing/dead_code_elimination.cc +++ b/compiler/optimizing/dead_code_elimination.cc @@ -42,8 +42,8 @@ static void MarkReachableBlocks(HBasicBlock* block, ArenaBitVector* visited) { MarkReachableBlocks(if_instruction->IfFalseSuccessor(), visited); } } else { - for (size_t i = 0, e = block->GetSuccessors().Size(); i < e; ++i) { - MarkReachableBlocks(block->GetSuccessors().Get(i), visited); + for (HBasicBlock* successor : block->GetSuccessors()) { + MarkReachableBlocks(successor, visited); } } } @@ -99,12 +99,12 @@ void HDeadCodeElimination::RemoveDeadBlocks() { // Connect successive blocks created by dead branches. Order does not matter. for (HReversePostOrderIterator it(*graph_); !it.Done();) { HBasicBlock* block = it.Current(); - if (block->IsEntryBlock() || block->GetSuccessors().Size() != 1u) { + if (block->IsEntryBlock() || block->GetSuccessors().size() != 1u) { it.Advance(); continue; } - HBasicBlock* successor = block->GetSuccessors().Get(0); - if (successor->IsExitBlock() || successor->GetPredecessors().Size() != 1u) { + HBasicBlock* successor = block->GetSuccessor(0); + if (successor->IsExitBlock() || successor->GetPredecessors().size() != 1u) { it.Advance(); continue; } |
