[llvm] [SLP] NFC: Simplify CandidateVFs initialization (PR #144882)

Alexey Bataev via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 19 08:05:25 PDT 2025


================
@@ -21207,13 +21211,11 @@ bool SLPVectorizerPass::vectorizeStores(
         continue;
       }
 
-      unsigned Sz = 1 + Log2_32(MaxVF) - Log2_32(MinVF);
-      SmallVector<unsigned> CandidateVFs(Sz + (NonPowerOf2VF > 0 ? 1 : 0));
-      unsigned Size = MinVF;
-      for (unsigned &VF : reverse(CandidateVFs)) {
-        VF = Size > MaxVF ? NonPowerOf2VF : Size;
-        Size *= 2;
-      }
+      SmallVector<unsigned> CandidateVFs;
+      for (unsigned VF = std::max(MaxVF, NonPowerOf2VF); VF >= MinVF;
+           VF = divideCeil(VF, 2))
+        CandidateVFs.push_back(VF);
+
----------------
alexey-bataev wrote:

Ok, if you think it makes it easier to understand, though for me the original version is much easier to read :)

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


More information about the llvm-commits mailing list