[llvm] [IA][RISCV] Support VP intrinsics in InterleavedAccessPass (PR #120490)
Luke Lau via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 8 21:26:25 PST 2025
================
@@ -480,6 +671,35 @@ bool InterleavedAccessImpl::lowerInterleavedStore(
bool InterleavedAccessImpl::lowerDeinterleaveIntrinsic(
IntrinsicInst *DI, SmallVectorImpl<Instruction *> &DeadInsts) {
+ if (auto *VPLoad = dyn_cast<VPIntrinsic>(DI->getOperand(0))) {
+ SmallVector<Value *, 8> DeInterleaveResults;
+ unsigned Factor = getVectorDeInterleaveFactor(DI, DeInterleaveResults);
----------------
lukel97 wrote:
Is there anything that would prevent us from using this for non-VP loads? E.g. hoisting this up and plumbing Factor into lowerDeinterleaveIntrinsicToLoad?
https://github.com/llvm/llvm-project/pull/120490
More information about the llvm-commits
mailing list