History log of /art/compiler/optimizing/load_store_analysis_test.cc
Revision Date Author Comments
b50b16a68ababbc9acab6102bf0bb63bd5083763 19-Sep-2017 xueliang.zhong <xueliang.zhong@linaro.org> Support VecLoad and VecStore in LSA.

Test: test-art-host
Test: test-art-target
Test: load_store_analysis_test

Change-Id: I7d819061ec9ea12f86a926566c3845231fce6e26
e0eb48353ddf0c1b79bfec2ba15c899a413c2c70 30-Oct-2017 xueliang.zhong <xueliang.zhong@linaro.org> Fix LSA hunt for original reference bug.

Fix a bug in LSA where it doesn't take IntermediateAddress
into account during hunting for original reference.

In following example, original reference i0 can be transformed
by NullCheck, BoundType, IntermediateAddress, etc.
i0 NewArray
i1 HInstruction(i0)
i2 ArrayGet(i1, index)

Test: test-art-host
Test: test-art-target
Test: load_store_analysis_test
Test: 706-checker-scheduler

Change-Id: I162dd8a86fcd31daee3517357c6af638c950b31b
ca6fff898afcb62491458ae8bcd428bfb3043da1 03-Oct-2017 Vladimir Marko <vmarko@google.com> ART: Use ScopedArenaAllocator for pass-local data.

Passes using local ArenaAllocator were hiding their memory
usage from the allocation counting, making it difficult to
track down where memory was used. Using ScopedArenaAllocator
reveals the memory usage.

This changes the HGraph constructor which requires a lot of
changes in tests. Refactor these tests to limit the amount
of work needed the next time we change that constructor.

Test: m test-art-host-gtest
Test: testrunner.py --host
Test: Build with kArenaAllocatorCountAllocations = true.
Bug: 64312607
Change-Id: I34939e4086b500d6e827ff3ef2211d1a421ac91a
0ebe0d83138bba1996e9c8007969b5381d972b32 21-Sep-2017 Vladimir Marko <vmarko@google.com> ART: Introduce compiler data type.

Replace most uses of the runtime's Primitive in compiler
with a new class DataType. This prepares for introducing
new types, such as Uint8, that the runtime does not need
to know about.

Test: m test-art-host-gtest
Test: testrunner.py --host
Bug: 23964345
Change-Id: Iec2ad82454eec678fffcd8279a9746b90feb9b0c
016c0f165dc6872d22c12c239d19b094983519f1 12-May-2017 xueliang.zhong <xueliang.zhong@linaro.org> Improve array index analysis in LSA.

This CL improves analysis on array index in load store analysis.

Test: m test-art-host
Test: m test-art-target
Test: m test-art-host-gtest-load_store_analysis_test

Change-Id: Id5e5aa8b396c68e082db95809659494107985fa2
c239a2bb9474a1266c4882638fdb19056370e16d 27-Apr-2017 xueliang.zhong <xueliang.zhong@linaro.org> Create load store analysis pass

This CL separates load store analysis from LSE pass.

The load and store analysis in LSE pass records information
about heap memory accesses for arrays and fields.
Such information can also be used in the other optimizations like
instruction scheduling pass which can eliminate side-effect
dependencies between memory accesses to different locations.

Test: m test-art-host
Test: m test-art-target
Test: m test-art-host-gtest-load_store_analysis_test
Test: 530-checker-lse

Change-Id: I353a2b9a03b19bfa0e7ef07716d60bd4254c7ea7