Home
last modified time | relevance | path

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

/openbsd-src/gnu/llvm/llvm/lib/Transforms/Vectorize/
H A DLoopVectorizationLegality.cpp107 TheLoop(L), ORE(ORE) { in LoopVectorizeHints()
154 LLVMContext &Context = TheLoop->getHeader()->getContext(); in setAlreadyVectorized()
160 MDNode *LoopID = TheLoop->getLoopID(); in setAlreadyVectorized()
166 TheLoop->setLoopID(NewLoopID); in setAlreadyVectorized()
211 TheLoop->getStartLoc(), in emitRemarkWithHints()
212 TheLoop->getHeader()) in emitRemarkWithHints()
216 TheLoop->getStartLoc(), TheLoop->getHeader()); in emitRemarkWithHints()
251 MDNode *LoopID = TheLoop->getLoopID(); in getHintsFromMetadata()
411 static bool hasOutsideLoopUser(const Loop *TheLoop, Instruction *Inst, in hasOutsideLoopUser() argument
420 if (!TheLoop->contains(UI)) { in hasOutsideLoopUser()
[all …]
H A DVPlanHCFGBuilder.cpp37 Loop *TheLoop; member in __anonacdc2b2f0111::PlainCFGBuilder
74 : TheLoop(Lp), LI(LI), Plan(P) {} in PlainCFGBuilder()
157 BasicBlock *PH = TheLoop->getLoopPreheader(); in isExternalDef()
165 BasicBlock *Exit = TheLoop->getUniqueExitBlock(); in isExternalDef()
173 return !TheLoop->contains(Inst); in isExternalDef()
267 BasicBlock *ThePreheaderBB = TheLoop->getLoopPreheader(); in buildPlainCFG()
278 VPBlockBase *HeaderVPBB = getOrCreateVPBB(TheLoop->getHeader()); in buildPlainCFG()
282 LoopBlocksRPO RPO(TheLoop); in buildPlainCFG()
327 BasicBlock *LoopExitBB = TheLoop->getUniqueExitBlock(); in buildPlainCFG()
340 LoopWorkList.push_back(TheLoop); in buildPlainCFG()
[all …]
H A DVPlanHCFGBuilder.h44 Loop *TheLoop;
66 : TheLoop(Lp), LI(LI), Plan(P) {} in VPlanHCFGBuilder()
H A DLoopVectorize.cpp935 StringRef RemarkName, Loop *TheLoop, Instruction *I) { in createLVAnalysis() argument
936 Value *CodeRegion = TheLoop->getHeader(); in createLVAnalysis()
937 DebugLoc DL = TheLoop->getStartLoc(); in createLVAnalysis()
997 OptimizationRemarkEmitter *ORE, Loop *TheLoop, in reportVectorizationFailure() argument
1000 LoopVectorizeHints Hints(TheLoop, true /* doesn't matter */, *ORE); in reportVectorizationFailure()
1002 createLVAnalysis(Hints.vectorizeAnalysisPassName(), ORETag, TheLoop, I) in reportVectorizationFailure()
1007 OptimizationRemarkEmitter *ORE, Loop *TheLoop, in reportVectorizationInfo() argument
1010 LoopVectorizeHints Hints(TheLoop, true /* doesn't matter */, *ORE); in reportVectorizationInfo()
1012 createLVAnalysis(Hints.vectorizeAnalysisPassName(), ORETag, TheLoop, I) in reportVectorizationInfo()
1174 : ScalarEpilogueStatus(SEL), TheLoop(L), PSE(PSE), LI(LI), Legal(Legal), in LoopVectorizationCostModel()
[all …]
/openbsd-src/gnu/llvm/llvm/lib/Analysis/
H A DIVDescriptors.cpp142 static void collectCastInstrs(Loop *TheLoop, Instruction *Exit, in collectCastInstrs() argument
177 if (TheLoop->contains(I) && !Visited.count(I)) in collectCastInstrs()
217 PHINode *Phi, RecurKind Kind, Loop *TheLoop, FastMathFlags FuncFMF, in AddReductionVar() argument
224 if (Phi->getParent() != TheLoop->getHeader()) in AddReductionVar()
229 Value *RdxStart = Phi->getIncomingValueForBlock(TheLoop->getLoopPreheader()); in AddReductionVar()
343 if (!SE->isLoopInvariant(PtrScev, TheLoop)) { in AddReductionVar()
379 isRecurrenceInstr(TheLoop, Phi, Cur, Kind, ReduxDesc, FuncFMF); in AddReductionVar()
449 if (!TheLoop->contains(Parent)) { in AddReductionVar()
492 !isSelectCmpPattern(TheLoop, Phi, UI, IgnoredVal) in AddReductionVar()
592 collectCastInstrs(TheLoop, ExitInstruction, RecurrenceType, CastInsts, in AddReductionVar()
[all …]
H A DLoopAccessAnalysis.cpp622 AccessAnalysis(Loop *TheLoop, AAResults *AA, LoopInfo *LI, in AccessAnalysis() argument
625 : TheLoop(TheLoop), BAA(*AA), AST(BAA), LI(LI), DepCands(DA), PSE(PSE) { in AccessAnalysis()
657 Loop *TheLoop, unsigned &RunningDepId,
666 Loop *TheLoop, const ValueToValueMap &Strides,
702 const Loop *TheLoop; member in __anon42d375aa0111::AccessAnalysis
981 Loop *TheLoop, unsigned &RunningDepId, in createCheckForAccess() argument
987 findForkedPointer(PSE, StridesMap, Ptr, TheLoop); in createCheckForAccess()
991 if (!hasComputableBounds(PSE, Ptr, PtrExpr, TheLoop, Assume)) in createCheckForAccess()
1001 if (!isNoWrap(PSE, StridesMap, Ptr, AccessTy, TheLoop)) { in createCheckForAccess()
1030 RtCheck.insert(TheLoop, Ptr, PtrExpr, AccessTy, IsWrite, DepId, ASId, PSE, in createCheckForAccess()
[all …]
H A DLoopInfo.cpp1043 MDNode *llvm::findOptionMDForLoop(const Loop *TheLoop, StringRef Name) { in findOptionMDForLoop() argument
1044 return findOptionMDForLoopID(TheLoop->getLoopID(), Name); in findOptionMDForLoop()
1053 llvm::findStringMetadataForLoop(const Loop *TheLoop, StringRef Name) { in findStringMetadataForLoop() argument
1054 MDNode *MD = findOptionMDForLoop(TheLoop, Name); in findStringMetadataForLoop()
1067 std::optional<bool> llvm::getOptionalBoolLoopAttribute(const Loop *TheLoop, in getOptionalBoolLoopAttribute() argument
1069 MDNode *MD = findOptionMDForLoop(TheLoop, Name); in getOptionalBoolLoopAttribute()
1085 bool llvm::getBooleanLoopAttribute(const Loop *TheLoop, StringRef Name) { in getBooleanLoopAttribute() argument
1086 return getOptionalBoolLoopAttribute(TheLoop, Name).value_or(false); in getBooleanLoopAttribute()
1089 std::optional<int> llvm::getOptionalIntLoopAttribute(const Loop *TheLoop, in getOptionalIntLoopAttribute() argument
1092 findStringMetadataForLoop(TheLoop, Name).value_or(nullptr); in getOptionalIntLoopAttribute()
[all …]
H A DVectorUtils.cpp1147 auto &DL = TheLoop->getHeader()->getModule()->getDataLayout(); in collectConstStrideAccesses()
1155 LoopBlocksDFS DFS(TheLoop); in collectConstStrideAccesses()
1178 getPtrStride(PSE, ElementTy, Ptr, TheLoop, Strides, in collectConstStrideAccesses()
1397 if (getPtrStride(PSE, AccessTy, MemberPtr, TheLoop, Strides, in analyzeInterleaving()
/openbsd-src/gnu/llvm/llvm/include/llvm/Transforms/Vectorize/
H A DLoopVectorizationLegality.h148 if (llvm::hasUnrollTransformation(TheLoop) & TM_Disable) in getInterleave()
156 hasDisableAllTransformsHint(TheLoop)) in getForce()
196 const Loop *TheLoop; variable
249 : TheLoop(L), LI(LI), PSE(PSE), TTI(TTI), TLI(TLI), DT(DT), LAIs(LAIs), in LoopVectorizationLegality()
466 Loop *TheLoop; variable
H A DLoopVectorize.h207 OptimizationRemarkEmitter *ORE, Loop *TheLoop, Instruction *I = nullptr);
213 OptimizationRemarkEmitter *ORE, Loop *TheLoop,
/openbsd-src/gnu/llvm/llvm/include/llvm/Analysis/
H A DIVDescriptors.h168 AddReductionVar(PHINode *Phi, RecurKind Kind, Loop *TheLoop,
179 isReductionPHI(PHINode *Phi, Loop *TheLoop, RecurrenceDescriptor &RedDes,
194 isFixedOrderRecurrence(PHINode *Phi, Loop *TheLoop,
H A DLoopInfo.h1328 MDNode *findOptionMDForLoop(const Loop *TheLoop, StringRef Name);
1330 std::optional<bool> getOptionalBoolLoopAttribute(const Loop *TheLoop,
1334 bool getBooleanLoopAttribute(const Loop *TheLoop, StringRef Name);
1337 std::optional<int> getOptionalIntLoopAttribute(const Loop *TheLoop,
1342 int getIntLoopAttribute(const Loop *TheLoop, StringRef Name, int Default = 0);
1349 std::optional<const MDOperand *> findStringMetadataForLoop(const Loop *TheLoop,
H A DVectorUtils.h770 : PSE(PSE), TheLoop(L), DT(DT), LI(LI), LAI(LAI) {} in InterleavedAccessInfo()
838 Loop *TheLoop; variable
914 return LoopAccessInfo::blockNeedsPredication(BB, TheLoop, DT); in isPredicated()
H A DLoopAccessAnalysis.h588 static bool blockNeedsPredication(BasicBlock *BB, Loop *TheLoop,
679 Loop *TheLoop; variable
/openbsd-src/gnu/llvm/llvm/lib/Transforms/Utils/
H A DLoopUtils.cpp203 static MDNode *createStringMetadata(Loop *TheLoop, StringRef Name, unsigned V) { in createStringMetadata() argument
204 LLVMContext &Context = TheLoop->getHeader()->getContext(); in createStringMetadata()
214 void llvm::addStringMetadataToLoop(Loop *TheLoop, const char *StringMD, in addStringMetadataToLoop() argument
218 MDNode *LoopID = TheLoop->getLoopID(); in addStringMetadataToLoop()
240 MDs.push_back(createStringMetadata(TheLoop, StringMD, V)); in addStringMetadataToLoop()
242 LLVMContext &Context = TheLoop->getHeader()->getContext(); in addStringMetadataToLoop()
246 TheLoop->setLoopID(NewLoopID); in addStringMetadataToLoop()
250 llvm::getOptionalElementCountLoopAttribute(const Loop *TheLoop) { in getOptionalElementCountLoopAttribute() argument
252 getOptionalIntLoopAttribute(TheLoop, "llvm.loop.vectorize.width"); in getOptionalElementCountLoopAttribute()
256 TheLoop, "llvm.loop.vectorize.scalable.enable"); in getOptionalElementCountLoopAttribute()
[all …]
/openbsd-src/gnu/llvm/llvm/include/llvm/Transforms/Utils/
H A DLoopUtils.h229 getOptionalElementCountLoopAttribute(const Loop *TheLoop);
305 void addStringMetadataToLoop(Loop *TheLoop, const char *MDString,
506 addRuntimeChecks(Instruction *Loc, Loop *TheLoop,
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/
H A DHardwareLoops.cpp111 OptimizationRemarkEmitter *ORE, Loop *TheLoop, Instruction *I = nullptr) { in reportHWLoopFailure() argument
113 ORE->emit(createHWLoopAnalysis(ORETag, TheLoop, I) << Msg); in reportHWLoopFailure()