Implement the custom lowering hook right, returning values for all of the
authorChris Lattner <sabre@nondot.org>
Tue, 16 May 2006 17:14:26 +0000 (17:14 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 16 May 2006 17:14:26 +0000 (17:14 +0000)
arguments at once.

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

lib/Target/X86/X86ISelLowering.cpp

index 1971adae73720f5658c6edb4bd4056f29845443b..3d0194126d73f2ea10ab52b4717d6d2a0cec1c79 100644 (file)
@@ -3519,7 +3519,11 @@ X86TargetLowering::LowerFORMAL_ARGUMENTS(SDOperand Op, SelectionDAG &DAG) {
     else
       LowerCCCArguments(Op, DAG);
   }
     else
       LowerCCCArguments(Op, DAG);
   }
-  return FormalArgs[Op.ResNo];
+  
+  // Return the new list of results.
+  std::vector<MVT::ValueType> RetVTs(Op.Val->value_begin(),
+                                     Op.Val->value_end());
+  return DAG.getNode(ISD::MERGE_VALUES, RetVTs, FormalArgs);
 }
 
 SDOperand X86TargetLowering::LowerMEMSET(SDOperand Op, SelectionDAG &DAG) {
 }
 
 SDOperand X86TargetLowering::LowerMEMSET(SDOperand Op, SelectionDAG &DAG) {