diff options
author | Dan Gohman <gohman@apple.com> | 2008-07-02 23:23:19 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2008-07-02 23:23:19 +0000 |
commit | cd920d9ecfcefff13c3619a32b58399cac2e3630 (patch) | |
tree | fe113157e59c745b9a853036cd4b7320ac8568b4 /include/llvm/CodeGen/SelectionDAG.h | |
parent | 501e763dfe8337be6a530c61ca31f724f105fd05 (diff) | |
download | external_llvm-cd920d9ecfcefff13c3619a32b58399cac2e3630.tar.gz external_llvm-cd920d9ecfcefff13c3619a32b58399cac2e3630.tar.bz2 external_llvm-cd920d9ecfcefff13c3619a32b58399cac2e3630.zip |
Replace a few uses of SelectionDAG::getTargetNode with
SelectionDAG::SelectNodeTo in the instruction selector. This
updates existing nodes in place instead of creating new ones.
Go back to selecting ISD::DBG_LABEL nodes into
TargetInstrInfo::DBG_LABEL nodes instead of leaving them
unselected, now that SelectNodeTo allows us to update them
in place.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53057 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen/SelectionDAG.h')
-rw-r--r-- | include/llvm/CodeGen/SelectionDAG.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/SelectionDAG.h b/include/llvm/CodeGen/SelectionDAG.h index 916cbf28da..58883e5709 100644 --- a/include/llvm/CodeGen/SelectionDAG.h +++ b/include/llvm/CodeGen/SelectionDAG.h @@ -461,10 +461,19 @@ public: SDOperand Op1, SDOperand Op2, SDOperand Op3); SDNode *SelectNodeTo(SDNode *N, unsigned TargetOpc, MVT VT, SDOperandPtr Ops, unsigned NumOps); + SDNode *SelectNodeTo(SDNode *N, unsigned TargetOpc, MVT VT1, MVT VT2); + SDNode *SelectNodeTo(SDNode *N, unsigned TargetOpc, MVT VT1, + MVT VT2, SDOperandPtr Ops, unsigned NumOps); + SDNode *SelectNodeTo(SDNode *N, unsigned TargetOpc, MVT VT1, + MVT VT2, MVT VT3, SDOperandPtr Ops, unsigned NumOps); + SDNode *SelectNodeTo(SDNode *N, unsigned TargetOpc, MVT VT1, + MVT VT2, SDOperand Op1); SDNode *SelectNodeTo(SDNode *N, unsigned TargetOpc, MVT VT1, MVT VT2, SDOperand Op1, SDOperand Op2); SDNode *SelectNodeTo(SDNode *N, unsigned TargetOpc, MVT VT1, MVT VT2, SDOperand Op1, SDOperand Op2, SDOperand Op3); + SDNode *SelectNodeTo(SDNode *N, unsigned TargetOpc, SDVTList VTs, + SDOperandPtr Ops, unsigned NumOps); /// getTargetNode - These are used for target selectors to create a new node |