From ea650f3bc4f54eb2c647cf0f7134398ef5038792 Mon Sep 17 00:00:00 2001 From: Mathieu Chartier Date: Wed, 24 May 2017 12:04:13 -0700 Subject: Move profiles to use bitmaps for startup methods This CL enables changes like compiling only hot methods while still doing layout for hot and startup methods. The bitmaps are also a bit smaller for post-launch use cases. No change in compilation strategy yet. Fixed some bugs in dexlayout test like using a profile with the wrong dex location. This meant the second invocation of dexlayout didn't have any profile data. Added profman support for dump-classes-and-methods, create-profile-from, and related test. Profile sizes (bytes) post launch: Gmail: 7290 -> 6136 Maps: 22896 -> 18984 Music: 8582 -> 7050 YouTube: 16733 -> 14592 Test: test-art-host Bug: 62040831 Change-Id: I9915b81a2ff2c47464acbbdeb55ce30a33d5483f --- compiler/driver/compiler_driver.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'compiler/driver/compiler_driver.cc') diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc index fc5f847354..0097f55e53 100644 --- a/compiler/driver/compiler_driver.cc +++ b/compiler/driver/compiler_driver.cc @@ -1000,7 +1000,8 @@ bool CompilerDriver::ShouldCompileBasedOnProfile(const MethodReference& method_r if (profile_compilation_info_ == nullptr) { return false; } - bool result = profile_compilation_info_->ContainsMethod(method_ref); + // TODO: Revisit compiling all startup methods. b/36457259 + bool result = profile_compilation_info_->IsStartupOrHotMethod(method_ref); if (kDebugProfileGuidedCompilation) { LOG(INFO) << "[ProfileGuidedCompilation] " -- cgit v1.2.3-59-g8ed1b