From 61b922847403ac0e74b6477114c81a28ac2e01a0 Mon Sep 17 00:00:00 2001 From: Vladimir Marko Date: Wed, 11 Oct 2017 13:23:17 +0100 Subject: ART: Introduce Uint8 loads in compiled code. Some vectorization patterns are not recognized anymore. This shall be fixed later. Test: m test-art-host-gtest Test: testrunner.py --host --optimizing Test: testrunner.py --target --optimizing on Nexus 5X Test: Nexus 5X boots. Bug: 23964345 Bug: 67935418 Change-Id: I587a328d4799529949c86fa8045c6df21e3a8617 --- compiler/optimizing/nodes_shared.cc | 3 +++ 1 file changed, 3 insertions(+) (limited to 'compiler/optimizing/nodes_shared.cc') diff --git a/compiler/optimizing/nodes_shared.cc b/compiler/optimizing/nodes_shared.cc index f982523634..2f971b93a6 100644 --- a/compiler/optimizing/nodes_shared.cc +++ b/compiler/optimizing/nodes_shared.cc @@ -54,6 +54,9 @@ void HDataProcWithShifterOp::GetOpInfoFromInstruction(HInstruction* instruction, // default encoding 'LSL 0'. *op_kind = kLSL; *shift_amount = 0; + } else if (result_type == DataType::Type::kUint8 || + (input_type == DataType::Type::kUint8 && input_size < result_size)) { + *op_kind = kUXTB; } else if (result_type == DataType::Type::kUint16 || (input_type == DataType::Type::kUint16 && input_size < result_size)) { *op_kind = kUXTH; -- cgit v1.2.3-59-g8ed1b