diff options
author | xueliang.zhong <xueliang.zhong@linaro.org> | 2017-05-08 18:36:40 +0100 |
---|---|---|
committer | xueliang.zhong <xueliang.zhong@linaro.org> | 2017-06-30 16:32:54 +0100 |
commit | 2a3471fc83383bfe3e060799482e372420ba6150 (patch) | |
tree | 7b7764521a0b67392e023f1efacc0dbae64fe675 /test/MultiDex | |
parent | 89ae0f42e38a2f985ac404830f2a05fecf9547e2 (diff) |
Disambiguate memory accesses in instruction scheduling
Based on aliasing information from heap location collector,
instruction scheduling can further eliminate side-effect
dependencies between memory accesses to different locations,
and perform better scheduling on memory loads and stores.
Performance improvements of this CL, measured on Cortex-A53:
| benchmarks | ARM64 backend | ARM backend |
|----------------+---------------|-------------|
| algorithm | 0.1 % | 0.1 % |
| benchmarksgame | 0.5 % | 1.3 % |
| caffeinemark | 0.0 % | 0.0 % |
| math | 5.1 % | 5.0 % |
| stanford | 1.1 % | 0.6 % |
| testsimd | 0.4 % | 0.1 % |
Compilation time impact is negligible, because this
heap location load store analysis is only performed
on loop basic blocks that get instruction scheduled.
Test: m test-art-host
Test: m test-art-target
Test: 706-checker-scheduler
Change-Id: I43d7003c09bfab9d3a1814715df666aea9a7360b
Diffstat (limited to 'test/MultiDex')
0 files changed, 0 insertions, 0 deletions