[llvm] [IR][RISCV] Add llvm.vector.(de)interleave3/5/7 (PR #124825)
Min-Yih Hsu via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 29 13:46:27 PST 2025
================
@@ -10975,75 +10975,116 @@ SDValue RISCVTargetLowering::lowerVECTOR_DEINTERLEAVE(SDValue Op,
assert(VecVT.isScalableVector() &&
"vector_interleave on non-scalable vector!");
+ const unsigned Factor = Op->getNumValues();
+
// 1 bit element vectors need to be widened to e8
if (VecVT.getVectorElementType() == MVT::i1)
return widenVectorOpsToi8(Op, DL, DAG);
- // If the VT is LMUL=8, we need to split and reassemble.
- if (VecVT.getSizeInBits().getKnownMinValue() ==
+ // If concatenating would exceed LMUL=8, we need to split.
----------------
mshockwave wrote:
Done
https://github.com/llvm/llvm-project/pull/124825
More information about the llvm-commits
mailing list