diff options
Diffstat (limited to 'utils/TableGen/TableGen.cpp')
-rw-r--r-- | utils/TableGen/TableGen.cpp | 58 |
1 files changed, 30 insertions, 28 deletions
diff --git a/utils/TableGen/TableGen.cpp b/utils/TableGen/TableGen.cpp index 5ff88db..d3408ed 100644 --- a/utils/TableGen/TableGen.cpp +++ b/utils/TableGen/TableGen.cpp @@ -11,12 +11,7 @@ // //===----------------------------------------------------------------------===// -#include "ClangASTNodesEmitter.h" -#include "ClangAttrEmitter.h" -#include "ClangDiagnosticsEmitter.h" -#include "ClangSACheckersEmitter.h" -#include "NeonEmitter.h" -#include "OptParserEmitter.h" +#include "TableGenBackends.h" // Declares all backends. #include "llvm/Support/CommandLine.h" #include "llvm/Support/PrettyStackTrace.h" @@ -27,6 +22,7 @@ #include "llvm/TableGen/TableGenAction.h" using namespace llvm; +using namespace clang; enum ActionType { GenClangAttrClasses, @@ -42,6 +38,7 @@ enum ActionType { GenClangDiagsDefs, GenClangDiagGroups, GenClangDiagsIndexName, + GenClangCommentNodes, GenClangDeclNodes, GenClangStmtNodes, GenClangSACheckers, @@ -90,6 +87,8 @@ namespace { clEnumValN(GenClangDiagsIndexName, "gen-clang-diags-index-name", "Generate Clang diagnostic name index"), + clEnumValN(GenClangCommentNodes, "gen-clang-comment-nodes", + "Generate Clang AST comment nodes"), clEnumValN(GenClangDeclNodes, "gen-clang-decl-nodes", "Generate Clang AST declaration nodes"), clEnumValN(GenClangStmtNodes, "gen-clang-stmt-nodes", @@ -114,68 +113,71 @@ public: bool operator()(raw_ostream &OS, RecordKeeper &Records) { switch (Action) { case GenClangAttrClasses: - ClangAttrClassEmitter(Records).run(OS); + EmitClangAttrClass(Records, OS); break; case GenClangAttrImpl: - ClangAttrImplEmitter(Records).run(OS); + EmitClangAttrImpl(Records, OS); break; case GenClangAttrList: - ClangAttrListEmitter(Records).run(OS); + EmitClangAttrList(Records, OS); break; case GenClangAttrPCHRead: - ClangAttrPCHReadEmitter(Records).run(OS); + EmitClangAttrPCHRead(Records, OS); break; case GenClangAttrPCHWrite: - ClangAttrPCHWriteEmitter(Records).run(OS); + EmitClangAttrPCHWrite(Records, OS); break; case GenClangAttrSpellingList: - ClangAttrSpellingListEmitter(Records).run(OS); + EmitClangAttrSpellingList(Records, OS); break; case GenClangAttrLateParsedList: - ClangAttrLateParsedListEmitter(Records).run(OS); + EmitClangAttrLateParsedList(Records, OS); break; case GenClangAttrTemplateInstantiate: - ClangAttrTemplateInstantiateEmitter(Records).run(OS); + EmitClangAttrTemplateInstantiate(Records, OS); break; case GenClangAttrParsedAttrList: - ClangAttrParsedAttrListEmitter(Records).run(OS); + EmitClangAttrParsedAttrList(Records, OS); break; case GenClangAttrParsedAttrKinds: - ClangAttrParsedAttrKindsEmitter(Records).run(OS); + EmitClangAttrParsedAttrKinds(Records, OS); break; case GenClangDiagsDefs: - ClangDiagsDefsEmitter(Records, ClangComponent).run(OS); + EmitClangDiagsDefs(Records, OS, ClangComponent); break; case GenClangDiagGroups: - ClangDiagGroupsEmitter(Records).run(OS); + EmitClangDiagGroups(Records, OS); break; case GenClangDiagsIndexName: - ClangDiagsIndexNameEmitter(Records).run(OS); + EmitClangDiagsIndexName(Records, OS); + break; + case GenClangCommentNodes: + EmitClangASTNodes(Records, OS, "Comment", ""); break; case GenClangDeclNodes: - ClangASTNodesEmitter(Records, "Decl", "Decl").run(OS); - ClangDeclContextEmitter(Records).run(OS); + EmitClangASTNodes(Records, OS, "Decl", "Decl"); + EmitClangDeclContext(Records, OS); break; case GenClangStmtNodes: - ClangASTNodesEmitter(Records, "Stmt", "").run(OS); + EmitClangASTNodes(Records, OS, "Stmt", ""); break; case GenClangSACheckers: - ClangSACheckersEmitter(Records).run(OS); + EmitClangSACheckers(Records, OS); break; case GenOptParserDefs: - OptParserEmitter(Records, true).run(OS); + EmitOptParser(Records, OS, true); break; case GenOptParserImpl: - OptParserEmitter(Records, false).run(OS); + EmitOptParser(Records, OS, false); break; case GenArmNeon: - NeonEmitter(Records).run(OS); + EmitNeon(Records, OS); break; case GenArmNeonSema: - NeonEmitter(Records).runHeader(OS); + EmitNeonSema(Records, OS); break; case GenArmNeonTest: - NeonEmitter(Records).runTests(OS); + EmitNeonTest(Records, OS); break; } |