simplify this code, return only ever has zero or one operands.
authorChris Lattner <sabre@nondot.org>
Sun, 28 Feb 2010 18:53:13 +0000 (18:53 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 28 Feb 2010 18:53:13 +0000 (18:53 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97408 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp

index 15f17b6d97f19e8bb51726f7a87b5314e0cf7d44..ed939a7f6fecaeb23433eb3c7a1003cf58f826a3 100644 (file)
@@ -849,14 +849,12 @@ void SelectionDAGBuilder::visitRet(ReturnInst &I) {
 
     Chain = DAG.getNode(ISD::TokenFactor, getCurDebugLoc(),
                         MVT::Other, &Chains[0], NumValues);
-  } else {
-    for (unsigned i = 0, e = I.getNumOperands(); i != e; ++i) {
-      SmallVector<EVT, 4> ValueVTs;
-      ComputeValueVTs(TLI, I.getOperand(i)->getType(), ValueVTs);
-      unsigned NumValues = ValueVTs.size();
-      if (NumValues == 0) continue;
-
-      SDValue RetOp = getValue(I.getOperand(i));
+  } else if (I.getNumOperands() != 0) {
+    SmallVector<EVT, 4> ValueVTs;
+    ComputeValueVTs(TLI, I.getOperand(0)->getType(), ValueVTs);
+    unsigned NumValues = ValueVTs.size();
+    if (NumValues) {
+      SDValue RetOp = getValue(I.getOperand(0));
       for (unsigned j = 0, f = NumValues; j != f; ++j) {
         EVT VT = ValueVTs[j];