[llvm] [VPlan] Run narrowInterleaveGroups during general VPlan optimizations. (PR #149706)

David Sherwood via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 11 08:27:39 PDT 2025


================
@@ -333,14 +333,19 @@ struct VPlanTransforms {
   static DenseMap<const SCEV *, Value *> expandSCEVs(VPlan &Plan,
                                                      ScalarEvolution &SE);
 
-  /// Try to convert a plan with interleave groups with VF elements to a plan
-  /// with the interleave groups replaced by wide loads and stores processing VF
-  /// elements, if all transformed interleave groups access the full vector
-  /// width (checked via \o VectorRegWidth). This effectively is a very simple
-  /// form of loop-aware SLP, where we use interleave groups to identify
-  /// candidates.
-  static void narrowInterleaveGroups(VPlan &Plan, ElementCount VF,
-                                     unsigned VectorRegWidth);
+  /// Try to find a single VF among \p Plan's VFs for which all interleave
+  /// groups (with VF elements) can be replaced by wide loads ans tores
----------------
david-arm wrote:

nit: `/// groups (with known minimum VF elements)`
nit: `by wide loads and stores`

https://github.com/llvm/llvm-project/pull/149706


More information about the llvm-commits mailing list