Make LowerCallTo more generic and useful.
authorChris Lattner <sabre@nondot.org>
Sat, 8 Jan 2005 19:25:39 +0000 (19:25 +0000)
committerChris Lattner <sabre@nondot.org>
Sat, 8 Jan 2005 19:25:39 +0000 (19:25 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19373 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Target/TargetLowering.h

index 9d7ccd83fb421eef54937355dbbc1190ec21d9a6..ee1ac36c0c17a849d65774af4d15eac48843df97 100644 (file)
@@ -165,10 +165,13 @@ public:
   LowerArguments(Function &F, SelectionDAG &DAG) = 0;
 
   /// LowerCallTo - This hook lowers an abstract call to a function into an
-  /// actual call.
+  /// actual call.  This returns a pair of operands.  The first element is the
+  /// return value for the function (if RetTy is not VoidTy).  The second
+  /// element is the outgoing token chain.
   typedef std::vector<std::pair<SDOperand, const Type*> > ArgListTy;
-  virtual SDNode *LowerCallTo(const Type *RetTy, SDOperand Callee,
-                              ArgListTy &Args, SelectionDAG &DAG) = 0;
+  virtual std::pair<SDOperand, SDOperand>
+  LowerCallTo(SDOperand Chain, const Type *RetTy, SDOperand Callee,
+              ArgListTy &Args, SelectionDAG &DAG) = 0;
 };
 } // end llvm namespace