From f5307a31f5b67f6184cbb7e8b7fab61be3725fce Mon Sep 17 00:00:00 2001 From: Santiago Aboy Solanes Date: Mon, 30 Oct 2023 10:12:01 +0000 Subject: Allow compilation of large methods with no branches Popular apps include such methods in their profiles. Having the extra heuristic of skipping compilation for large methods with no branches can be unintuitive for developers who created those profiles. Some apps see startup improvements with this heuristic removed. Bug: 316617683 Test: art/test/testrunner/testrunner.py --host --64 --optimizing -b Change-Id: I21a8da93e89399dac0e45c3ab43a8bbedc925a44 --- compiler/driver/compiler_options_map-inl.h | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'compiler/driver/compiler_options_map-inl.h') diff --git a/compiler/driver/compiler_options_map-inl.h b/compiler/driver/compiler_options_map-inl.h index 9a02b576d1..317b2861b7 100644 --- a/compiler/driver/compiler_options_map-inl.h +++ b/compiler/driver/compiler_options_map-inl.h @@ -57,7 +57,6 @@ inline bool ReadCompilerOptions(Base& map, CompilerOptions* options, std::string } map.AssignIfExists(Base::CompileArtTest, &options->compile_art_test_); map.AssignIfExists(Base::HugeMethodMaxThreshold, &options->huge_method_threshold_); - map.AssignIfExists(Base::LargeMethodMaxThreshold, &options->large_method_threshold_); map.AssignIfExists(Base::InlineMaxCodeUnitsThreshold, &options->inline_max_code_units_); map.AssignIfExists(Base::GenerateDebugInfo, &options->generate_debug_info_); map.AssignIfExists(Base::GenerateMiniDebugInfo, &options->generate_mini_debug_info_); @@ -134,10 +133,6 @@ NO_INLINE void AddCompilerOptionsArgumentParserOptions(Builder& b) { .template WithType() .WithHelp("threshold size for a huge method for compiler filter tuning.") .IntoKey(Map::HugeMethodMaxThreshold) - .Define("--large-method-max=_") - .template WithType() - .WithHelp("threshold size for a large method for compiler filter tuning.") - .IntoKey(Map::LargeMethodMaxThreshold) .Define("--inline-max-code-units=_") .template WithType() .WithHelp("the maximum code units that a methodcan have to be considered for inlining.\n" @@ -256,6 +251,7 @@ NO_INLINE void AddCompilerOptionsArgumentParserOptions(Builder& b) { .Ignore({ "--num-dex-methods=_", "--top-k-profile-threshold=_", + "--large-method-max=_", }); // clang-format on } -- cgit v1.2.3-59-g8ed1b