summaryrefslogtreecommitdiff
path: root/compiler/optimizing/loop_optimization.cc
diff options
context:
space:
mode:
authorMingyao Yang <mingyao@google.com>2017-02-03 12:09:57 -0800
committerMingyao Yang <mingyao@google.com>2017-03-08 10:15:06 -0800
commit01b47b046b01ec68696f8ff61b5326cdd3af348e (patch)
treee526306fc89bf6fb04ff914e24343dde0369e98c /compiler/optimizing/loop_optimization.cc
parentdcab11d06860ae1e23d03926adb6c31f75404032 (diff)
Inlining a few small methods based on profiling dex2oat with perf.
Test: m test-art-host Change-Id: I6313158e59592d8d132154523be9c82dda3c7eb8
Diffstat (limited to 'compiler/optimizing/loop_optimization.cc')
-rw-r--r--compiler/optimizing/loop_optimization.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/optimizing/loop_optimization.cc b/compiler/optimizing/loop_optimization.cc
index 26c9ab83c2..bffda93d8f 100644
--- a/compiler/optimizing/loop_optimization.cc
+++ b/compiler/optimizing/loop_optimization.cc
@@ -69,7 +69,7 @@ HLoopOptimization::HLoopOptimization(HGraph* graph,
}
void HLoopOptimization::Run() {
- // Well-behaved loops only.
+ // Skip if there is no loop or the graph has try-catch/irreducible loops.
// TODO: make this less of a sledgehammer.
if (!graph_->HasLoops() || graph_->HasTryCatch() || graph_->HasIrreducibleLoops()) {
return;
@@ -85,6 +85,7 @@ void HLoopOptimization::Run() {
LocalRun();
if (top_loop_ == nullptr) {
+ // All loops have been eliminated.
graph_->SetHasLoops(false);
}