[clang] [llvm] [RISCV][P-ext] Support Packed Narrowing Zip (PR #210040)
Craig Topper via cfe-commits
cfe-commits at lists.llvm.org
Thu Jul 16 22:18:06 PDT 2026
================
@@ -6512,6 +6512,51 @@ lowerVECTOR_SHUFFLEAsRV32PNarrowingShift(ShuffleVectorSDNode *SVN,
DAG.getConstant(Index * EltBits, DL, MVT::i32));
}
+// Match a strided-interleave shuffle that forms a P-extension packed
+// narrowing zip:
+// <a0, b0, a2, b2, ...> -> ppaire.*
+// <a1, b1, a3, b3, ...> -> ppairo.*
+static SDValue lowerVECTOR_SHUFFLEAsPNarrowingZip(ShuffleVectorSDNode *SVN,
----------------
topperc wrote:
NarrowingZip->PPair? The bitcast+ppair is what makes it narrowing but we aren't matching the bitcast here. And this function will be reused for the ppaire/ppairo intrinsics.
https://github.com/llvm/llvm-project/pull/210040
More information about the cfe-commits
mailing list