From d71f1dc15e264f9d2122c427a4d99d49b525bfd3 Mon Sep 17 00:00:00 2001 From: "xueliang.zhong" Date: Wed, 24 Jan 2018 17:24:16 +0000 Subject: Enable support of VecLoad/VecStore in LSE Changes: - Enable VecLoad and VecStore support in LSE. - This CL is based on Mingyao's CL: More general store elimination. - The new gtest load_store_elimination_test is to test some corner cases where ArrayGet/ArraySet/VecLoad/VecStore are mixed and overlap. - The new java 530-checker-lse-simd. Test: test.py --host --optimizing --jit --gtest Test: test.py --target --optimizing --jit Test: run-gtests.sh Test: load_store_elimination_test Test: 530-checker-lse-simd Test: ./art/test/run-test --optimizing --64 --gcstress 667-checker-simd-alignment Test: m -j80 art-check-testing-apex-gen Change-Id: I2d2024ec75a2aaef56b527db98abb40c5f16be79 --- compiler/optimizing/nodes_vector.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'compiler/optimizing/nodes_vector.h') diff --git a/compiler/optimizing/nodes_vector.h b/compiler/optimizing/nodes_vector.h index efe4d6b000..e8170482e9 100644 --- a/compiler/optimizing/nodes_vector.h +++ b/compiler/optimizing/nodes_vector.h @@ -1155,6 +1155,8 @@ class HVecStore final : public HVecMemoryOperation { // A store needs to stay in place. bool CanBeMoved() const override { return false; } + HInstruction* GetValue() const { return InputAt(2); } + DECLARE_INSTRUCTION(VecStore); protected: -- cgit v1.2.3-59-g8ed1b