[llvm] [DAGCombiner] Fold select into partial.reduce.add operands. (PR #167857)
Luke Lau via llvm-commits
llvm-commits at lists.llvm.org
Sun Nov 16 19:25:38 PST 2025
================
@@ -13152,7 +13182,18 @@ SDValue DAGCombiner::foldPartialReduceAdd(SDNode *N) {
if (!llvm::isOneOrOneSplat(Op2) && !llvm::isOneOrOneSplatFP(Op2))
return SDValue();
+ SDValue Pred;
unsigned Op1Opcode = Op1.getOpcode();
+ if (Op1Opcode == ISD::VSELECT) {
+ APInt C;
+ if (!ISD::isConstantSplatVector(Op1->getOperand(2).getNode(), C) ||
+ !C.isZero())
+ return SDValue();
----------------
lukel97 wrote:
```suggestion
if (Op1Opcode == ISD::VSELECT && isNullOrNullSplat(Op1->getOperand(2))) {
```
https://github.com/llvm/llvm-project/pull/167857
More information about the llvm-commits
mailing list