diff options
-rw-r--r-- | utils/TableGen/DAGISelEmitter.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/utils/TableGen/DAGISelEmitter.cpp b/utils/TableGen/DAGISelEmitter.cpp index 08af66a64a..46e298b6de 100644 --- a/utils/TableGen/DAGISelEmitter.cpp +++ b/utils/TableGen/DAGISelEmitter.cpp @@ -1762,11 +1762,15 @@ namespace { } void DAGISelEmitter::EmitInstructionSelector(std::ostream &OS) { + std::string InstNS = Target.inst_begin()->second.Namespace; + if (!InstNS.empty()) InstNS += "::"; + // Emit boilerplate. OS << "// The main instruction selector code.\n" << "SDOperand SelectCode(SDOperand N) {\n" << " if (N.getOpcode() >= ISD::BUILTIN_OP_END &&\n" - << " N.getOpcode() < PPCISD::FIRST_NUMBER)\n" + << " N.getOpcode() < (ISD::BUILTIN_OP_END+" << InstNS + << "INSTRUCTION_LIST_END))\n" << " return N; // Already selected.\n\n" << " if (!N.Val->hasOneUse()) {\n" << " std::map<SDOperand, SDOperand>::iterator CGMI = CodeGenMap.find(N);\n" |