generalize
authorChris Lattner <sabre@nondot.org>
Sun, 4 Mar 2007 20:08:45 +0000 (20:08 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 4 Mar 2007 20:08:45 +0000 (20:08 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34910 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/DAGCombiner.cpp

index d48f4190340b9ff094239c12bcbde35d0b729ff7..9fdbe266ec2fd2cf4dd5473a44672590aaf523d3 100644 (file)
@@ -757,8 +757,10 @@ SDOperand DAGCombiner::visitADDC(SDNode *N) {
                      SDOperand(N, 1));
   
   // canonicalize constant to RHS.
-  if (N0C && !N1C)
-    return DAG.getNode(ISD::ADDC, VT, N1, N0);
+  if (N0C && !N1C) {
+    SDOperand Ops[] = { N1, N0 };
+    return DAG.getNode(ISD::ADDC, N->getVTList(), Ops, 2);
+  }
   
   // fold (add x, 0) -> x + no carry out
   //if (N1C && N1C->isNullValue())
@@ -772,11 +774,13 @@ SDOperand DAGCombiner::visitADDE(SDNode *N) {
   SDOperand N1 = N->getOperand(1);
   ConstantSDNode *N0C = dyn_cast<ConstantSDNode>(N0);
   ConstantSDNode *N1C = dyn_cast<ConstantSDNode>(N1);
-  MVT::ValueType VT = N0.getValueType();
+  //MVT::ValueType VT = N0.getValueType();
   
   // canonicalize constant to RHS
-  if (N0C && !N1C)
-    return DAG.getNode(ISD::ADDE, VT, N1, N0, N->getOperand(2));
+  if (N0C && !N1C) {
+    SDOperand Ops[] = { N1, N0, N->getOperand(2) };
+    return DAG.getNode(ISD::ADDE, N->getVTList(), Ops, 3);
+  }
   
   // fold (add x, 0) -> x
   //if (N1C && N1C->isNullValue())