Add initial implementation of a TableGen backend for converting Clang-warnings
tablegen files to the original .def preprocessor include files. This is my first
TableGen backend; I don't claim that it is awesome.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66971 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/utils/TableGen/TableGen.cpp b/utils/TableGen/TableGen.cpp
index 36ad999..e6ed092 100644
--- a/utils/TableGen/TableGen.cpp
+++ b/utils/TableGen/TableGen.cpp
@@ -34,6 +34,7 @@
#include "SubtargetEmitter.h"
#include "IntrinsicEmitter.h"
#include "LLVMCConfigurationEmitter.h"
+#include "ClangDiagnosticsEmitter.h"
#include <algorithm>
#include <cstdio>
#include <fstream>
@@ -46,6 +47,7 @@
GenRegisterEnums, GenRegister, GenRegisterHeader,
GenInstrEnums, GenInstrs, GenAsmWriter,
GenCallingConv,
+ GenClangDiagsDefs,
GenDAGISel,
GenFastISel,
GenSubtarget,
@@ -86,6 +88,8 @@
"Generate intrinsic information"),
clEnumValN(GenTgtIntrinsic, "gen-tgt-intrinsic",
"Generate target intrinsic information"),
+ clEnumValN(GenClangDiagsDefs, "gen-clang-diags-defs",
+ "Generate Clang diagnostics definitions"),
clEnumValN(GenLLVMCConf, "gen-llvmc",
"Generate LLVMC configuration library"),
clEnumValN(PrintEnums, "print-enums",
@@ -185,7 +189,6 @@
case GenRegisterHeader:
RegisterInfoEmitter(Records).runHeader(*Out);
break;
-
case GenInstrEnums:
InstrEnumEmitter(Records).run(*Out);
break;
@@ -198,7 +201,9 @@
case GenAsmWriter:
AsmWriterEmitter(Records).run(*Out);
break;
-
+ case GenClangDiagsDefs:
+ ClangDiagsDefsEmitter(Records).run(*Out);
+ break;
case GenDAGISel:
DAGISelEmitter(Records).run(*Out);
break;