Lines Matching defs:CurLoop
132 bool isLegalStore(Loop *CurLoop, StoreInst *SI);
133 void collectStores(Loop *CurLoop, BasicBlock *BB,
135 bool processCopyingStore(Loop *CurLoop, StoreInst *SI, const SCEV *BECount);
137 bool runOnLoopBlock(Loop *CurLoop, BasicBlock *BB, const SCEV *BECount,
579 : CurLoop(loop), DL(dl), DT(dt), TLI(tli), SE(se) {}
587 LLVMContext &Ctx = CurLoop->getHeader()->getParent()->getContext();
632 Loop *CurLoop;
924 if (CurLoop->isLoopInvariant(PV.X)) {
1772 << *CurLoop << '\n');
1778 BasicBlock *LoopB = CurLoop->getHeader();
1781 if (LoopB != CurLoop->getLoopLatch())
1783 BasicBlock *ExitB = CurLoop->getExitBlock();
1786 BasicBlock *EntryB = CurLoop->getLoopPreheader();
1791 const SCEV *CT = SE.getBackedgeTakenCount(CurLoop);
1922 bool HexagonLoopIdiomRecognize::isLegalStore(Loop *CurLoop, StoreInst *SI) {
1939 if (!StoreEv || StoreEv->getLoop() != CurLoop || !StoreEv->isAffine())
1961 if (!LoadEv || LoadEv->getLoop() != CurLoop || !LoadEv->isAffine())
2006 void HexagonLoopIdiomRecognize::collectStores(Loop *CurLoop, BasicBlock *BB,
2011 if (isLegalStore(CurLoop, SI))
2015 bool HexagonLoopIdiomRecognize::processCopyingStore(Loop *CurLoop,
2037 BasicBlock *Preheader = CurLoop->getLoopPreheader();
2079 if (mayLoopAccessLocation(StoreBasePtr, ModRefInfo::ModRef, CurLoop, BECount,
2083 if (mayLoopAccessLocation(StoreBasePtr, ModRefInfo::ModRef, CurLoop,
2098 Function *Func = CurLoop->getHeader()->getParent();
2109 if (!coverLoop(CurLoop, Insts))
2114 bool IsNested = CurLoop->getParentLoop() != nullptr;
2126 if (mayLoopAccessLocation(LoadBasePtr, ModRefInfo::Mod, CurLoop, BECount,
2143 CurLoop->getUniqueExitBlocks(ExitBlocks);
2177 BasicBlock *Header = CurLoop->getHeader();
2355 bool HexagonLoopIdiomRecognize::runOnLoopBlock(Loop *CurLoop, BasicBlock *BB,
2369 collectStores(CurLoop, BB, Stores);
2373 MadeChange |= processCopyingStore(CurLoop, SI, BECount);