]> granicus.if.org Git - llvm/commitdiff
[ARM] Fix typo when creating ISD::SUB nodes
authorRoger Ferrer Ibanez <roger.ferreribanez@arm.com>
Tue, 12 Sep 2017 07:42:28 +0000 (07:42 +0000)
committerRoger Ferrer Ibanez <roger.ferreribanez@arm.com>
Tue, 12 Sep 2017 07:42:28 +0000 (07:42 +0000)
In D35192, I accidentally introduced a typo when creating ISD::SUB nodes,
giving them two values instead of one.

This fails when the merge_values combiner finds one of these nodes.

This change fixes PR34564.

Differential Revision: https://reviews.llvm.org/D37690

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@313010 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMISelLowering.cpp

index 029c00dbaff097d63a33650a1d5cb66df3c8823f..0bd7c71fe4bbb915d6a333459579e69d9f6c0683 100644 (file)
@@ -4029,7 +4029,7 @@ SDValue ARMTargetLowering::LowerUnsignedALUO(SDValue Op,
     Overflow = ConvertCarryFlagToBooleanCarry(Value.getValue(1), VT, DAG);
     // ARMISD::SUBC returns 0 when we have to borrow, so make it an overflow
     // value. So compute 1 - C.
-    Overflow = DAG.getNode(ISD::SUB, dl, VTs,
+    Overflow = DAG.getNode(ISD::SUB, dl, MVT::i32,
                            DAG.getConstant(1, dl, MVT::i32), Overflow);
     break;
   }
@@ -7469,8 +7469,8 @@ static SDValue LowerADDSUBCARRY(SDValue Op, SelectionDAG &DAG) {
   } else {
     // ARMISD::SUBE expects a carry not a borrow like ISD::SUBCARRY so we
     // have to invert the carry first.
-    Carry =
-        DAG.getNode(ISD::SUB, DL, VTs, DAG.getConstant(1, DL, MVT::i32), Carry);
+    Carry = DAG.getNode(ISD::SUB, DL, MVT::i32,
+                        DAG.getConstant(1, DL, MVT::i32), Carry);
     // This converts the boolean value carry into the carry flag.
     Carry = ConvertBooleanCarryToCarryFlag(Carry, DAG);
 
@@ -7482,8 +7482,8 @@ static SDValue LowerADDSUBCARRY(SDValue Op, SelectionDAG &DAG) {
     Carry = ConvertCarryFlagToBooleanCarry(Result.getValue(1), VT, DAG);
     // But the carry returned by ARMISD::SUBE is not a borrow as expected
     // by ISD::SUBCARRY, so compute 1 - C.
-    Carry =
-        DAG.getNode(ISD::SUB, DL, VTs, DAG.getConstant(1, DL, MVT::i32), Carry);
+    Carry = DAG.getNode(ISD::SUB, DL, MVT::i32,
+                        DAG.getConstant(1, DL, MVT::i32), Carry);
   }
 
   // Return both values.