Lines Matching refs:DivRHS
1184 /// Fold "icmp pred, ([su]div X, DivRHS), CmpRHS" where DivRHS and CmpRHS are
1187 ConstantInt *DivRHS) {
1202 if (DivRHS->isZero())
1204 if (DivIsSigned && DivRHS->isAllOnesValue())
1206 if (DivRHS->isOne()) {
1212 // Compute Prod = CI * DivRHS. We are essentially solving an equation
1213 // of form X/C1=C2. We solve for X by multiplying C1 (DivRHS) and
1216 Constant *Prod = ConstantExpr::getMul(CmpRHS, DivRHS);
1221 bool ProdOV = (DivIsSigned ? ConstantExpr::getSDiv(Prod, DivRHS) :
1222 ConstantExpr::getUDiv(Prod, DivRHS)) != CmpRHS;
1229 ConstantInt *RangeSize = DivI->isExact() ? getOne(Prod) : DivRHS;
1250 } else if (DivRHS->getValue().isStrictlyPositive()) { // Divisor is > 0.
1269 } else if (DivRHS->isNegative()) { // Divisor is < 0.
1276 if (HiBound == DivRHS) { // -INTMIN = INTMIN
2120 if (ConstantInt *DivRHS = dyn_cast<ConstantInt>(LHSI->getOperand(1)))
2122 DivRHS))