Lines Matching refs:Prod
799 // Compute Prod = CI * DivRHS. We are essentially solving an equation
803 Constant *Prod = ConstantExpr::getMul(CmpRHS, DivRHS);
808 bool ProdOV = (DivIsSigned ? ConstantExpr::getSDiv(Prod, DivRHS) :
809 ConstantExpr::getUDiv(Prod, DivRHS)) != CmpRHS;
816 ConstantInt *RangeSize = DivI->isExact() ? getOne(Prod) : DivRHS;
830 LoBound = Prod;
844 LoBound = Prod; // e.g. X/5 op 3 --> [15, 20)
847 HiOverflow = AddWithOverflow(HiBound, Prod, RangeSize, true);
850 HiBound = AddOne(Prod);
870 HiBound = AddOne(Prod);
875 LoBound = Prod; // e.g. X/-5 op -3 --> [15, 20)
878 HiOverflow = SubWithOverflow(HiBound, Prod, RangeSize, true);