Lines Matching refs:SDiv
105 bool eliminateSDiv(BinaryOperator *SDiv);
298 bool SimplifyIndvar::eliminateSDiv(BinaryOperator *SDiv) { in eliminateSDiv() argument
300 auto *N = SE->getSCEV(SDiv->getOperand(0)); in eliminateSDiv()
301 auto *D = SE->getSCEV(SDiv->getOperand(1)); in eliminateSDiv()
304 const Loop *L = LI->getLoopFor(SDiv->getParent()); in eliminateSDiv()
311 BinaryOperator::UDiv, SDiv->getOperand(0), SDiv->getOperand(1), in eliminateSDiv()
312 SDiv->getName() + ".udiv", SDiv->getIterator()); in eliminateSDiv()
313 UDiv->setIsExact(SDiv->isExact()); in eliminateSDiv()
314 SDiv->replaceAllUsesWith(UDiv); in eliminateSDiv()
315 UDiv->setDebugLoc(SDiv->getDebugLoc()); in eliminateSDiv()
316 LLVM_DEBUG(dbgs() << "INDVARS: Simplified sdiv: " << *SDiv << '\n'); in eliminateSDiv()
319 DeadInsts.push_back(SDiv); in eliminateSDiv()
607 if (Bin->getOpcode() == Instruction::SDiv) in eliminateIVUser()