• Home
  • Raw
  • Download

Lines Matching refs:mul

25 bool TrySimpleMultiplyAccumulatePatterns(HMul* mul,  in TrySimpleMultiplyAccumulatePatterns()  argument
28 DCHECK(DataType::IsIntOrLongType(mul->GetType())); in TrySimpleMultiplyAccumulatePatterns()
78 ArenaAllocator* allocator = mul->GetBlock()->GetGraph()->GetAllocator(); in TrySimpleMultiplyAccumulatePatterns()
80 mul->GetType(), op_kind, input_a, input_a, input_b, mul->GetDexPc()); in TrySimpleMultiplyAccumulatePatterns()
82 mul->GetBlock()->ReplaceAndRemoveInstructionWith(mul, mulacc); in TrySimpleMultiplyAccumulatePatterns()
90 bool TryCombineMultiplyAccumulate(HMul* mul, InstructionSet isa) { in TryCombineMultiplyAccumulate() argument
91 DataType::Type type = mul->GetType(); in TryCombineMultiplyAccumulate()
108 ArenaAllocator* allocator = mul->GetBlock()->GetGraph()->GetAllocator(); in TryCombineMultiplyAccumulate()
110 if (mul->HasOnlyOneNonEnvironmentUse()) { in TryCombineMultiplyAccumulate()
111 HInstruction* use = mul->GetUses().front().GetUser(); in TryCombineMultiplyAccumulate()
131 if (binop_right == mul) { in TryCombineMultiplyAccumulate()
134 DCHECK_EQ(binop_left, mul); in TryCombineMultiplyAccumulate()
143 mul->GetLeft(), in TryCombineMultiplyAccumulate()
144 mul->GetRight()); in TryCombineMultiplyAccumulate()
147 DCHECK(!mul->HasUses()); in TryCombineMultiplyAccumulate()
148 mul->GetBlock()->RemoveInstruction(mul); in TryCombineMultiplyAccumulate()
155 mul->GetBlock()->GetGraph()->GetConstant(type, 0), in TryCombineMultiplyAccumulate()
156 mul->GetLeft(), in TryCombineMultiplyAccumulate()
157 mul->GetRight()); in TryCombineMultiplyAccumulate()
160 DCHECK(!mul->HasUses()); in TryCombineMultiplyAccumulate()
161 mul->GetBlock()->RemoveInstruction(mul); in TryCombineMultiplyAccumulate()
171 if (mul->GetLeft() == mul->GetRight()) { in TryCombineMultiplyAccumulate()
175 HInstruction* left = mul->GetLeft(); in TryCombineMultiplyAccumulate()
176 HInstruction* right = mul->GetRight(); in TryCombineMultiplyAccumulate()
178 TrySimpleMultiplyAccumulatePatterns(mul, right->AsBinaryOperation(), left)) { in TryCombineMultiplyAccumulate()
182 TrySimpleMultiplyAccumulatePatterns(mul, left->AsBinaryOperation(), right)) { in TryCombineMultiplyAccumulate()