[llvm] [CodeGen] Expand unsupported interleave to shuffles (PR #210494)

Kamlesh Kumar via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 7 00:26:52 PDT 2026


================
@@ -15277,6 +15287,15 @@ SDValue RISCVTargetLowering::lowerVECTOR_INTERLEAVE(SDValue Op,
   if (VecVT.getScalarSizeInBits() < Subtarget.getELen()) {
     Interleaved = getWideningInterleave(Op.getOperand(0), Op.getOperand(1), DL,
                                         DAG, Subtarget);
+  } else if (Factor == 2 && VecVT.isFixedLengthVector()) {
+    unsigned NumElts = VecVT.getVectorNumElements();
+    SmallVector<int, 8> ShuffleMask = createInterleaveMask(NumElts, Factor);
+    SmallVector<SDValue, 2> Results;
----------------
kamleshbhalui wrote:

yes

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


More information about the llvm-commits mailing list