Lines Matching refs:ops

566     EasyMultiplyOp ops[2];  in SmallLiteralDivRem()  local
568 bool canEasyMultiply = GetEasyMultiplyTwoOps(lit, ops); in SmallLiteralDivRem()
571 GenEasyMultiplyTwoOps(tmp1, r_div_result, ops); in SmallLiteralDivRem()
614 bool ArmMir2Lir::GetEasyMultiplyTwoOps(int lit, EasyMultiplyOp* ops) { in GetEasyMultiplyTwoOps() argument
615 if (GetEasyMultiplyOp(lit, &ops[0])) { in GetEasyMultiplyTwoOps()
616 ops[1].op = kOpInvalid; in GetEasyMultiplyTwoOps()
617 ops[1].shift = 0; in GetEasyMultiplyTwoOps()
623 if (GetEasyMultiplyOp(lit1 >> shift, &ops[0])) { in GetEasyMultiplyTwoOps()
624 ops[1].op = kOpLsl; in GetEasyMultiplyTwoOps()
625 ops[1].shift = shift; in GetEasyMultiplyTwoOps()
631 if (GetEasyMultiplyOp(lit1 >> shift, &ops[0])) { in GetEasyMultiplyTwoOps()
632 ops[1].op = kOpAdd; in GetEasyMultiplyTwoOps()
633 ops[1].shift = shift; in GetEasyMultiplyTwoOps()
639 if (GetEasyMultiplyOp(lit1 >> shift, &ops[0])) { in GetEasyMultiplyTwoOps()
640 ops[1].op = kOpRsub; in GetEasyMultiplyTwoOps()
641 ops[1].shift = shift; in GetEasyMultiplyTwoOps()
645 ops[1].op = kOpInvalid; in GetEasyMultiplyTwoOps()
646 ops[1].shift = 0; in GetEasyMultiplyTwoOps()
654 void ArmMir2Lir::GenEasyMultiplyTwoOps(RegStorage r_dest, RegStorage r_src, EasyMultiplyOp* ops) { in GenEasyMultiplyTwoOps() argument
659 if (ops[1].op == kOpInvalid) { in GenEasyMultiplyTwoOps()
667 switch (ops[0].op) { in GenEasyMultiplyTwoOps()
669 OpRegRegImm(kOpLsl, r_tmp1, r_src, ops[0].shift); in GenEasyMultiplyTwoOps()
672 OpRegRegRegShift(kOpAdd, r_tmp1, r_src, r_src, EncodeShift(kArmLsl, ops[0].shift)); in GenEasyMultiplyTwoOps()
675 OpRegRegRegShift(kOpRsub, r_tmp1, r_src, r_src, EncodeShift(kArmLsl, ops[0].shift)); in GenEasyMultiplyTwoOps()
678 DCHECK_EQ(ops[0].op, kOpInvalid); in GenEasyMultiplyTwoOps()
682 switch (ops[1].op) { in GenEasyMultiplyTwoOps()
686 OpRegRegImm(kOpLsl, r_dest, r_tmp1, ops[1].shift); in GenEasyMultiplyTwoOps()
689 OpRegRegRegShift(kOpAdd, r_dest, r_src, r_tmp1, EncodeShift(kArmLsl, ops[1].shift)); in GenEasyMultiplyTwoOps()
692 OpRegRegRegShift(kOpRsub, r_dest, r_src, r_tmp1, EncodeShift(kArmLsl, ops[1].shift)); in GenEasyMultiplyTwoOps()
701 EasyMultiplyOp ops[2]; in EasyMultiply() local
703 if (!GetEasyMultiplyTwoOps(lit, ops)) { in EasyMultiply()
710 GenEasyMultiplyTwoOps(rl_result.reg, rl_src.reg, ops); in EasyMultiply()