diff options
Diffstat (limited to 'compiler/jit')
| -rw-r--r-- | compiler/jit/jit_compiler.cc | 12 | ||||
| -rw-r--r-- | compiler/jit/jit_compiler.h | 5 | ||||
| -rw-r--r-- | compiler/jit/jit_logger.cc | 2 | ||||
| -rw-r--r-- | compiler/jit/jit_logger.h | 4 |
4 files changed, 16 insertions, 7 deletions
diff --git a/compiler/jit/jit_compiler.cc b/compiler/jit/jit_compiler.cc index 7002636d4e..e67236769e 100644 --- a/compiler/jit/jit_compiler.cc +++ b/compiler/jit/jit_compiler.cc @@ -34,13 +34,17 @@ #include "jit/jit_code_cache.h" #include "jit/jit_logger.h" -namespace art { +namespace art HIDDEN { namespace jit { JitCompiler* JitCompiler::Create() { return new JitCompiler(); } +void JitCompiler::SetDebuggableCompilerOption(bool value) { + compiler_options_->SetDebuggable(value); +} + void JitCompiler::ParseCompilerOptions() { // Special case max code units for inlining, whose default is "unset" (implictly // meaning no limit). Do this before parsing the actual passed options. @@ -85,7 +89,7 @@ void JitCompiler::ParseCompilerOptions() { if (StartsWith(option, "--instruction-set-variant=")) { const char* str = option.c_str() + strlen("--instruction-set-variant="); VLOG(compiler) << "JIT instruction set variant " << str; - instruction_set_features = InstructionSetFeatures::FromVariant( + instruction_set_features = InstructionSetFeatures::FromVariantAndHwcap( instruction_set, str, &error_msg); if (instruction_set_features == nullptr) { LOG(WARNING) << "Error parsing " << option << " message=" << error_msg; @@ -121,7 +125,7 @@ void JitCompiler::ParseCompilerOptions() { } } -extern "C" JitCompilerInterface* jit_load() { +EXPORT extern "C" JitCompilerInterface* jit_load() { VLOG(jit) << "Create jit compiler"; auto* const jit_compiler = JitCompiler::Create(); CHECK(jit_compiler != nullptr); @@ -199,6 +203,8 @@ bool JitCompiler::CompileMethod( VLOG(jit) << "Compilation of " << method->PrettyMethod() << " took " << PrettyDuration(UsToNs(duration_us)); runtime->GetMetrics()->JitMethodCompileCount()->AddOne(); + runtime->GetMetrics()->JitMethodCompileTotalTimeDelta()->Add(duration_us); + runtime->GetMetrics()->JitMethodCompileCountDelta()->AddOne(); } // Trim maps to reduce memory usage. diff --git a/compiler/jit/jit_compiler.h b/compiler/jit/jit_compiler.h index 8e9966db0e..5a919fb612 100644 --- a/compiler/jit/jit_compiler.h +++ b/compiler/jit/jit_compiler.h @@ -17,12 +17,13 @@ #ifndef ART_COMPILER_JIT_JIT_COMPILER_H_ #define ART_COMPILER_JIT_JIT_COMPILER_H_ +#include "base/macros.h" #include "base/mutex.h" #include "compilation_kind.h" #include "jit/jit.h" -namespace art { +namespace art HIDDEN { class ArtMethod; class Compiler; @@ -50,6 +51,8 @@ class JitCompiler : public JitCompilerInterface { bool IsBaselineCompiler() const override; + void SetDebuggableCompilerOption(bool val) override; + bool GenerateDebugInfo() override; void ParseCompilerOptions() override; diff --git a/compiler/jit/jit_logger.cc b/compiler/jit/jit_logger.cc index 6b9453f525..32845260f3 100644 --- a/compiler/jit/jit_logger.cc +++ b/compiler/jit/jit_logger.cc @@ -24,7 +24,7 @@ #include "jit/jit_code_cache.h" #include "oat_file-inl.h" -namespace art { +namespace art HIDDEN { namespace jit { #ifdef ART_TARGET_ANDROID diff --git a/compiler/jit/jit_logger.h b/compiler/jit/jit_logger.h index f4ef75a5fe..9d1f3073fa 100644 --- a/compiler/jit/jit_logger.h +++ b/compiler/jit/jit_logger.h @@ -19,11 +19,11 @@ #include <memory> +#include "base/macros.h" #include "base/mutex.h" #include "base/os.h" -#include "compiled_method.h" -namespace art { +namespace art HIDDEN { class ArtMethod; |