summaryrefslogtreecommitdiff
path: root/compiler/optimizing/stack_map_stream.cc
diff options
context:
space:
mode:
author David Srbecky <dsrbecky@google.com> 2018-07-25 21:45:54 +0100
committer David Srbecky <dsrbecky@google.com> 2018-07-26 11:45:54 +0100
commit6ee06e97cef5ee92944deaeba0da4d10c4c33a2a (patch)
tree77d69c85d37864b4d3ee970be4b7fd1246adee7b /compiler/optimizing/stack_map_stream.cc
parentf5dcd31d89282b6c9324fdc960e6e7e2281c16f1 (diff)
Decode only the needed tables from CodeInfo.
Most use cases need only the first two bit tables from CodeInfo. Add flag to the decode method so that only those two are loaded. We only touched the table header but that still made difference. This speeds up pmd by over 10%. Test: test-art-host-gtest Change-Id: I7740081bf18205dd69864503b5bcec7de5e1a901
Diffstat (limited to 'compiler/optimizing/stack_map_stream.cc')
-rw-r--r--compiler/optimizing/stack_map_stream.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/optimizing/stack_map_stream.cc b/compiler/optimizing/stack_map_stream.cc
index d74d7b695c..da6c711659 100644
--- a/compiler/optimizing/stack_map_stream.cc
+++ b/compiler/optimizing/stack_map_stream.cc
@@ -310,9 +310,9 @@ size_t StackMapStream::PrepareForFillIn() {
EncodeUnsignedLeb128(&out_, num_dex_registers_);
BitMemoryWriter<ScopedArenaVector<uint8_t>> out(&out_, out_.size() * kBitsPerByte);
stack_maps_.Encode(out);
+ inline_infos_.Encode(out);
register_masks_.Encode(out);
stack_masks_.Encode(out);
- inline_infos_.Encode(out);
dex_register_masks_.Encode(out);
dex_register_maps_.Encode(out);
dex_register_catalog_.Encode(out);