Add another Clang TableGen-backend (-gen-clang-diags-options) for emitting
declarations for controlling groups of warnings. Currently this transforms:

  def UnusedMacrosDiags : Option<"unused-macros", [pp_macro_not_used]>;
  
into:

  static const diag::kind UnusedMacrosDiags[] = { diag::pp_macro_not_used };



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67239 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/utils/TableGen/TableGen.cpp b/utils/TableGen/TableGen.cpp
index 22c5d50..0e35629 100644
--- a/utils/TableGen/TableGen.cpp
+++ b/utils/TableGen/TableGen.cpp
@@ -48,6 +48,7 @@
   GenInstrEnums, GenInstrs, GenAsmWriter,
   GenCallingConv,
   GenClangDiagsDefs,
+  GenClangDiagsOptions,
   GenDAGISel,
   GenFastISel,
   GenSubtarget,
@@ -90,6 +91,8 @@
                                "Generate target intrinsic information"),
                     clEnumValN(GenClangDiagsDefs, "gen-clang-diags-defs",
                                "Generate Clang diagnostics definitions"),
+                    clEnumValN(GenClangDiagsOptions, "gen-clang-diags-options",
+                               "Generate options for Clang diagnostics"),
                     clEnumValN(GenLLVMCConf, "gen-llvmc",
                                "Generate LLVMC configuration library"),
                     clEnumValN(PrintEnums, "print-enums",
@@ -209,6 +212,9 @@
     case GenClangDiagsDefs:
       ClangDiagsDefsEmitter(Records, ClangComponent).run(*Out);
       break;
+    case GenClangDiagsOptions:
+      ClangOptionsEmitter(Records).run(*Out);
+      break;        
     case GenDAGISel:
       DAGISelEmitter(Records).run(*Out);
       break;