/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
H A D | LoopVectorizationLegality.cpp | 112 TheLoop(L), ORE(ORE) { in LoopVectorizeHints() 159 LLVMContext &Context = TheLoop->getHeader()->getContext(); in setAlreadyVectorized() 165 MDNode *LoopID = TheLoop->getLoopID(); in setAlreadyVectorized() 171 TheLoop->setLoopID(NewLoopID); in setAlreadyVectorized() 216 TheLoop->getStartLoc(), in emitRemarkWithHints() 217 TheLoop->getHeader()) in emitRemarkWithHints() 221 TheLoop->getStartLoc(), TheLoop->getHeader()); in emitRemarkWithHints() 256 MDNode *LoopID = TheLoop->getLoopID(); in getHintsFromMetadata() 416 static bool hasOutsideLoopUser(const Loop *TheLoop, Instruction *Inst, in hasOutsideLoopUser() argument 425 if (!TheLoop->contains(UI)) { in hasOutsideLoopUser() [all …]
|
H A D | VPlanHCFGBuilder.cpp | 37 Loop *TheLoop; member in __anon4db757b80111::PlainCFGBuilder 75 : TheLoop(Lp), LI(LI), Plan(P) {} in PlainCFGBuilder() 183 StringRef Name = isHeaderBB(BB, TheLoop) ? "vector.body" : BB->getName(); in getOrCreateVPBB() 190 if (!LoopOfBB || !doesContainLoop(LoopOfBB, TheLoop)) in getOrCreateVPBB() 204 if (LoopOfBB == TheLoop) { in getOrCreateVPBB() 233 BasicBlock *PH = TheLoop->getLoopPreheader(); in isExternalDef() 241 BasicBlock *Exit = TheLoop->getUniqueExitBlock(); in isExternalDef() 249 return !TheLoop->contains(Inst); in isExternalDef() 338 BasicBlock *ThePreheaderBB = TheLoop->getLoopPreheader(); in buildPlainCFG() 348 BasicBlock *LoopExitBB = TheLoop->getUniqueExitBlock(); in buildPlainCFG() [all …]
|
H A D | VPlanHCFGBuilder.h | 43 Loop *TheLoop; 61 : TheLoop(Lp), LI(LI), Plan(P) {} in VPlanHCFGBuilder()
|
H A D | LoopVectorize.cpp | 899 StringRef RemarkName, Loop *TheLoop, Instruction *I) { in createLVAnalysis() argument 900 Value *CodeRegion = TheLoop->getHeader(); in createLVAnalysis() 901 DebugLoc DL = TheLoop->getStartLoc(); in createLVAnalysis() 939 OptimizationRemarkEmitter *ORE, Loop *TheLoop, in reportVectorizationFailure() argument 942 LoopVectorizeHints Hints(TheLoop, true /* doesn't matter */, *ORE); in reportVectorizationFailure() 944 createLVAnalysis(Hints.vectorizeAnalysisPassName(), ORETag, TheLoop, I) in reportVectorizationFailure() 952 OptimizationRemarkEmitter *ORE, Loop *TheLoop, in reportVectorizationInfo() argument 955 LoopVectorizeHints Hints(TheLoop, true /* doesn't matter */, *ORE); in reportVectorizationInfo() 957 createLVAnalysis(Hints.vectorizeAnalysisPassName(), ORETag, TheLoop, I) in reportVectorizationInfo() 963 static void reportVectorization(OptimizationRemarkEmitter *ORE, Loop *TheLoop, in reportVectorization() argument [all …]
|
H A D | VPlan.cpp | 860 bool TailFolded, Loop *TheLoop) { in createInitialVPlan() argument 861 VPIRBasicBlock *Entry = new VPIRBasicBlock(TheLoop->getLoopPreheader()); in createInitialVPlan() 892 BasicBlock *IRExitBlock = TheLoop->getUniqueExitBlock(); in createInitialVPlan() 898 auto *ScalarLatchTerm = TheLoop->getLoopLatch()->getTerminator(); in createInitialVPlan()
|
H A D | VPlan.h | 3343 bool TailFolded, Loop *TheLoop);
|
/freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | IVDescriptors.cpp | 139 static void collectCastInstrs(Loop *TheLoop, Instruction *Exit, in collectCastInstrs() argument 174 if (TheLoop->contains(I) && !Visited.count(I)) in collectCastInstrs() 214 PHINode *Phi, RecurKind Kind, Loop *TheLoop, FastMathFlags FuncFMF, in AddReductionVar() argument 221 if (Phi->getParent() != TheLoop->getHeader()) in AddReductionVar() 226 Value *RdxStart = Phi->getIncomingValueForBlock(TheLoop->getLoopPreheader()); in AddReductionVar() 340 if (!SE->isLoopInvariant(PtrScev, TheLoop)) { in AddReductionVar() 376 isRecurrenceInstr(TheLoop, Phi, Cur, Kind, ReduxDesc, FuncFMF); in AddReductionVar() 445 if (!TheLoop->contains(Parent)) { in AddReductionVar() 488 !isAnyOfPattern(TheLoop, Phi, UI, IgnoredVal) in AddReductionVar() 588 collectCastInstrs(TheLoop, ExitInstruction, RecurrenceType, CastInsts, in AddReductionVar() [all …]
|
H A D | LoopAccessAnalysis.cpp | 661 AccessAnalysis(Loop *TheLoop, AAResults *AA, LoopInfo *LI, in AccessAnalysis() argument 665 : TheLoop(TheLoop), BAA(*AA), AST(BAA), LI(LI), DepCands(DA), PSE(PSE), in AccessAnalysis() 698 Loop *TheLoop, unsigned &RunningDepId, 707 Loop *TheLoop, const DenseMap<Value *, const SCEV *> &Strides, 769 const Loop *TheLoop; member in __anonaf4eb2f30111::AccessAnalysis 1070 Loop *TheLoop, unsigned &RunningDepId, in createCheckForAccess() argument 1076 findForkedPointer(PSE, StridesMap, Ptr, TheLoop); in createCheckForAccess() 1080 if (!hasComputableBounds(PSE, Ptr, PtrExpr, TheLoop, Assume)) in createCheckForAccess() 1090 if (!isNoWrap(PSE, StridesMap, Ptr, AccessTy, TheLoop)) { in createCheckForAccess() 1119 RtCheck.insert(TheLoop, Ptr, PtrExpr, AccessTy, IsWrite, DepId, ASId, PSE, in createCheckForAccess() [all …]
|
H A D | LoopInfo.cpp | 1055 MDNode *llvm::findOptionMDForLoop(const Loop *TheLoop, StringRef Name) { in findOptionMDForLoop() argument 1056 return findOptionMDForLoopID(TheLoop->getLoopID(), Name); in findOptionMDForLoop() 1065 llvm::findStringMetadataForLoop(const Loop *TheLoop, StringRef Name) { in findStringMetadataForLoop() argument 1066 MDNode *MD = findOptionMDForLoop(TheLoop, Name); in findStringMetadataForLoop() 1079 std::optional<bool> llvm::getOptionalBoolLoopAttribute(const Loop *TheLoop, in getOptionalBoolLoopAttribute() argument 1081 MDNode *MD = findOptionMDForLoop(TheLoop, Name); in getOptionalBoolLoopAttribute() 1097 bool llvm::getBooleanLoopAttribute(const Loop *TheLoop, StringRef Name) { in getBooleanLoopAttribute() argument 1098 return getOptionalBoolLoopAttribute(TheLoop, Name).value_or(false); in getBooleanLoopAttribute() 1101 std::optional<int> llvm::getOptionalIntLoopAttribute(const Loop *TheLoop, in getOptionalIntLoopAttribute() argument 1104 findStringMetadataForLoop(TheLoop, Name).value_or(nullptr); in getOptionalIntLoopAttribute() [all …]
|
H A D | VectorUtils.cpp | 1126 auto &DL = TheLoop->getHeader()->getDataLayout(); in collectConstStrideAccesses() 1134 LoopBlocksDFS DFS(TheLoop); in collectConstStrideAccesses() 1157 getPtrStride(PSE, ElementTy, Ptr, TheLoop, Strides, in collectConstStrideAccesses() 1412 if (getPtrStride(PSE, AccessTy, MemberPtr, TheLoop, Strides, in analyzeInterleaving()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Vectorize/ |
H A D | LoopVectorizationLegality.h | 147 if (llvm::hasUnrollTransformation(TheLoop) & TM_Disable) in getInterleave() 155 hasDisableAllTransformsHint(TheLoop)) in getForce() 195 const Loop *TheLoop; variable 248 : TheLoop(L), LI(LI), PSE(PSE), TTI(TTI), TLI(TLI), DT(DT), LAIs(LAIs), in LoopVectorizationLegality() 397 Loop *getLoop() const { return TheLoop; } in getLoop() 467 Loop *TheLoop; variable
|
H A D | LoopVectorize.h | 208 OptimizationRemarkEmitter *ORE, Loop *TheLoop, Instruction *I = nullptr);
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
H A D | LoopInfo.h | 633 MDNode *findOptionMDForLoop(const Loop *TheLoop, StringRef Name); 635 std::optional<bool> getOptionalBoolLoopAttribute(const Loop *TheLoop, 639 bool getBooleanLoopAttribute(const Loop *TheLoop, StringRef Name); 642 std::optional<int> getOptionalIntLoopAttribute(const Loop *TheLoop, 647 int getIntLoopAttribute(const Loop *TheLoop, StringRef Name, int Default = 0); 654 std::optional<const MDOperand *> findStringMetadataForLoop(const Loop *TheLoop, 658 CallBase *getLoopConvergenceHeart(const Loop *TheLoop);
|
H A D | IVDescriptors.h | 170 AddReductionVar(PHINode *Phi, RecurKind Kind, Loop *TheLoop, 175 /// Returns true if Phi is a reduction in TheLoop. The RecurrenceDescriptor 181 isReductionPHI(PHINode *Phi, Loop *TheLoop, RecurrenceDescriptor &RedDes, 194 static bool isFixedOrderRecurrence(PHINode *Phi, Loop *TheLoop,
|
H A D | VectorUtils.h | 617 : PSE(PSE), TheLoop(L), DT(DT), LI(LI), LAI(LAI) {} in InterleavedAccessInfo() 685 Loop *TheLoop; variable 767 return LoopAccessInfo::blockNeedsPredication(BB, TheLoop, DT); in isPredicated()
|
H A D | LoopAccessAnalysis.h | 655 static bool blockNeedsPredication(BasicBlock *BB, Loop *TheLoop, 751 Loop *TheLoop; variable
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | LoopUtils.cpp | 203 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 …]
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
H A D | LoopUtils.h | 239 getOptionalElementCountLoopAttribute(const Loop *TheLoop); 315 void addStringMetadataToLoop(Loop *TheLoop, const char *MDString, 537 addRuntimeChecks(Instruction *Loc, Loop *TheLoop,
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | HardwareLoops.cpp | 113 OptimizationRemarkEmitter *ORE, Loop *TheLoop, Instruction *I = nullptr) { in reportHWLoopFailure() argument 115 ORE->emit(createHWLoopAnalysis(ORETag, TheLoop, I) << Msg); in reportHWLoopFailure()
|
/freebsd/contrib/llvm-project/llvm/lib/TableGen/ |
H A D | TGParser.cpp | 3777 auto TheLoop = std::make_unique<ForeachLoop>(Loc, IterName, ListValue); in ParseForeach() local 3779 TGVarScope *ForeachScope = PushScope(TheLoop.get()); in ParseForeach() 3780 Loops.push_back(std::move(TheLoop)); in ParseForeach()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64TargetTransformInfo.cpp | 4316 static bool containsDecreasingPointers(Loop *TheLoop, in containsDecreasingPointers() argument 4319 for (BasicBlock *BB : TheLoop->blocks()) { in containsDecreasingPointers() 4326 if (getPtrStride(*PSE, AccessTy, Ptr, TheLoop, Strides, /*Assume=*/true, in containsDecreasingPointers()
|