Lines Matching refs:shift_amount
348 HInstruction* shift_amount = instruction->GetRight(); in VisitShift() local
355 if (shift_amount->IsConstant()) { in VisitShift()
356 int64_t cst = Int64FromConstant(shift_amount->AsConstant()); in VisitShift()
374 DCHECK_EQ(shift_amount->GetType(), DataType::Type::kInt32); in VisitShift()
391 if (shift_amount->IsAnd() || in VisitShift()
392 shift_amount->IsOr() || in VisitShift()
393 shift_amount->IsXor() || in VisitShift()
394 shift_amount->IsAdd() || in VisitShift()
395 shift_amount->IsSub()) { in VisitShift()
396 int64_t required_result = shift_amount->IsAnd() ? implicit_mask : 0; in VisitShift()
397 HBinaryOperation* bin_op = shift_amount->AsBinaryOperation(); in VisitShift()
404 } else if (shift_amount->IsTypeConversion()) { in VisitShift()
405 DCHECK_NE(shift_amount->GetType(), DataType::Type::kBool); // We never convert to bool. in VisitShift()
406 DataType::Type source_type = shift_amount->InputAt(0)->GetType(); in VisitShift()
409 instruction->ReplaceInput(shift_amount->AsTypeConversion()->GetInput(), 1); in VisitShift()