diff options
| author | Mathieu Chartier <mathieuc@google.com> | 2014-10-28 18:23:02 -0700 |
|---|---|---|
| committer | Mathieu Chartier <mathieuc@google.com> | 2014-10-30 14:57:00 -0700 |
| commit | a9ca9ac444ceb2cf5e8bd5c98c1ed47f2a9a94dd (patch) | |
| tree | 8766b8750c0983ace426811f8a2d9f68109bbda5 /test/MultiDex | |
| parent | 473484fac7bd53523f5503176ecc5955325a9731 (diff) | |
Add hash table to link virtual methods
Added a hash table for turning the O(m*n) lookup average case to
O(m+n) average case. There is probably still some room for improvement.
Before:
WaitTime: 2121
WaitTime: 2051
WaitTime: 2134
WaitTime: 2104
WaitTime: 2237
WaitTime: 2391
4.99% art::MethodNameAndSignatureComparator::HasSameNameAndSignature(art::mirror::ArtMethod)
1.65% art::ClassLinker::LinkVirtualMethods(art::Thread*, art::Handle<art::mirror::Class>)
After:
WaitTime: 2038
WaitTime: 1965
WaitTime: 1979
WaitTime: 1976
WaitTime: 1957
WaitTime: 2004
0.46% art::MethodNameAndSignatureComparator::HasSameNameAndSignature(art::mirror::ArtMethod*)
1.39% art::ClassLinker::LinkVirtualMethods(art::Thread*, art::Handle<art::mirror::Class>)
Bug: 18054905
Bug: 16828525
Change-Id: If847afb7194daa05ace38d15862e4b871dfffae1
Diffstat (limited to 'test/MultiDex')
0 files changed, 0 insertions, 0 deletions
