[llvm] [DAGCombiner] Add combine for vector interleave of splats (PR #151110)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 29 07:48:27 PDT 2025


================
@@ -25397,6 +25429,9 @@ SDValue DAGCombiner::visitCONCAT_VECTORS(SDNode *N) {
     return DAG.getBuildVector(VT, SDLoc(N), Opnds);
   }
 
+  if (SDValue V = combineConcatVectorInterleave(N, DAG))
+    return V;
+
----------------
lukel97 wrote:

Can we get an away with doing this directly on the interleave node?

We could combine it to a wide splat and then use extract_subvector for each resulting vector.

This is just an idea though so I'm not 100% if it'll work.

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


More information about the llvm-commits mailing list