[llvm] [LV] Convert gather loads with invariant stride into strided loads (PR #147297)
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 1 03:29:28 PDT 2025
================
@@ -3307,6 +3332,52 @@ struct VPWidenLoadEVLRecipe final : public VPWidenMemoryRecipe, public VPValue {
}
};
+/// A recipe for strided load operations, using the base address, stride, and an
+/// optional mask. This recipe will generate an vp.strided.load intrinsic call
+/// to represent memory accesses with a fixed stride.
+struct VPWidenStridedLoadRecipe final : public VPWidenMemoryRecipe,
+ public VPValue {
+ VPWidenStridedLoadRecipe(LoadInst &Load, VPValue *Addr, VPValue *Stride,
----------------
fhahn wrote:
Can we store the required info independent of the LLVM IR instruction?
It would also help to clarify what information is actually used and why this cannot be simply a VPWidenIntrinsicsRecipe, as it would map 1-1 to an intrinsic
https://github.com/llvm/llvm-project/pull/147297
More information about the llvm-commits
mailing list