[llvm] [VPlan] Create epilogue minimum iteration check in VPlan. (PR #157545)
via llvm-commits
llvm-commits at lists.llvm.org
Sun Sep 21 14:05:47 PDT 2025
================
@@ -707,25 +702,16 @@ class EpilogueVectorizerEpilogueLoop : public InnerLoopAndEpilogueVectorizer {
: InnerLoopAndEpilogueVectorizer(OrigLoop, PSE, LI, DT, TTI, AC, EPI, CM,
BFI, PSI, Checks, Plan, EPI.EpilogueVF,
EPI.EpilogueVF, EPI.EpilogueUF) {
- TripCount = EPI.TripCount;
}
/// Implements the interface for creating a vectorized skeleton using the
/// *epilogue loop* strategy (i.e., the second pass of VPlan execution).
BasicBlock *createVectorizedLoopSkeleton() final;
- /// Return the additional bypass block which targets the scalar loop by
- /// skipping the epilogue loop after completing the main loop.
- BasicBlock *getAdditionalBypassBlock() const {
- assert(AdditionalBypassBlock &&
- "Trying to access AdditionalBypassBlock but it has not been set");
- return AdditionalBypassBlock;
- }
-
protected:
/// Emits an iteration count bypass check after the main vector loop has
/// finished to see if there are any iterations left to execute by either
/// the vector epilogue or the scalar epilogue.
- BasicBlock *emitMinimumVectorEpilogueIterCountCheck(BasicBlock *VectorPH,
+ BasicBlock *emitMinimumVectorEpilogueIterationCheck(BasicBlock *VectorPH,
BasicBlock *Bypass,
BasicBlock *Insert);
----------------
ayalz wrote:
Is this called or can it be dce'd, having been replaced by a VPlanTransform?
https://github.com/llvm/llvm-project/pull/157545
More information about the llvm-commits
mailing list