Home | History | Annotate | Download | only in optimizing

Lines Matching full:binop

59   bool TryMoveNegOnInputsAfterBinop(HBinaryOperation* binop);
163 bool InstructionSimplifierVisitor::TryMoveNegOnInputsAfterBinop(HBinaryOperation* binop) {
164 DCHECK(binop->IsAdd() || binop->IsSub());
165 DCHECK(binop->GetLeft()->IsNeg() && binop->GetRight()->IsNeg());
166 HNeg* left_neg = binop->GetLeft()->AsNeg();
167 HNeg* right_neg = binop->GetRight()->AsNeg();
182 if (!Primitive::IsIntegralType(binop->GetType())) {
185 binop->ReplaceInput(left_neg->GetInput(), 0);
186 binop->ReplaceInput(right_neg->GetInput(), 1);
189 HNeg* neg = new (GetGraph()->GetArena()) HNeg(binop->GetType(), binop);
190 binop->GetBlock()->InsertInstructionBefore(neg, binop->GetNext());
191 binop->ReplaceWithExceptInReplacementAtIndex(neg, 0);
2202 static HBinaryOperation* AsAddOrSub(HInstruction* binop) {
2203 return (binop->IsAdd() || binop->IsSub()) ? binop->AsBinaryOperation() : nullptr;