summaryrefslogtreecommitdiff
path: root/compiler/optimizing/loop_optimization.cc
diff options
context:
space:
mode:
authorMingyao Yang <mingyao@google.com>2017-03-08 20:29:49 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2017-03-08 20:29:51 +0000
commitcaa348cee1312150a957bd308ce77ad406f3eb64 (patch)
tree575f0b062f8adb1b8fc7ebc5f6ef18bea5ae1db7 /compiler/optimizing/loop_optimization.cc
parentc02fe5f31d487765a8c59922c46d459ba6ebf939 (diff)
parent01b47b046b01ec68696f8ff61b5326cdd3af348e (diff)
Merge "Inlining a few small methods based on profiling dex2oat with perf."
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 318d83bf40..8df513f410 100644
--- a/compiler/optimizing/loop_optimization.cc
+++ b/compiler/optimizing/loop_optimization.cc
@@ -72,7 +72,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;
@@ -88,6 +88,7 @@ void HLoopOptimization::Run() {
LocalRun();
if (top_loop_ == nullptr) {
+ // All loops have been eliminated.
graph_->SetHasLoops(false);
}