diff options
-rw-r--r-- | lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp index aa8ffaae07..30b55156c2 100644 --- a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp +++ b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp @@ -5401,6 +5401,10 @@ void SelectionDAGLegalize::ExpandOp(SDOperand Op, SDOperand &Lo, SDOperand &Hi){ break; case ISD::MERGE_VALUES: + if (Node->getNumValues() == 1) { + ExpandOp(Op.getOperand(0), Lo, Hi); + break; + } // FIXME: For now only expand i64,chain = MERGE_VALUES (x, y) assert(Op.ResNo == 0 && Node->getNumValues() == 2 && Op.getValue(1).getValueType() == MVT::Other && |