Home
last modified time | relevance | path

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

/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DLoopVectorizationLegality.cpp115 TheLoop(L), ORE(ORE) { in LoopVectorizeHints()
162 LLVMContext &Context = TheLoop->getHeader()->getContext(); in setAlreadyVectorized()
168 MDNode *LoopID = TheLoop->getLoopID(); in setAlreadyVectorized()
174 TheLoop->setLoopID(NewLoopID); in setAlreadyVectorized()
219 TheLoop->getStartLoc(), in emitRemarkWithHints()
220 TheLoop->getHeader()) in emitRemarkWithHints()
223 OptimizationRemarkMissed R(LV_NAME, "MissedDetails", TheLoop->getStartLoc(), in emitRemarkWithHints()
224 TheLoop->getHeader()); in emitRemarkWithHints()
258 MDNode *LoopID = TheLoop->getLoopID(); in getHintsFromMetadata()
419 static bool hasOutsideLoopUser(const Loop *TheLoop, Instruction *Inst, in hasOutsideLoopUser() argument
[all …]
H A DLoopVectorize.cpp800 createLVAnalysis(const char *PassName, StringRef RemarkName, Loop *TheLoop, in createLVAnalysis() argument
802 BasicBlock *CodeRegion = I ? I->getParent() : TheLoop->getHeader();
808 DL = TheLoop->getStartLoc();
829 OptimizationRemarkEmitter *ORE, Loop *TheLoop, in reportVectorizationFailure() argument
832 LoopVectorizeHints Hints(TheLoop, true /* doesn't matter */, *ORE); in reportVectorizationFailure()
834 createLVAnalysis(Hints.vectorizeAnalysisPassName(), ORETag, TheLoop, I) in reportVectorizationFailure()
844 Loop *TheLoop, Instruction *I = nullptr, in reportVectorizationInfo() argument
847 LoopVectorizeHints Hints(TheLoop, true /* doesn't matter */, *ORE);
848 ORE->emit(createLVAnalysis(Hints.vectorizeAnalysisPassName(), ORETag, TheLoop,
855 static void reportVectorization(OptimizationRemarkEmitter *ORE, Loop *TheLoop, in reportVectorization() argument
[all …]
H A DVPlanConstruction.cpp34 Loop *TheLoop; member in __anoncb3ea4040111::PlainCFGBuilder
68 : TheLoop(Lp), LI(LI), Plan(std::make_unique<VPlan>(Lp)) {} in PlainCFGBuilder()
139 return !TheLoop->contains(Inst); in isExternalDef()
261 BasicBlock *ThePreheaderBB = TheLoop->getLoopPreheader(); in buildPlainCFG()
270 LoopBlocksRPO RPO(TheLoop); in buildPlainCFG()
317 Plan->getEntry()->setOneSuccessor(getOrCreateVPBB(TheLoop->getHeader())); in buildPlainCFG()
341 std::unique_ptr<VPlan> VPlanTransforms::buildPlainCFG(Loop *TheLoop, in buildPlainCFG() argument
343 PlainCFGBuilder Builder(TheLoop, &LI); in buildPlainCFG()
460 bool RequiresScalarEpilogueCheck, bool TailFolded, Loop *TheLoop, in prepareForVectorization() argument
525 InductionTy, TheLoop); in prepareForVectorization()
[all …]
H A DVPlanTransforms.h57 LLVM_ABI_FOR_TEST static std::unique_ptr<VPlan> buildPlainCFG(Loop *TheLoop,
70 bool RequiresScalarEpilogueCheck, bool TailFolded, Loop *TheLoop,
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DIVDescriptors.cpp141 static void collectCastInstrs(Loop *TheLoop, Instruction *Exit, in collectCastInstrs() argument
176 if (TheLoop->contains(I) && !Visited.count(I)) in collectCastInstrs()
216 PHINode *Phi, RecurKind Kind, Loop *TheLoop, FastMathFlags FuncFMF, in AddReductionVar() argument
223 if (Phi->getParent() != TheLoop->getHeader()) in AddReductionVar()
228 Value *RdxStart = Phi->getIncomingValueForBlock(TheLoop->getLoopPreheader()); in AddReductionVar()
342 if (!SE->isLoopInvariant(PtrScev, TheLoop)) { in AddReductionVar()
378 isRecurrenceInstr(TheLoop, Phi, Cur, Kind, ReduxDesc, FuncFMF, SE); in AddReductionVar()
447 if (!TheLoop->contains(Parent)) { in AddReductionVar()
490 !isAnyOfPattern(TheLoop, Phi, UI, IgnoredVal) in AddReductionVar()
590 collectCastInstrs(TheLoop, ExitInstruction, RecurrenceType, CastInsts, in AddReductionVar()
[all …]
H A DLoopAccessAnalysis.cpp760 AccessAnalysis(const Loop *TheLoop, AAResults *AA, const LoopInfo *LI, in AccessAnalysis() argument
764 : TheLoop(TheLoop), BAA(*AA), AST(BAA), LI(LI), DepCands(DA), PSE(PSE), in AccessAnalysis()
797 Loop *TheLoop, unsigned &RunningDepId,
808 bool canCheckPtrAtRT(RuntimePointerChecking &RtCheck, Loop *TheLoop,
871 const Loop *TheLoop; member in __anonaf4eb2f30111::AccessAnalysis
1219 DenseMap<Value *, unsigned> &DepSetId, Loop *TheLoop, in createCheckForAccess() argument
1224 findForkedPointer(PSE, StridesMap, Ptr, TheLoop); in createCheckForAccess()
1232 if (PSE.getSE()->isLoopInvariant(P.getPointer(), TheLoop)) in createCheckForAccess()
1252 TheLoop, Assume)) { in createCheckForAccess()
1272 RtCheck.insert(TheLoop, Ptr, PtrExpr, AccessTy, IsWrite, DepId, ASId, PSE, in createCheckForAccess()
[all …]
H A DLoopInfo.cpp1067 MDNode *llvm::findOptionMDForLoop(const Loop *TheLoop, StringRef Name) { in findOptionMDForLoop() argument
1068 return findOptionMDForLoopID(TheLoop->getLoopID(), Name); in findOptionMDForLoop()
1077 llvm::findStringMetadataForLoop(const Loop *TheLoop, StringRef Name) { in findStringMetadataForLoop() argument
1078 MDNode *MD = findOptionMDForLoop(TheLoop, Name); in findStringMetadataForLoop()
1091 std::optional<bool> llvm::getOptionalBoolLoopAttribute(const Loop *TheLoop, in getOptionalBoolLoopAttribute() argument
1093 MDNode *MD = findOptionMDForLoop(TheLoop, Name); in getOptionalBoolLoopAttribute()
1109 bool llvm::getBooleanLoopAttribute(const Loop *TheLoop, StringRef Name) { in getBooleanLoopAttribute() argument
1110 return getOptionalBoolLoopAttribute(TheLoop, Name).value_or(false); in getBooleanLoopAttribute()
1113 std::optional<int> llvm::getOptionalIntLoopAttribute(const Loop *TheLoop, in getOptionalIntLoopAttribute() argument
1116 findStringMetadataForLoop(TheLoop, Name).value_or(nullptr); in getOptionalIntLoopAttribute()
[all …]
H A DVectorUtils.cpp1367 auto &DL = TheLoop->getHeader()->getDataLayout(); in collectConstStrideAccesses()
1375 LoopBlocksDFS DFS(TheLoop); in collectConstStrideAccesses()
1398 getPtrStride(PSE, ElementTy, Ptr, TheLoop, Strides, in collectConstStrideAccesses()
1653 if (getPtrStride(PSE, AccessTy, MemberPtr, TheLoop, Strides, in analyzeInterleaving()
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DLoopInfo.h632 LLVM_ABI MDNode *findOptionMDForLoop(const Loop *TheLoop, StringRef Name);
634 LLVM_ABI std::optional<bool> getOptionalBoolLoopAttribute(const Loop *TheLoop,
638 LLVM_ABI bool getBooleanLoopAttribute(const Loop *TheLoop, StringRef Name);
641 LLVM_ABI std::optional<int> getOptionalIntLoopAttribute(const Loop *TheLoop,
646 LLVM_ABI int getIntLoopAttribute(const Loop *TheLoop, StringRef Name,
655 findStringMetadataForLoop(const Loop *TheLoop, StringRef Name);
658 LLVM_ABI CallBase *getLoopConvergenceHeart(const Loop *TheLoop);
H A DIVDescriptors.h180 LLVM_ABI static InstDesc isFindIVPattern(RecurKind Kind, Loop *TheLoop,
196 AddReductionVar(PHINode *Phi, RecurKind Kind, Loop *TheLoop,
207 isReductionPHI(PHINode *Phi, Loop *TheLoop, RecurrenceDescriptor &RedDes,
220 LLVM_ABI static bool isFixedOrderRecurrence(PHINode *Phi, Loop *TheLoop,
H A DVectorUtils.h672 : PSE(PSE), TheLoop(L), DT(DT), LI(LI), LAI(LAI) {} in InterleavedAccessInfo()
740 Loop *TheLoop; variable
821 return LoopAccessInfo::blockNeedsPredication(BB, TheLoop, DT); in isPredicated()
H A DLoopAccessAnalysis.h706 LLVM_ABI static bool blockNeedsPredication(BasicBlock *BB, Loop *TheLoop,
807 Loop *TheLoop; variable
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Vectorize/
H A DLoopVectorizationLegality.h147 if (llvm::hasUnrollTransformation(TheLoop) & TM_Disable) in getInterleave()
155 hasDisableAllTransformsHint(TheLoop)) in getForce()
195 const Loop *TheLoop; variable
260 : TheLoop(L), LI(LI), PSE(PSE), TTI(TTI), TLI(TLI), DT(DT), LAIs(LAIs), in LoopVectorizationLegality()
460 Loop *getLoop() const { return TheLoop; } in getLoop()
565 Loop *TheLoop; variable
H A DLoopVectorize.h173 OptimizationRemarkEmitter *ORE, Loop *TheLoop, Instruction *I = nullptr);
179 Loop *TheLoop,
181 reportVectorizationFailure(DebugMsg, DebugMsg, ORETag, ORE, TheLoop, I);
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DLoopUtils.cpp204 static MDNode *createStringMetadata(Loop *TheLoop, StringRef Name, unsigned V) { in createStringMetadata() argument
205 LLVMContext &Context = TheLoop->getHeader()->getContext(); in createStringMetadata()
215 void llvm::addStringMetadataToLoop(Loop *TheLoop, const char *StringMD, in addStringMetadataToLoop() argument
219 MDNode *LoopID = TheLoop->getLoopID(); in addStringMetadataToLoop()
241 MDs.push_back(createStringMetadata(TheLoop, StringMD, V)); in addStringMetadataToLoop()
243 LLVMContext &Context = TheLoop->getHeader()->getContext(); in addStringMetadataToLoop()
247 TheLoop->setLoopID(NewLoopID); in addStringMetadataToLoop()
251 llvm::getOptionalElementCountLoopAttribute(const Loop *TheLoop) { in getOptionalElementCountLoopAttribute() argument
253 getOptionalIntLoopAttribute(TheLoop, "llvm.loop.vectorize.width"); in getOptionalElementCountLoopAttribute()
257 TheLoop, "llvm.loop.vectorize.scalable.enable"); in getOptionalElementCountLoopAttribute()
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DLoopUtils.h246 getOptionalElementCountLoopAttribute(const Loop *TheLoop);
322 LLVM_ABI void addStringMetadataToLoop(Loop *TheLoop, const char *MDString,
567 addRuntimeChecks(Instruction *Loc, Loop *TheLoop,
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DHardwareLoops.cpp112 OptimizationRemarkEmitter *ORE, Loop *TheLoop, Instruction *I = nullptr) { in reportHWLoopFailure() argument
114 ORE->emit(createHWLoopAnalysis(ORETag, TheLoop, I) << Msg); in reportHWLoopFailure()
/freebsd/contrib/llvm-project/llvm/lib/TableGen/
H A DTGParser.cpp3864 auto TheLoop = std::make_unique<ForeachLoop>(Loc, IterName, ListValue); in ParseForeach() local
3866 TGVarScope *ForeachScope = PushScope(TheLoop.get()); in ParseForeach()
3867 Loops.push_back(std::move(TheLoop)); in ParseForeach()
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64TargetTransformInfo.cpp5836 static bool containsDecreasingPointers(Loop *TheLoop, in containsDecreasingPointers() argument
5839 for (BasicBlock *BB : TheLoop->blocks()) { in containsDecreasingPointers()
5846 if (getPtrStride(*PSE, AccessTy, Ptr, TheLoop, Strides, /*Assume=*/true, in containsDecreasingPointers()