Lines Matching refs:RemInst
82 AssertingVH<Instruction> RemInst; member
85 : DivInst(DivInst_), RemInst(RemInst_) { in DivRemPairWorklistEntry()
89 assert(DivInst->getType() == RemInst->getType() && "Types should match."); in DivRemPairWorklistEntry()
105 switch (RemInst->getOpcode()) { in isRemExpanded()
158 Instruction *RemInst = RemPair.second; in getWorklist() local
161 Worklist.emplace_back(It->second, RemInst); in getWorklist()
197 auto &RemInst = E.RemInst; in optimizeDivRem() local
211 RealRem->setName(RemInst->getName() + ".recomposed"); in optimizeDivRem()
212 RealRem->insertAfter(RemInst); in optimizeDivRem()
213 Instruction *OrigRemInst = RemInst; in optimizeDivRem()
215 RemInst = RealRem; in optimizeDivRem()
233 if (HasDivRemOp && RemInst->getParent() == DivInst->getParent()) in optimizeDivRem()
236 bool DivDominates = DT.dominates(DivInst, RemInst); in optimizeDivRem()
237 if (!DivDominates && !DT.dominates(RemInst, DivInst)) { in optimizeDivRem()
243 BasicBlock *RemBB = RemInst->getParent(); in optimizeDivRem()
293 IsSafeToHoist(RemInst, RemBB) && IsSafeToHoist(DivInst, DivBB) && in optimizeDivRem()
302 RemInst->moveBefore(PredBB->getTerminator()); in optimizeDivRem()
318 RemInst->moveAfter(DivInst); in optimizeDivRem()
320 DivInst->moveAfter(RemInst); in optimizeDivRem()
368 DivInst->moveBefore(RemInst); in optimizeDivRem()
369 Mul->insertAfter(RemInst); in optimizeDivRem()
370 Mul->setDebugLoc(RemInst->getDebugLoc()); in optimizeDivRem()
372 Sub->setDebugLoc(RemInst->getDebugLoc()); in optimizeDivRem()
406 Sub->setName(RemInst->getName() + ".decomposed"); in optimizeDivRem()
407 Instruction *OrigRemInst = RemInst; in optimizeDivRem()
409 RemInst = Sub; in optimizeDivRem()