[llvm] [LV] Check early for supported interleave factors with scalable types [nfc] (PR #111592)

Philip Reames via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 9 09:52:49 PDT 2024


================
@@ -3414,9 +3415,14 @@ bool LoopVectorizationCostModel::interleavedAccessCanBeWidened(
   if (hasIrregularType(ScalarTy, DL))
     return false;
 
+  // We currently only know how to emit interleave/deinterleave with
+  // Factor=2 for scalable vectors.  This is purely an implementation
+  // limit.
+  if (VF.isScalable() && InterleaveFactor != 2)
----------------
preames wrote:

> SVE also has a similar check in interleavedAccessCanBeWidened.
Indeed, it would be better to clean them up too if possible.

I can't find this check except in the AArch64 cost model (now removed).  What are you referring to?

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


More information about the llvm-commits mailing list