diff options
author | David Srbecky <dsrbecky@google.com> | 2018-05-18 15:57:25 +0100 |
---|---|---|
committer | David Srbecky <dsrbecky@google.com> | 2018-06-01 13:26:46 +0100 |
commit | 71ec1cc0665cdb9d39f4fd284d68962020417a53 (patch) | |
tree | 8d19b11ab3e04213c46b1b12ae94dbf54b305bfb /compiler/optimizing/codegen_test_utils.h | |
parent | 03f16e4de1e3289414888fe0a5104205a781bd2f (diff) |
Rewrite dex register map encoding in stackmaps.
Simplify code by encoding dex register maps using BitTables.
The overall design is unchanged (bitmask+indices+catalogue).
This CL saves ~0.4% of .oat file size.
The dex register map decoding is factor of 3 faster now
(based on the time to verify the register maps on Arm).
This is not too surprising as the old version was O(n^2).
It also reduces compiler arena memory usage by 11% since the
BitTableBuilder is more memory efficient, we store less
intermediate data, and we deduplicate most data on the fly.
Test: test-art-host-gtest-stack_map_test
Change-Id: Ib703a5ddf7f581280522d589e4a2bfebe53c26a9
Diffstat (limited to 'compiler/optimizing/codegen_test_utils.h')
0 files changed, 0 insertions, 0 deletions