diff options
author | Calin Juravle <calin@google.com> | 2017-03-23 19:04:59 -0700 |
---|---|---|
committer | Calin Juravle <calin@google.com> | 2017-03-30 14:06:02 -0700 |
commit | 3402101b1351afdff5f963cada14808565c270c8 (patch) | |
tree | 114bc2ff88a52dc559554a016c67640e6481bedf /test/ProfileTestMultiDex | |
parent | cf45c943a77f28a31a85eb4560fa601aada89dc4 (diff) |
Fix profile merges in profman
profman used ProfileCompilationInfo::Load() which was not preserving the
correct order of the dex files (in a multidex profile).
The CL fixes profman to use ProfileCompilationInfo::MergeWith which
guarantees the right dex order and redesigns profile storage to avoid
such mistakes in the future. Instead of keeping data in a map indexed by
the profile key, store it in a vector whose index match profile_index.
This way, any iteration over profile info becomes deterministic with
respect to the profile index of the dex files.
Test: m test-art-host-gtest-profile_assistant_test
m test-art-host-gtest-profile_compilation_info_test
profile YouTube.apk and compile it based on the reference profile
(failing before)
Bug: 36371709
(cherry picked from commit cea9e9d26c32372ec8c75e6c89b1bfc08c5e1911)
Change-Id: Id2026339737bbf922c6066ed7ff6003861244713
Diffstat (limited to 'test/ProfileTestMultiDex')
0 files changed, 0 insertions, 0 deletions