diff options
author | Nicolas Geoffray <ngeoffray@google.com> | 2019-08-07 10:41:09 +0100 |
---|---|---|
committer | Nicolas Geoffray <ngeoffray@google.com> | 2019-08-07 15:49:47 +0000 |
commit | 7cfc8f5b2a7c1af68de5f2e79652cf55954794dc (patch) | |
tree | bef388a5083ed2b9cf497cd6689489828f2ae13e /compiler/optimizing/optimizing_compiler.cc | |
parent | 70b93ffca22d665db661a7f15f2f1b59dc60839a (diff) |
Don't compile OSR methods that have phi equivalents at loop entry.
We currently don't handle this in the stack map, where we only encode
one stack slot for a dex register.
Bug: 136698025
Test: 721-osr
Change-Id: Ib395ed1165387ad5446a463c307cc0a45e365885
Diffstat (limited to 'compiler/optimizing/optimizing_compiler.cc')
-rw-r--r-- | compiler/optimizing/optimizing_compiler.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc index 6f3b9feb9d..b1a3abee2f 100644 --- a/compiler/optimizing/optimizing_compiler.cc +++ b/compiler/optimizing/optimizing_compiler.cc @@ -914,6 +914,11 @@ CodeGenerator* OptimizingCompiler::TryCompile(ArenaAllocator* allocator, MethodCompilationStat::kNotCompiledIrreducibleLoopAndStringInit); break; } + case kAnalysisFailPhiEquivalentInOsr: { + MaybeRecordStat(compilation_stats_.get(), + MethodCompilationStat::kNotCompiledPhiEquivalentInOsr); + break; + } case kAnalysisSuccess: UNREACHABLE(); } |