From 0733dc87518d2c8fc1ba2196c9f5cc9729de7c20 Mon Sep 17 00:00:00 2001 From: Mathieu Chartier Date: Mon, 17 Jul 2017 14:05:28 -0700 Subject: Avoid creating verification_results_ unnecessarily For compiler filters that don't quicken or compile, avoid creating the verification results. This avoids creating some arrays that were using a few MB of RAM in some cases. For a large app verify compile: Maximum resident set size (kbytes): 258948 -> 254300 Bug: 63467744 Test: test-art-host Change-Id: I1d0536b2a6a5c301396641371915394cf4c0e5f3 --- compiler/dex/quick_compiler_callbacks.cc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'compiler/dex/quick_compiler_callbacks.cc') diff --git a/compiler/dex/quick_compiler_callbacks.cc b/compiler/dex/quick_compiler_callbacks.cc index 932eb51aee..b1006b2f0b 100644 --- a/compiler/dex/quick_compiler_callbacks.cc +++ b/compiler/dex/quick_compiler_callbacks.cc @@ -22,11 +22,15 @@ namespace art { void QuickCompilerCallbacks::MethodVerified(verifier::MethodVerifier* verifier) { - verification_results_->ProcessVerifiedMethod(verifier); + if (verification_results_ != nullptr) { + verification_results_->ProcessVerifiedMethod(verifier); + } } void QuickCompilerCallbacks::ClassRejected(ClassReference ref) { - verification_results_->AddRejectedClass(ref); + if (verification_results_ != nullptr) { + verification_results_->AddRejectedClass(ref); + } } } // namespace art -- cgit v1.2.3-59-g8ed1b