[llvm] X86: make VBMI2 funnel shifts use VSHLD/VSHRD for const splats (PR #169401)

Phoebe Wang via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 25 18:06:09 PST 2025


================
@@ -61222,6 +61273,8 @@ SDValue X86TargetLowering::PerformDAGCombine(SDNode *N,
   case ISD::INTRINSIC_VOID:  return combineINTRINSIC_VOID(N, DAG, DCI);
   case ISD::FP_TO_SINT_SAT:
   case ISD::FP_TO_UINT_SAT: return combineFP_TO_xINT_SAT(N, DAG, Subtarget);
+  case ISD::FSHL: return combineFunnelShift(N, DAG, DCI, Subtarget);
+  case ISD::FSHR: return combineFunnelShift(N, DAG, DCI, Subtarget);
----------------
phoebewang wrote:

```suggestion
  case ISD::FSHL:
  case ISD::FSHR: return combineFunnelShift(N, DAG, DCI, Subtarget);
```

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


More information about the llvm-commits mailing list