summaryrefslogtreecommitdiffstats
path: root/llvm/utils/TableGen/DAGISelEmitter.cpp
diff options
context:
space:
mode:
authorJim Laskey <jlaskey@mac.com>2007-01-26 17:29:20 +0000
committerJim Laskey <jlaskey@mac.com>2007-01-26 17:29:20 +0000
commit214c582002b4e9569244e711acfb1051641cdf65 (patch)
treec5ed83df84c21811d1c8127cf0fa0b88ff76990c /llvm/utils/TableGen/DAGISelEmitter.cpp
parent697ba1a507f0e248652165c4d3f84bed9660bbb2 (diff)
downloadbcm5719-llvm-214c582002b4e9569244e711acfb1051641cdf65.tar.gz
bcm5719-llvm-214c582002b4e9569244e711acfb1051641cdf65.zip
Files missing from LABEL check in.
llvm-svn: 33539
Diffstat (limited to 'llvm/utils/TableGen/DAGISelEmitter.cpp')
-rw-r--r--llvm/utils/TableGen/DAGISelEmitter.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/llvm/utils/TableGen/DAGISelEmitter.cpp b/llvm/utils/TableGen/DAGISelEmitter.cpp
index fbd0a9660ba..6c9825de0f6 100644
--- a/llvm/utils/TableGen/DAGISelEmitter.cpp
+++ b/llvm/utils/TableGen/DAGISelEmitter.cpp
@@ -3688,6 +3688,14 @@ void DAGISelEmitter::EmitInstructionSelector(std::ostream &OS) {
<< " return New.Val;\n"
<< "}\n\n";
+ OS << "SDNode *Select_LABEL(const SDOperand &N) {\n"
+ << " SDOperand Chain = N.getOperand(0);\n"
+ << " SDOperand N1 = N.getOperand(1);\n"
+ << " AddToISelQueue(Chain);\n"
+ << " return CurDAG->getTargetNode(TargetInstrInfo::LABEL,\n"
+ << " MVT::Other, N1, Chain);\n"
+ << "}\n\n";
+
OS << "// The main instruction selector code.\n"
<< "SDNode *SelectCode(SDOperand N) {\n"
<< " if (N.getOpcode() >= ISD::BUILTIN_OP_END &&\n"
@@ -3722,7 +3730,8 @@ void DAGISelEmitter::EmitInstructionSelector(std::ostream &OS) {
<< " AddToISelQueue(N.getOperand(i));\n"
<< " return NULL;\n"
<< " }\n"
- << " case ISD::INLINEASM: return Select_INLINEASM(N);\n";
+ << " case ISD::INLINEASM: return Select_INLINEASM(N);\n"
+ << " case ISD::LABEL: return Select_LABEL(N);\n";
// Loop over all of the case statements, emiting a call to each method we
OpenPOWER on IntegriCloud