Home | History | Annotate | Download | only in Scalar

Lines Matching refs:PHINode

105     void HandleFloatingPointIV(Loop *L, PHINode *PH);
113 PHINode *IndVar, SCEVExpander &Rewriter);
192 PHINode *PHI = dyn_cast<PHINode>(User);
241 void IndVarSimplify::HandleFloatingPointIV(Loop *L, PHINode *PN) {
396 PHINode *NewPHI = PHINode::Create(Int32Ty, 2, PN->getName()+".int", PN);
448 PHINode *PN = dyn_cast<PHINode>(I); ++I)
452 if (PHINode *PN = dyn_cast_or_null<PHINode>(&*PHIs[i]))
492 PHINode *PN = dyn_cast<PHINode>(ExitBB->begin());
499 while ((PN = dyn_cast<PHINode>(BBI++))) {
607 PHINode *NewPN = cast<PHINode>(PN->clone());
630 PHINode *NarrowIV;
644 WideIVVisitor(PHINode *NarrowIV, ScalarEvolution *SCEV,
703 PHINode *OrigPhi;
714 PHINode *WidePhi;
740 PHINode *CreateWideIV(SCEVExpander &Rewriter);
898 if (isa<PHINode>(DU.NarrowUse) &&
1011 PHINode *WidenIV::CreateWideIV(SCEVExpander &Rewriter) {
1042 WidePhi = cast<PHINode>(Rewriter.expandCodeFor(AddRec, WideType, InsertPt));
1097 SmallVector<PHINode*, 8> LoopPhis;
1098 for (BasicBlock::iterator I = L->getHeader()->begin(); isa<PHINode>(I); ++I) {
1099 LoopPhis.push_back(cast<PHINode>(I));
1113 PHINode *CurrIV = LoopPhis.pop_back_val();
1127 if (PHINode *WidePhi = Widener.CreateWideIV(Rewriter)) {
1224 static PHINode *getLoopPhiForCounter(Value *IncV, Loop *L, DominatorTree *DT) {
1241 PHINode *Phi = dyn_cast<PHINode>(IncI->getOperand(0));
1251 Phi = dyn_cast<PHINode>(IncI->getOperand(1));
1296 PHINode *Phi = dyn_cast<PHINode>(LHS);
1357 static bool AlmostDeadIV(PHINode *Phi, BasicBlock *LatchBlock, Value *Cond) {
1386 static PHINode *
1395 PHINode *BestPhi = 0;
1400 for (BasicBlock::iterator I = L->getHeader()->begin(); isa<PHINode>(I); ++I) {
1401 PHINode *Phi = cast<PHINode>(I);
1469 static Value *genLoopLimit(PHINode *IndVar, const SCEV *IVCount, Loop *L,
1551 PHINode *IndVar,
1662 if (isa<PHINode>(I))
1696 if (PHINode *P = dyn_cast<PHINode>(U)) {
1698 PHINode::getIncomingValueNumForOperand(UI.getOperandNo());
1794 PHINode *IndVar = FindLoopCounter(L, BackedgeTakenCount, SE, DT, TD);