diff options
author | Nicolas Geoffray <ngeoffray@google.com> | 2014-02-28 10:23:58 +0000 |
---|---|---|
committer | Nicolas Geoffray <ngeoffray@google.com> | 2014-03-04 16:19:11 +0000 |
commit | d4dd255db1d110ceb5551f6d95ff31fb57420994 (patch) | |
tree | 93c9dfff8d16f2b9675c35477cc4bcd8ea3f630c /compiler/optimizing/nodes.cc | |
parent | b565506a63e75dac4a8bb9dd54dabf5259e5b95f (diff) | |
download | art-d4dd255db1d110ceb5551f6d95ff31fb57420994.zip art-d4dd255db1d110ceb5551f6d95ff31fb57420994.tar.gz art-d4dd255db1d110ceb5551f6d95ff31fb57420994.tar.bz2 |
Add codegen support to the optimizing compiler.
Change-Id: I9aae76908ff1d6e64fb71a6718fc1426b67a5c28
Diffstat (limited to 'compiler/optimizing/nodes.cc')
-rw-r--r-- | compiler/optimizing/nodes.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/compiler/optimizing/nodes.cc b/compiler/optimizing/nodes.cc index 9ec8e89..aefb089 100644 --- a/compiler/optimizing/nodes.cc +++ b/compiler/optimizing/nodes.cc @@ -26,7 +26,7 @@ void HGraph::AddBlock(HBasicBlock* block) { void HGraph::FindBackEdges(ArenaBitVector* visited) const { ArenaBitVector visiting(arena_, blocks_.Size(), false); - VisitBlockForBackEdges(GetEntryBlock(), visited, &visiting); + VisitBlockForBackEdges(entry_block_, visited, &visiting); } void HGraph::RemoveDeadBlocks(const ArenaBitVector& visited) const { @@ -75,10 +75,9 @@ void HGraph::BuildDominatorTree() { // have been processed. GrowableArray<size_t> visits(arena_, blocks_.Size()); visits.SetSize(blocks_.Size()); - HBasicBlock* entry = GetEntryBlock(); - dominator_order_.Add(entry); - for (size_t i = 0; i < entry->successors()->Size(); i++) { - VisitBlockForDominatorTree(entry->successors()->Get(i), entry, &visits); + dominator_order_.Add(entry_block_); + for (size_t i = 0; i < entry_block_->successors()->Size(); i++) { + VisitBlockForDominatorTree(entry_block_->successors()->Get(i), entry_block_, &visits); } } @@ -122,6 +121,7 @@ void HGraph::VisitBlockForDominatorTree(HBasicBlock* block, } void HBasicBlock::AddInstruction(HInstruction* instruction) { + instruction->set_block(this); if (first_instruction_ == nullptr) { DCHECK(last_instruction_ == nullptr); first_instruction_ = last_instruction_ = instruction; |