From 02b86f52ed19213ef4911da902145155c03fb136 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 19 Jan 2005 20:19:58 +0000 Subject: [PATCH] Add an accessor for targets that pass args in regs git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19702 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/SelectionDAG.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/include/llvm/CodeGen/SelectionDAG.h b/include/llvm/CodeGen/SelectionDAG.h index b4f67fe7c15..8c2020d8d2c 100644 --- a/include/llvm/CodeGen/SelectionDAG.h +++ b/include/llvm/CodeGen/SelectionDAG.h @@ -131,6 +131,20 @@ public: return NN; } + /// getCall - This is identical to the one above, and should be used for calls + /// where arguments are passed in physical registers. This destroys the + /// RetVals and ArgsInRegs vectors. + SDNode *getCall(std::vector &RetVals, SDOperand Chain, + SDOperand Callee, std::vector &ArgsInRegs) { + ArgsInRegs.insert(ArgsInRegs.begin(), Callee); + ArgsInRegs.insert(ArgsInRegs.begin(), Chain); + SDNode *NN = new SDNode(ISD::CALL, ArgsInRegs); + NN->setValueTypes(RetVals); + AllNodes.push_back(NN); + return NN; + } + + SDOperand getSetCC(ISD::CondCode, MVT::ValueType VT, SDOperand LHS, SDOperand RHS); -- 2.34.1