From 6a5b6d7633c96c72ca7d5f8ba0c855e4690ada04 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 13 Feb 2006 08:54:46 +0000 Subject: [PATCH] Add a method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26141 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/SelectionDAG.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/llvm/CodeGen/SelectionDAG.h b/include/llvm/CodeGen/SelectionDAG.h index df695010bf1..f928c6be6b3 100644 --- a/include/llvm/CodeGen/SelectionDAG.h +++ b/include/llvm/CodeGen/SelectionDAG.h @@ -196,6 +196,18 @@ public: /// getZeroExtendInReg - Return the expression required to zero extend the Op /// value assuming it was the smaller SrcTy value. SDOperand getZeroExtendInReg(SDOperand Op, MVT::ValueType SrcTy); + + /// getCALLSEQ_START - Return a new CALLSEQ_START node, which always must have + /// a flag result (to ensure it's not CSE'd). + SDOperand getCALLSEQ_START(SDOperand Chain, SDOperand Op) { + std::vector ResultTys; + ResultTys.push_back(MVT::Other); + ResultTys.push_back(MVT::Flag); + std::vector Ops; + Ops.push_back(Chain); + Ops.push_back(Op); + return getNode(ISD::CALLSEQ_START, ResultTys, Ops); + } /// getNode - Gets or creates the specified node. /// -- 2.34.1