@@ -2493,7 +2493,8 @@ SDValue DAGCombiner::foldBinOpIntoSelect(SDNode *BO) {
2493
2493
return SelectOp;
2494
2494
}
2495
2495
2496
- static SDValue foldAddSubBoolOfMaskedVal(SDNode *N, SelectionDAG &DAG) {
2496
+ static SDValue foldAddSubBoolOfMaskedVal(SDNode *N, const SDLoc &DL,
2497
+ SelectionDAG &DAG) {
2497
2498
assert((N->getOpcode() == ISD::ADD || N->getOpcode() == ISD::SUB) &&
2498
2499
"Expecting add or sub");
2499
2500
@@ -2525,7 +2526,6 @@ static SDValue foldAddSubBoolOfMaskedVal(SDNode *N, SelectionDAG &DAG) {
2525
2526
// add (zext i1 (seteq (X & 1), 0)), C --> sub C+1, (zext (X & 1))
2526
2527
// sub C, (zext i1 (seteq (X & 1), 0)) --> add C-1, (zext (X & 1))
2527
2528
EVT VT = C.getValueType();
2528
- SDLoc DL(N);
2529
2529
SDValue LowBit = DAG.getZExtOrTrunc(SetCC.getOperand(0), DL, VT);
2530
2530
SDValue C1 = IsAdd ? DAG.getConstant(CN->getAPIntValue() + 1, DL, VT) :
2531
2531
DAG.getConstant(CN->getAPIntValue() - 1, DL, VT);
@@ -2875,7 +2875,7 @@ SDValue DAGCombiner::visitADD(SDNode *N) {
2875
2875
if (SDValue Combined = visitADDLike(N))
2876
2876
return Combined;
2877
2877
2878
- if (SDValue V = foldAddSubBoolOfMaskedVal(N, DAG))
2878
+ if (SDValue V = foldAddSubBoolOfMaskedVal(N, DL, DAG))
2879
2879
return V;
2880
2880
2881
2881
if (SDValue V = foldAddSubOfSignBit(N, DAG))
@@ -3874,7 +3874,7 @@ SDValue DAGCombiner::visitSUB(SDNode *N) {
3874
3874
if (N1.isUndef())
3875
3875
return N1;
3876
3876
3877
- if (SDValue V = foldAddSubBoolOfMaskedVal(N, DAG))
3877
+ if (SDValue V = foldAddSubBoolOfMaskedVal(N, DL, DAG))
3878
3878
return V;
3879
3879
3880
3880
if (SDValue V = foldAddSubOfSignBit(N, DAG))
0 commit comments