Home
last modified time | relevance | path

Searched refs:CurLoop (Results 1 – 19 of 19) sorted by relevance

/llvm-project-15.0.7/llvm/lib/Transforms/Scalar/
H A DLoopVersioningLICM.cpp160 CurLoop = nullptr; in reset()
191 Loop *CurLoop = nullptr; member
228 if (!CurLoop->isLoopSimplifyForm()) { in legalLoopStructure()
233 if (!CurLoop->getSubLoops().empty()) { in legalLoopStructure()
238 if (CurLoop->getNumBackEdges() != 1) { in legalLoopStructure()
243 if (!CurLoop->getExitingBlock()) { in legalLoopStructure()
250 if (CurLoop->getExitingBlock() != CurLoop->getLoopLatch()) { in legalLoopStructure()
256 if (CurLoop->isAnnotatedParallel()) { in legalLoopStructure()
416 LAI = &GetLAI(CurLoop); in legalLoopInstructions()
534 CurLoop->getStartLoc(), CurLoop->getHeader()) in isLegalForVersioning()
[all …]
H A DLICM.cpp551 if (inSubLoop(BB, CurLoop, LI)) in sinkRegion()
604 Worklist.insert(CurLoop); in sinkRegionForLoopNest()
627 Loop *CurLoop; member in __anonf51ac7480511::ControlFlowHoister
641 : LI(LI), DT(DT), CurLoop(CurLoop), MSSAU(MSSAU) {} in ControlFlowHoister()
654 if (!CurLoop->contains(TrueDest) || !CurLoop->contains(FalseDest) || in registerPossiblyHoistableBranch()
781 if (CurLoop->getParentLoop()) in getOrCreateHoistedBlock()
869 LoopBlocksRPO Worklist(CurLoop); in hoistRegion()
1330 if (CurLoop->contains(UI) && in isFreeInLoop()
1378 if (CurLoop->contains(UI)) { in isNotUsedOrFreeInLoop()
1675 if (CurLoop->contains(User)) in sink()
[all …]
H A DLoopIdiomRecognize.cpp150 Loop *CurLoop = nullptr; member in __anonb3094e750111::LoopIdiomRecognize
359 CurLoop = L; in runOnLoop()
417 if (LI->getLoopFor(BB) != CurLoop) in runOnCountableLoop()
1849 if (CurLoop->getNumBackEdges() != 1 || CurLoop->getNumBlocks() != 1) in recognizeAndInsertFFS()
1952 if (CurLoop->getNumBackEdges() != 1 || CurLoop->getNumBlocks() != 1) in recognizePopcount()
2134 SE->forgetLoop(CurLoop); in transformLoopToCountable()
2240 SE->forgetLoop(CurLoop); in transformLoopToPopcount()
2291 if (CurLoop->getNumBlocks() != 1 || CurLoop->getNumBackEdges() != 1) { in detectShiftUntilBitTestIdiom()
2582 SE->forgetLoop(CurLoop); in recognizeShiftUntilBitTest()
2630 if (CurLoop->getNumBlocks() != 1 || CurLoop->getNumBackEdges() != 1) { in detectShiftUntilZeroIdiom()
[all …]
H A DSeparateConstOffsetFromGEP.cpp462 Loop *CurLoop);
1283 GetElementPtrInst *FirstGEP, GetElementPtrInst *SecondGEP, Loop *CurLoop) { in isLegalToSwapOperand() argument
1303 if (CurLoop->isLoopInvariant(FirstOffset)) in isLegalToSwapOperand()
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DMustExecute.cpp53 BasicBlock *Header = CurLoop->getHeader(); in computeLoopSafetyInfo()
67 computeBlockColors(CurLoop); in computeLoopSafetyInfo()
84 for (const auto &BB : CurLoop->blocks()) in computeLoopSafetyInfo()
89 computeBlockColors(CurLoop); in computeLoopSafetyInfo()
160 const Loop *CurLoop, const BasicBlock *BB, in collectTransitivePredecessors() argument
164 if (BB == CurLoop->getHeader()) in collectTransitivePredecessors()
175 if (Pred == CurLoop->getHeader()) in collectTransitivePredecessors()
195 if (BB == CurLoop->getHeader()) in allLoopPathsLeadToBlock()
237 if (CurLoop->contains(Succ) || in allLoopPathsLeadToBlock()
254 if (Inst.getParent() == CurLoop->getHeader()) in isGuaranteedToExecute()
[all …]
H A DDependenceAnalysis.cpp382 AssociatedLoop = CurLoop; in setPoint()
391 AssociatedLoop = CurLoop; in setLine()
400 AssociatedLoop = CurLoop; in setDistance()
1520 CurLoop); in exactSIVtest()
1715 CurLoop); in weakZeroSrcSIVtest()
1824 CurLoop); in weakZeroDstSIVtest()
2178 Level = mapSrcLoop(CurLoop); in testSIV()
2191 symbolicRDIVtest(SrcCoeff, DstCoeff, SrcConst, DstConst, CurLoop, CurLoop); in testSIV()
2198 Level = mapSrcLoop(CurLoop); in testSIV()
2208 Level = mapDstLoop(CurLoop); in testSIV()
[all …]
/llvm-project-15.0.7/llvm/include/llvm/Analysis/
H A DMustExecute.h66 void computeBlockColors(const Loop *CurLoop);
85 bool allLoopPathsLeadToBlock(const Loop *CurLoop, const BasicBlock *BB,
93 virtual void computeLoopSafetyInfo(const Loop *CurLoop) = 0;
99 const Loop *CurLoop) const = 0;
120 void computeLoopSafetyInfo(const Loop *CurLoop) override;
124 const Loop *CurLoop) const override;
145 void computeLoopSafetyInfo(const Loop *CurLoop) override;
149 const Loop *CurLoop) const override;
153 bool doesNotWriteMemoryBefore(const BasicBlock *BB, const Loop *CurLoop)
158 bool doesNotWriteMemoryBefore(const Instruction &I, const Loop *CurLoop)
H A DLoopInfo.h99 for (const LoopT *CurLoop = ParentLoop; CurLoop; in getLoopDepth() local
100 CurLoop = CurLoop->ParentLoop) in getLoopDepth()
379 const LoopT *CurLoop = static_cast<const LoopT *>(this); in getLoopsInPreorder() local
380 PreOrderLoops.push_back(CurLoop); in getLoopsInPreorder()
381 getInnerLoopsInPreorder(*CurLoop, PreOrderLoops); in getLoopsInPreorder()
386 LoopT *CurLoop = static_cast<LoopT *>(this); in getLoopsInPreorder() local
387 PreOrderLoops.push_back(CurLoop); in getLoopsInPreorder()
388 getInnerLoopsInPreorder(*CurLoop, PreOrderLoops); in getLoopsInPreorder()
/llvm-project-15.0.7/llvm/lib/CodeGen/
H A DMachineLICM.cpp320 if (!CurLoop->getLoopPredecessor()) in INITIALIZE_PASS_DEPENDENCY()
371 CurLoop = Worklist.pop_back_val(); in runOnMachineFunction()
378 Worklist.append(CurLoop->begin(), CurLoop->end()); in runOnMachineFunction()
382 CurLoop->getExitBlocks(ExitBlocks); in runOnMachineFunction()
649 if (BB != CurLoop->getHeader()) { in IsGuaranteedToExecute()
740 if (!CurLoop->contains(BB)) in HoistOutOfLoop()
998 if (!TII->shouldHoist(I, CurLoop)) in IsLICMCandidate()
1010 return CurLoop->isLoopInvariant(I); in IsLoopInvariantInst()
1030 if (CurLoop->contains(&UseMI)) in HasLoopPHIUse()
1058 if (!CurLoop->contains(UseMI.getParent())) in HasHighOperandLatency()
[all …]
H A DPHIElimination.cpp658 const MachineLoop *CurLoop = MLI ? MLI->getLoopFor(&MBB) : nullptr; in SplitPHIEdges() local
659 bool IsLoopHeader = CurLoop && &MBB == CurLoop->getHeader(); in SplitPHIEdges()
676 if (IsLoopHeader && PreLoop == CurLoop && !SplitAllCriticalEdges) in SplitPHIEdges()
705 if (!ShouldSplit && CurLoop != PreLoop) { in SplitPHIEdges()
710 if (CurLoop) in SplitPHIEdges()
711 dbgs() << "CurLoop: " << *CurLoop; in SplitPHIEdges()
717 ShouldSplit = PreLoop && !PreLoop->contains(CurLoop); in SplitPHIEdges()
H A DMachineTraceMetrics.cpp329 const MachineLoop *CurLoop = getLoopFor(MBB); in pickTracePred() local
331 if (CurLoop && MBB == CurLoop->getHeader()) in pickTracePred()
357 const MachineLoop *CurLoop = getLoopFor(MBB); in pickTraceSucc() local
362 if (CurLoop && Succ == CurLoop->getHeader()) in pickTraceSucc()
365 if (isExitingLoop(CurLoop, getLoopFor(Succ))) in pickTraceSucc()
/llvm-project-15.0.7/llvm/lib/Target/Hexagon/
H A DHexagonVectorLoopCarriedReuse.cpp189 HexagonVectorLoopCarriedReuse(Loop *L) : CurLoop(L){}; in HexagonVectorLoopCarriedReuse()
196 Loop *CurLoop; member in __anon6b8cbac40111::HexagonVectorLoopCarriedReuse
245 if (!CurLoop->getLoopPreheader()) in run()
249 if (!CurLoop->getSubLoops().empty()) in run()
253 if (CurLoop->getNumBlocks() != 1) in run()
527 BasicBlock *LoopPH = CurLoop->getLoopPreheader(); in reuseValue()
575 assert(CurLoop->getSubLoops().empty() && in doVLCR()
577 assert((CurLoop->getNumBlocks() == 1) && in doVLCR()
615 if (BB != CurLoop->getHeader()) { in findDepChainFromPHI()
627 PN->getIncomingValueForBlock(CurLoop->getLoopPreheader()); in findDepChainFromPHI()
[all …]
H A DHexagonLoopIdiomRecognition.cpp132 bool isLegalStore(Loop *CurLoop, StoreInst *SI);
632 Loop *CurLoop; member in __anon47960cc60511::PolynomialMultiplyRecognize
930 if (CurLoop->isLoopInvariant(PV.X)) { in scanSelect()
1778 << *CurLoop << '\n'); in recognize()
1784 BasicBlock *LoopB = CurLoop->getHeader(); in recognize()
1787 if (LoopB != CurLoop->getLoopLatch()) in recognize()
1789 BasicBlock *ExitB = CurLoop->getExitBlock(); in recognize()
2018 if (isLegalStore(CurLoop, SI)) in collectStores()
2116 if (!coverLoop(CurLoop, Insts)) in processCopyingStore()
2150 CurLoop->getUniqueExitBlocks(ExitBlocks); in processCopyingStore()
[all …]
/llvm-project-15.0.7/llvm/include/llvm/Transforms/Utils/
H A DLoopUtils.h151 TargetTransformInfo *, Loop *CurLoop, MemorySSAUpdater &,
220 const Loop *CurLoop);
348 Loop *CurLoop, MemorySSAUpdater &MSSAU,
/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DCloneFunction.cpp937 for (Loop *CurLoop : OrigLoop->getLoopsInPreorder()) { in cloneLoopWithPreheader()
938 Loop *&NewLoop = LMap[CurLoop]; in cloneLoopWithPreheader()
943 Loop *OrigParent = CurLoop->getParentLoop(); in cloneLoopWithPreheader()
953 Loop *CurLoop = LI->getLoopFor(BB); in cloneLoopWithPreheader() local
954 Loop *&NewLoop = LMap[CurLoop]; in cloneLoopWithPreheader()
972 Loop *CurLoop = LI->getLoopFor(BB); in cloneLoopWithPreheader() local
973 if (BB == CurLoop->getHeader()) in cloneLoopWithPreheader()
974 LMap[CurLoop]->moveToHeader(cast<BasicBlock>(VMap[BB])); in cloneLoopWithPreheader()
H A DLoopUnrollAndJam.cpp780 Loop *CurLoop = LI.getLoopFor((*Blocks.begin())->front().getParent()); in checkDependencies() local
781 unsigned CurLoopDepth = CurLoop->getLoopDepth(); in checkDependencies()
H A DLoopUtils.cpp450 llvm::collectChildrenInLoop(DomTreeNode *N, const Loop *CurLoop) { in collectChildrenInLoop() argument
455 if (CurLoop->contains(BB)) in collectChildrenInLoop()
H A DScalarEvolutionExpander.cpp764 const Loop *CurLoop = I->first; in visitAddExpr() local
778 for (; I != E && I->first == CurLoop; ++I) { in visitAddExpr()
/llvm-project-15.0.7/llvm/lib/Transforms/Instrumentation/
H A DInstrProfiling.cpp231 Loop &CurLoop, LoopInfo &LI, BlockFrequencyInfo *BFI) in PGOCounterPromoter() argument
232 : LoopToCandidates(LoopToCands), L(CurLoop), LI(LI), BFI(BFI) { in PGOCounterPromoter()