diff options
Diffstat (limited to 'compiler/optimizing/nodes_shared.cc')
-rw-r--r-- | compiler/optimizing/nodes_shared.cc | 3 |
1 files changed, 3 insertions, 0 deletions
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; |