diff options
author | Nelli Kim <nelli.kim@samsung.com> | 2016-05-13 13:08:53 +0300 |
---|---|---|
committer | Matthew Gharrity <gharrma@google.com> | 2016-06-14 10:05:47 -0700 |
commit | badee9820fcf5dca5f8c46c3215ae1779ee7736e (patch) | |
tree | 982948a67a88a1f9a734c935f919f8d307969f48 /compiler/optimizing/instruction_builder.cc | |
parent | 614968198625a6693666bdc1e5609e2f663f5638 (diff) |
Optimize IMT
* Remove IMT for classes which do not implement interfaces
* Remove IMT for array classes
* Share same IMT
Saved memory (measured on hammerhead):
boot.art:
Total number of classes: 3854
Number of affected classes: 1637
Saved memory: 409kB
Chrome (excluding classes in boot.art):
Total number of classes: 2409
Number of affected classes: 1259
Saved memory: 314kB
Google Maps (excluding classes in boot.art):
Total number of classes: 6988
Number of affected classes: 2574
Saved memory: 643kB
Performance regression on benchmarks/InvokeInterface.java benchmark
(measured timeCall10Interface)
1st launch: 9.6%
2nd launch: 6.8%
Change-Id: If07e45390014a6ee8f3c1c4ca095b43046f0871f
Diffstat (limited to 'compiler/optimizing/instruction_builder.cc')
0 files changed, 0 insertions, 0 deletions