diff options
Diffstat (limited to 'runtime/runtime.cc')
| -rw-r--r-- | runtime/runtime.cc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/runtime/runtime.cc b/runtime/runtime.cc index 512e8b8253..96f41b3d62 100644 --- a/runtime/runtime.cc +++ b/runtime/runtime.cc @@ -60,6 +60,7 @@ #include "base/unix_file/fd_file.h" #include "class_linker-inl.h" #include "compiler_callbacks.h" +#include "compiler_filter.h" #include "debugger.h" #include "elf_file.h" #include "entrypoints/runtime_asm_entrypoints.h" @@ -959,6 +960,16 @@ bool Runtime::Init(RuntimeArgumentMap&& runtime_options_in) { experimental_flags_ = runtime_options.GetOrDefault(Opt::Experimental); is_low_memory_mode_ = runtime_options.Exists(Opt::LowMemoryMode); + { + CompilerFilter::Filter filter; + std::string filter_str = runtime_options.GetOrDefault(Opt::OatFileManagerCompilerFilter); + if (!CompilerFilter::ParseCompilerFilter(filter_str.c_str(), &filter)) { + LOG(ERROR) << "Cannot parse compiler filter " << filter_str; + return false; + } + OatFileManager::SetCompilerFilter(filter); + } + XGcOption xgc_option = runtime_options.GetOrDefault(Opt::GcOption); heap_ = new gc::Heap(runtime_options.GetOrDefault(Opt::MemoryInitialSize), runtime_options.GetOrDefault(Opt::HeapGrowthLimit), |