Lines Matching refs:SDiv
96 bool eliminateSDiv(BinaryOperator *SDiv);
294 bool SimplifyIndvar::eliminateSDiv(BinaryOperator *SDiv) { in eliminateSDiv() argument
296 auto *N = SE->getSCEV(SDiv->getOperand(0)); in eliminateSDiv()
297 auto *D = SE->getSCEV(SDiv->getOperand(1)); in eliminateSDiv()
300 const Loop *L = LI->getLoopFor(SDiv->getParent()); in eliminateSDiv()
307 BinaryOperator::UDiv, SDiv->getOperand(0), SDiv->getOperand(1), in eliminateSDiv()
308 SDiv->getName() + ".udiv", SDiv); in eliminateSDiv()
309 UDiv->setIsExact(SDiv->isExact()); in eliminateSDiv()
310 SDiv->replaceAllUsesWith(UDiv); in eliminateSDiv()
311 LLVM_DEBUG(dbgs() << "INDVARS: Simplified sdiv: " << *SDiv << '\n'); in eliminateSDiv()
314 DeadInsts.push_back(SDiv); in eliminateSDiv()
632 if (Bin->getOpcode() == Instruction::SDiv) in eliminateIVUser()