diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2009-07-29 00:02:19 +0000 |
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2009-07-29 00:02:19 +0000 |
| commit | 0033199c5015754e333dfd18a1b77d6f79c8cbe0 (patch) | |
| tree | 6566ef7372337e467ee0e0a0553403bd86253803 /llvm/utils/TableGen/AsmMatcherEmitter.cpp | |
| parent | 8ae4e24c674f693b2d39087ce5abc38a01c5472c (diff) | |
| download | bcm5719-llvm-0033199c5015754e333dfd18a1b77d6f79c8cbe0.tar.gz bcm5719-llvm-0033199c5015754e333dfd18a1b77d6f79c8cbe0.zip | |
Match X86 register names to number.
llvm-svn: 77404
Diffstat (limited to 'llvm/utils/TableGen/AsmMatcherEmitter.cpp')
| -rw-r--r-- | llvm/utils/TableGen/AsmMatcherEmitter.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/llvm/utils/TableGen/AsmMatcherEmitter.cpp b/llvm/utils/TableGen/AsmMatcherEmitter.cpp index 1d4ad0947ae..d00ff202ad0 100644 --- a/llvm/utils/TableGen/AsmMatcherEmitter.cpp +++ b/llvm/utils/TableGen/AsmMatcherEmitter.cpp @@ -20,17 +20,17 @@ using namespace llvm; void AsmMatcherEmitter::run(raw_ostream &OS) { CodeGenTarget Target; const std::vector<CodeGenRegister> &Registers = Target.getRegisters(); + Record *AsmParser = Target.getAsmParser(); + std::string ClassName = AsmParser->getValueAsString("AsmParserClassName"); std::string Namespace = Registers[0].TheDef->getValueAsString("Namespace"); EmitSourceFileHeader("Assembly Matcher Source Fragment", OS); - OS << "namespace llvm {\n\n"; // Emit the function to match a register name to number. - if (!Namespace.empty()) - OS << "namespace " << Namespace << " {\n"; - OS << "bool MatchRegisterName(const std::string &Name, unsigned &RegNo) {\n"; + OS << "bool " << Target.getName() << ClassName + << "::MatchRegisterName(const StringRef &Name, unsigned &RegNo) {\n"; // FIXME: TableGen should have a fast string matcher generator. for (unsigned i = 0, e = Registers.size(); i != e; ++i) { @@ -44,8 +44,4 @@ void AsmMatcherEmitter::run(raw_ostream &OS) { } OS << " return true;\n"; OS << "}\n"; - - if (!Namespace.empty()) - OS << "}\n"; - OS << "} // End llvm namespace \n"; } |

