Lines Matching defs:CntInst
191 void transformLoopToPopcount(BasicBlock *PreCondBB, Instruction *CntInst,
195 Instruction *CntInst, PHINode *CntPhi,
1204 /// 1) \p CntInst is set to the instruction counting the population bit.
1226 Instruction *&CntInst, PHINode *&CntPhi,
1325 CntInst = CountInst;
1336 /// 1) \p CntInst is set to the instruction Counting Leading Zeros (CTLZ)
1362 Instruction *&CntInst, PHINode *&CntPhi,
1368 CntInst = nullptr;
1422 CntInst = Inst;
1426 if (!CntInst)
1444 Instruction *CntInst = nullptr;
1450 CntInst, CntPhi, DefX))
1460 for (User *U : CntInst->users())
1465 // If both CntInst and CntPhi are used outside the loop the profitability
1519 transformLoopToCountable(IntrinID, PH, CntInst, CntPhi, InitX, DefX,
1565 Instruction *CntInst;
1568 if (!detectPopcountIdiom(CurLoop, PreCondBB, CntInst, CntPhi, Val))
1571 transformLoopToPopcount(PreCondBB, CntInst, CntPhi, Val);
1604 /// CntPhi = PHI [Cnt0, CntInst]
1606 /// CntInst = CntPhi + 1
1610 /// Use(CntPhi) or Use(CntInst)
1619 /// CntPhi = PHI [Cnt0, CntInst]
1622 /// CntInst = CntPhi + 1
1629 /// Use(Count + Cnt0) // Use(CntInst)
1632 /// If CntInst and DefX are not used in LOOP_BODY they will be removed.
1634 Intrinsic::ID IntrinID, BasicBlock *Preheader, Instruction *CntInst,
1675 cast<IntegerType>(CntInst->getType()));
1717 CntInst->replaceUsesOutsideBlock(NewCount, Body);
1725 Instruction *CntInst,
1729 const DebugLoc &DL = CntInst->getDebugLoc();
1823 CntInst->replaceUsesOutsideBlock(NewCount, Body);