Handle baseline/optimized compilation kind in the runtime.
It used to be adjusted in the compiler, but that does not work anymore
as the compiler now always requests a baseline compilation to have a
profiling info.
Test: 457-regs
Bug: 146423102
Change-Id: I522bc515ef1c6f8737ada311265a6f8e0f4db3fd
diff --git a/compiler/jit/jit_compiler.cc b/compiler/jit/jit_compiler.cc
index f819cd8..44a4283 100644
--- a/compiler/jit/jit_compiler.cc
+++ b/compiler/jit/jit_compiler.cc
@@ -208,5 +208,9 @@
return success;
}
+bool JitCompiler::IsBaselineCompiler() const {
+ return compiler_options_->IsBaseline();
+}
+
} // namespace jit
} // namespace art
diff --git a/compiler/jit/jit_compiler.h b/compiler/jit/jit_compiler.h
index 9dd84f0..8e9966d 100644
--- a/compiler/jit/jit_compiler.h
+++ b/compiler/jit/jit_compiler.h
@@ -48,6 +48,8 @@
return *compiler_options_.get();
}
+ bool IsBaselineCompiler() const override;
+
bool GenerateDebugInfo() override;
void ParseCompilerOptions() override;
diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc
index 10b59d2..18e0512 100644
--- a/compiler/optimizing/optimizing_compiler.cc
+++ b/compiler/optimizing/optimizing_compiler.cc
@@ -1213,11 +1213,6 @@
CompilationKind compilation_kind,
jit::JitLogger* jit_logger) {
const CompilerOptions& compiler_options = GetCompilerOptions();
- // If the baseline flag was explicitly passed, change the compilation kind
- // from optimized to baseline.
- if (compiler_options.IsBaseline() && compilation_kind == CompilationKind::kOptimized) {
- compilation_kind = CompilationKind::kBaseline;
- }
DCHECK(compiler_options.IsJitCompiler());
DCHECK_EQ(compiler_options.IsJitCompilerForSharedCode(), code_cache->IsSharedRegion(*region));
StackHandleScope<3> hs(self);