Lines Matching defs:CntPhi
199 PHINode *CntPhi, Value *Var);
202 Instruction *CntInst, PHINode *CntPhi,
1256 /// 2) \p CntPhi is set to the corresponding phi node.
1277 Instruction *&CntInst, PHINode *&CntPhi,
1377 CntPhi = CountPhi;
1389 /// 2) \p CntPhi is set to the corresponding phi node
1413 Instruction *&CntInst, PHINode *&CntPhi,
1420 CntPhi = nullptr;
1474 CntPhi = Phi;
1494 PHINode *CntPhi = nullptr;
1501 CntInst, CntPhi, DefX))
1505 for (User *U : CntPhi->users())
1516 // If both CntInst and CntPhi are used outside the loop the profitability
1572 transformLoopToCountable(IntrinID, PH, CntInst, CntPhi, InitX, DefX,
1619 PHINode *CntPhi;
1621 if (!detectPopcountIdiom(CurLoop, PreCondBB, CntInst, CntPhi, Val))
1624 transformLoopToPopcount(PreCondBB, CntInst, CntPhi, Val);
1657 /// CntPhi = PHI [Cnt0, CntInst]
1659 /// CntInst = CntPhi + 1
1663 /// Use(CntPhi) or Use(CntInst)
1666 /// If CntPhi used outside the loop:
1672 /// CntPhi = PHI [Cnt0, CntInst]
1675 /// CntInst = CntPhi + 1
1680 /// Use(CountPrev + Cnt0) // Use(CntPhi)
1688 PHINode *CntPhi, Value *InitX, Instruction *DefX, const DebugLoc &DL,
1698 // If there are uses of CntPhi create:
1731 Value *CntInitVal = CntPhi->getIncomingValueForBlock(Preheader);
1768 CntPhi->replaceUsesOutsideBlock(NewCount, Body);
1779 PHINode *CntPhi, Value *Var) {
1794 Builder.CreateZExtOrTrunc(PopCnt, cast<IntegerType>(CntPhi->getType()));
1803 Value *CntInitVal = CntPhi->getIncomingValueForBlock(PreHead);