diff options
| author | 2018-11-21 22:25:21 +0000 | |
|---|---|---|
| committer | 2018-11-21 22:25:21 +0000 | |
| commit | f759dc027507d0092a49d9ec146dc37ca4534dd4 (patch) | |
| tree | b500f8a4724876b45b9ea49676defd1152c5ac84 /compiler/driver/compiler_options.h | |
| parent | 5a78e8dbf068c544b84e98f636b30045b09451c4 (diff) | |
| parent | 5c803116e26ef40ad2a9c14d3411e21d149e0c9b (diff) | |
Merge "ART: Add profile-compile-check support"
Diffstat (limited to 'compiler/driver/compiler_options.h')
| -rw-r--r-- | compiler/driver/compiler_options.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/compiler/driver/compiler_options.h b/compiler/driver/compiler_options.h index 12fa251606..f0970a9e0d 100644 --- a/compiler/driver/compiler_options.h +++ b/compiler/driver/compiler_options.h @@ -44,6 +44,13 @@ enum class InstructionSet; class InstructionSetFeatures; class ProfileCompilationInfo; +// Enum for CheckProfileMethodsCompiled. Outside CompilerOptions so it can be forward-declared. +enum class ProfileMethodsCheck : uint8_t { + kNone, + kLog, + kAbort, +}; + class CompilerOptions final { public: // Guide heuristics to determine whether to compile method if profile data not available. @@ -324,6 +331,10 @@ class CompilerOptions final { return resolve_startup_const_strings_; } + ProfileMethodsCheck CheckProfiledMethodsCompiled() const { + return check_profiled_methods_; + } + private: bool ParseDumpInitFailures(const std::string& option, std::string* error_msg); void ParseDumpCfgPasses(const StringPiece& option, UsageFn Usage); @@ -409,6 +420,10 @@ class CompilerOptions final { // profile. bool resolve_startup_const_strings_; + // When running profile-guided compilation, check that methods intended to be compiled end + // up compiled and are not punted. + ProfileMethodsCheck check_profiled_methods_; + RegisterAllocator::Strategy register_allocation_strategy_; // If not null, specifies optimization passes which will be run instead of defaults. |