From 9b688a095afbae21112df5d495487ac5231b12d0 Mon Sep 17 00:00:00 2001 From: Vladimir Marko Date: Wed, 6 May 2015 14:12:42 +0100 Subject: Optimizing: Better invoke-static/-direct dispatch. Add framework for different types of loading ArtMethod* and code pointer retrieval. Implement invoke-static and invoke-direct calls the same way as Quick. Document the dispatch kinds in HInvokeStaticOrDirect's new enumerations MethodLoadKind and CodePtrLocation. PC-relative loads from dex cache arrays are used only for x86-64 and arm64. The implementation for other architectures will be done in separate CLs. Change-Id: I468ca4d422dbd14748e1ba6b45289f0d31734d94 --- compiler/dex/quick/codegen_util.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'compiler/dex/quick/codegen_util.cc') diff --git a/compiler/dex/quick/codegen_util.cc b/compiler/dex/quick/codegen_util.cc index 8629f39702..72754ae5d9 100644 --- a/compiler/dex/quick/codegen_util.cc +++ b/compiler/dex/quick/codegen_util.cc @@ -1152,7 +1152,7 @@ CompiledMethod* Mir2Lir::GetCompiledMethod() { vmap_encoder.PushBackUnsigned(0u); // Size is 0. } - // Sort patches by literal offset for better deduplication. + // Sort patches by literal offset. Required for .oat_patches encoding. std::sort(patches_.begin(), patches_.end(), [](const LinkerPatch& lhs, const LinkerPatch& rhs) { return lhs.LiteralOffset() < rhs.LiteralOffset(); }); -- cgit v1.2.3-59-g8ed1b