[llvm] [LV] Support strided load with a stride of -1 (PR #128718)

Alexey Bataev via llvm-commits llvm-commits at lists.llvm.org
Mon May 12 09:27:44 PDT 2025


================
@@ -8444,17 +8529,30 @@ VPRecipeBuilder::tryToWidenMemory(Instruction *I, ArrayRef<VPValue *> Operands,
       VectorPtr = new VPVectorEndPointerRecipe(
           Ptr, &Plan.getVF(), getLoadStoreType(I), Flags, I->getDebugLoc());
     } else {
-      VectorPtr = new VPVectorPointerRecipe(Ptr, getLoadStoreType(I),
+      VectorPtr = new VPVectorPointerRecipe(Ptr, getLoadStoreType(I), Strided,
                                             GEP ? GEP->getNoWrapFlags()
                                                 : GEPNoWrapFlags::none(),
                                             I->getDebugLoc());
     }
     Builder.insert(VectorPtr);
     Ptr = VectorPtr;
   }
-  if (LoadInst *Load = dyn_cast<LoadInst>(I))
+  if (LoadInst *Load = dyn_cast<LoadInst>(I)) {
----------------
alexey-bataev wrote:

`auto *Load = dyn_cast<LoadInst>(I)`

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


More information about the llvm-commits mailing list