diff options
Diffstat (limited to 'compiler')
-rw-r--r-- | compiler/common_compiler_test.cc | 2 | ||||
-rw-r--r-- | compiler/driver/compiler_driver.cc | 4 | ||||
-rw-r--r-- | compiler/driver/compiler_driver.h | 6 | ||||
-rw-r--r-- | compiler/oat_test.cc | 2 | ||||
-rw-r--r-- | compiler/optimizing/optimizing_compiler.cc | 5 |
5 files changed, 14 insertions, 5 deletions
diff --git a/compiler/common_compiler_test.cc b/compiler/common_compiler_test.cc index 7df71f5b8a..96f8e0c355 100644 --- a/compiler/common_compiler_test.cc +++ b/compiler/common_compiler_test.cc @@ -164,7 +164,7 @@ void CommonCompilerTest::SetUp() { compiler_kind, instruction_set, instruction_set_features_.get(), true, new std::set<std::string>, nullptr, - 2, true, true, timer_.get(), -1, "")); + 2, true, true, "", timer_.get(), -1, "")); } // We typically don't generate an image in unit tests, disable this optimization by default. compiler_driver_->SetSupportBootImageFixup(false); diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc index 9985d66469..e37180768a 100644 --- a/compiler/driver/compiler_driver.cc +++ b/compiler/driver/compiler_driver.cc @@ -339,7 +339,8 @@ CompilerDriver::CompilerDriver(const CompilerOptions* compiler_options, const InstructionSetFeatures* instruction_set_features, bool image, std::set<std::string>* image_classes, std::set<std::string>* compiled_classes, size_t thread_count, - bool dump_stats, bool dump_passes, CumulativeLogger* timer, + bool dump_stats, bool dump_passes, + const std::string& dump_cfg_file_name, CumulativeLogger* timer, int swap_fd, const std::string& profile_file) : swap_space_(swap_fd == -1 ? nullptr : new SwapSpace(swap_fd, 10 * MB)), swap_space_allocator_(new SwapAllocator<void>(swap_space_.get())), @@ -361,6 +362,7 @@ CompilerDriver::CompilerDriver(const CompilerOptions* compiler_options, stats_(new AOTCompilationStats), dump_stats_(dump_stats), dump_passes_(dump_passes), + dump_cfg_file_name_(dump_cfg_file_name), timings_logger_(timer), compiler_context_(nullptr), support_boot_image_fixup_(instruction_set != kMips), diff --git a/compiler/driver/compiler_driver.h b/compiler/driver/compiler_driver.h index 7ddc32cdd8..11b4329e32 100644 --- a/compiler/driver/compiler_driver.h +++ b/compiler/driver/compiler_driver.h @@ -97,6 +97,7 @@ class CompilerDriver { bool image, std::set<std::string>* image_classes, std::set<std::string>* compiled_classes, size_t thread_count, bool dump_stats, bool dump_passes, + const std::string& dump_cfg_file_name, CumulativeLogger* timer, int swap_fd, const std::string& profile_file); @@ -371,6 +372,10 @@ class CompilerDriver { return dump_passes_; } + const std::string& GetDumpCfgFileName() const { + return dump_cfg_file_name_; + } + CumulativeLogger* GetTimingsLogger() const { return timings_logger_; } @@ -542,6 +547,7 @@ class CompilerDriver { bool dump_stats_; const bool dump_passes_; + const std::string& dump_cfg_file_name_; CumulativeLogger* const timings_logger_; diff --git a/compiler/oat_test.cc b/compiler/oat_test.cc index d14153872b..6770e56a77 100644 --- a/compiler/oat_test.cc +++ b/compiler/oat_test.cc @@ -92,7 +92,7 @@ TEST_F(OatTest, WriteRead) { method_inliner_map_.get(), compiler_kind, insn_set, insn_features.get(), false, nullptr, nullptr, 2, true, - true, timer_.get(), -1, "")); + true, "", timer_.get(), -1, "")); jobject class_loader = nullptr; if (kCompile) { TimingLogger timings2("OatTest::WriteRead", false, false); diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc index 692d452f54..eaecbb04ae 100644 --- a/compiler/optimizing/optimizing_compiler.cc +++ b/compiler/optimizing/optimizing_compiler.cc @@ -149,11 +149,12 @@ void OptimizingCompiler::Init() { // Enable C1visualizer output. Must be done in Init() because the compiler // driver is not fully initialized when passed to the compiler's constructor. CompilerDriver* driver = GetCompilerDriver(); - if (driver->GetDumpPasses()) { + const std::string cfg_file_name = driver->GetDumpCfgFileName(); + if (!cfg_file_name.empty()) { CHECK_EQ(driver->GetThreadCount(), 1U) << "Graph visualizer requires the compiler to run single-threaded. " << "Invoke the compiler with '-j1'."; - visualizer_output_.reset(new std::ofstream("art.cfg")); + visualizer_output_.reset(new std::ofstream(cfg_file_name)); } } |