Lines Matching refs:SIUse

120   PHINode *SIUse;  member in __anon91a52f600111::SelectInstToUnfold
123 SelectInstToUnfold(SelectInst *SI, PHINode *SIUse) : SI(SI), SIUse(SIUse) {} in SelectInstToUnfold() argument
126 PHINode *getUse() { return SIUse; } in getUse()
128 explicit operator bool() const { return SI && SIUse; } in operator bool()
220 DomTreeUpdater *DTU, SelectInst *SI, PHINode *SIUse, SelectInst *SIToSink, in createBasicBlockAndSinkSelectInst() argument
232 NewSIsToUnfold->push_back(SelectInstToUnfold(SIToSink, SIUse)); in createBasicBlockAndSinkSelectInst()
247 PHINode *SIUse = SIToUnfold.getUse(); in unfold() local
249 BasicBlock *EndBlock = SIUse->getParent(); in unfold()
265 createBasicBlockAndSinkSelectInst(DTU, SI, SIUse, SIOp, EndBlock, in unfold()
270 createBasicBlockAndSinkSelectInst(DTU, SI, SIUse, SIOp, EndBlock, in unfold()
298 SIUse->removeIncomingValue(StartBlock, /* DeletePHIIfEmpty = */ false); in unfold()
299 SIUse->addIncoming(SI->getTrueValue(), TrueBlock); in unfold()
300 SIUse->addIncoming(SI->getFalseValue(), FalseBlock); in unfold()
304 if (&Phi != SIUse) { in unfold()
327 for (unsigned Idx = 0; Idx < SIUse->getNumIncomingValues(); ++Idx) { in unfold()
328 if (SIUse->getIncomingBlock(Idx) == StartBlock) in unfold()
329 SIUse->setIncomingValue(Idx, SIOp1); in unfold()
331 SIUse->addIncoming(SIOp2, NewBlock); in unfold()
336 if (Phi != SIUse) in unfold()
502 Instruction *SIUse = dyn_cast<Instruction>(SI->user_back()); in isValidSelectInst() local
504 if (!SIUse && !(isa<PHINode>(SIUse) || isa<SelectInst>(SIUse))) in isValidSelectInst()
515 if (isa<PHINode>(SIUse) && in isValidSelectInst()
516 SIBB->getSingleSuccessor() != cast<Instruction>(SIUse)->getParent()) in isValidSelectInst()