Lines Matching full:shift_amount
341 HInstruction* shift_amount = instruction->GetRight();
348 if (shift_amount->IsConstant()) {
349 int64_t cst = Int64FromConstant(shift_amount->AsConstant());
367 DCHECK_EQ(shift_amount->GetType(), DataType::Type::kInt32);
384 if (shift_amount->IsAnd() ||
385 shift_amount->IsOr() ||
386 shift_amount->IsXor() ||
387 shift_amount->IsAdd() ||
388 shift_amount->IsSub()) {
389 int64_t required_result = shift_amount->IsAnd() ? implicit_mask : 0;
390 HBinaryOperation* bin_op = shift_amount->AsBinaryOperation();
397 } else if (shift_amount->IsTypeConversion()) {
398 DCHECK_NE(shift_amount->GetType(), DataType::Type::kBool); // We never convert to bool.
399 DataType::Type source_type = shift_amount->InputAt(0)->GetType();
402 instruction->ReplaceInput(shift_amount->AsTypeConversion()->GetInput(), 1);