Lines Matching refs:WO
85 bool eliminateOverflowIntrinsic(WithOverflowInst *WO);
443 bool SimplifyIndvar::eliminateOverflowIntrinsic(WithOverflowInst *WO) { in eliminateOverflowIntrinsic() argument
444 const SCEV *LHS = SE->getSCEV(WO->getLHS()); in eliminateOverflowIntrinsic()
445 const SCEV *RHS = SE->getSCEV(WO->getRHS()); in eliminateOverflowIntrinsic()
446 if (!willNotOverflow(SE, WO->getBinaryOp(), WO->isSigned(), LHS, RHS)) in eliminateOverflowIntrinsic()
453 WO->getBinaryOp(), WO->getLHS(), WO->getRHS(), "", WO); in eliminateOverflowIntrinsic()
455 if (WO->isSigned()) in eliminateOverflowIntrinsic()
462 for (auto *U : WO->users()) { in eliminateOverflowIntrinsic()
465 EVI->replaceAllUsesWith(ConstantInt::getFalse(WO->getContext())); in eliminateOverflowIntrinsic()
477 if (WO->use_empty()) in eliminateOverflowIntrinsic()
478 WO->eraseFromParent(); in eliminateOverflowIntrinsic()
636 if (auto *WO = dyn_cast<WithOverflowInst>(UseInst)) in eliminateIVUser() local
637 if (eliminateOverflowIntrinsic(WO)) in eliminateIVUser()