[llvm] [IA][RISCV] Support VP loads/stores in InterleavedAccessPass (PR #120490)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 27 08:13:33 PST 2025


================
@@ -3152,6 +3153,34 @@ class TargetLoweringBase {
     return false;
   }
 
+  /// Lower an interleaved load to target specific intrinsics. Return
+  /// true on success.
+  ///
+  /// \p Load is a vp.load instruction.
+  /// \p Mask is a mask value
+  /// \p DeinterleaveIntrin is vector.deinterleave intrinsic
+  /// \p DeinterleaveRes is a list of deinterleaved results.
+  virtual bool
+  lowerInterleavedScalableLoad(VPIntrinsic *Load, Value *Mask,
----------------
lukel97 wrote:

If this doesn't have to be strictly restricted to scalable vectors, would it make sense to rename this something like `lowerDeinterleaveIntrinsicToVPLoad` to more closely match the `lowerDeinterleaveIntrinsicToLoad` hook?

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


More information about the llvm-commits mailing list