[llvm] [AMDGPU][InstCombine] Optimize constant shuffle patterns (PR #192246)

Pankaj Dwivedi via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 29 01:07:49 PDT 2026


================
@@ -1559,6 +1846,12 @@ GCNTTIImpl::instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) const {
 
     return IC.replaceOperand(II, 0, PoisonValue::get(VDstIn->getType()));
   }
+  case Intrinsic::amdgcn_wave_shuffle: {
+    if (ST->hasDPP())
+      if (std::optional<Instruction *> R = tryWaveShuffleDPP(*ST, IC, II))
+        return R;
+    return tryOptimizeShufflePattern(IC, II, *ST);
+  }
----------------
PankajDwivedi-25 wrote:

Yes, I think the only difference is in bound_ctrl, which should be true for later folding in nearest VALU-DPP that is there in new code.

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


More information about the llvm-commits mailing list