[llvm] [LV] Support tail-folded epilogue loops (PR #208764)
David Sherwood via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 21 04:05:20 PDT 2026
================
@@ -880,6 +878,8 @@ class LoopVectorizationPlanner {
/// The interleaved access analysis.
InterleavedAccessInfo &IAI;
+ /// The interleaved access analysis for the case of tail-folded epilogue.
+ std::unique_ptr<InterleavedAccessInfo> EpilogueTfIAI;
----------------
david-arm wrote:
Alternatively, you could fix the piece of code that depends upon `IAI` after the vplans have been created so that we don't need this extra parameter. It looks like we're adding this purely to work around an existing bug where vplan execution still indirectly depends upon the legacy cost model. For example, the existing `IAI` here is a reference, presumably a reference to the same object that lives in LoopVectorizationCostModel. If we simply moved the actual underlying object from LoopVectorizationCostModel to LoopVectorizationPlanner then we wouldn't need the reference I think. For example, wherever the variable `CM` gets reset we could copy the information from `CM` to the planner first perhaps?
https://github.com/llvm/llvm-project/pull/208764
More information about the llvm-commits
mailing list