[llvm-branch-commits] [llvm] [LV][REVEC] Initial support for re-vectorisation (PR #208213)

Andrei Elovikov via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Thu Aug 13 11:54:14 PDT 2026


=?utf-8?q?Gaëtan?= Bossu <gaetan.bossu at arm.com>,
=?utf-8?q?Gaëtan?= Bossu <gaetan.bossu at arm.com>,
=?utf-8?q?Gaëtan?= Bossu <gaetan.bossu at arm.com>,
=?utf-8?q?Gaëtan?= Bossu <gaetan.bossu at arm.com>,
=?utf-8?q?Gaëtan?= Bossu <gaetan.bossu at arm.com>,
=?utf-8?q?Gaëtan?= Bossu <gaetan.bossu at arm.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/208213 at github.com>


================
@@ -991,7 +1014,9 @@ bool LoopVectorizationLegality::canVectorizeInstr(Instruction &I) {
   // Check that the stored type is vectorizable.
   if (auto *ST = dyn_cast<StoreInst>(&I)) {
     Type *T = ST->getValueOperand()->getType();
-    if (!VectorType::isValidElementType(T)) {
+    bool CanWidenStoreType = VectorType::isValidElementType(T) ||
+                             (isa<FixedVectorType>(T) && VectorizeVectorLoops);
----------------
eas wrote:

Even if we do decide to keep `VectorizeVectorLoops` option, should we really be checking that on individual instructions in addition to some broad single point bailout based on `LoopContainsVectors`? If yes, this probably deserves a comment in the code somewhere.

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


More information about the llvm-branch-commits mailing list