Reapply 63765.  Patches for clang and llvm-gcc to follow.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63812 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/utils/TableGen/TableGen.cpp b/utils/TableGen/TableGen.cpp
index c6692f8..98a188e 100644
--- a/utils/TableGen/TableGen.cpp
+++ b/utils/TableGen/TableGen.cpp
@@ -49,6 +49,7 @@
   GenFastISel,
   GenSubtarget,
   GenIntrinsic,
+  GenTgtIntrinsic,
   GenLLVMCConf,
   PrintEnums
 };
@@ -82,6 +83,8 @@
                                "Generate subtarget enumerations"),
                     clEnumValN(GenIntrinsic, "gen-intrinsic",
                                "Generate intrinsic information"),
+                    clEnumValN(GenTgtIntrinsic, "gen-tgt-intrinsic",
+                               "Generate target intrinsic information"),
                     clEnumValN(GenLLVMCConf, "gen-llvmc",
                                "Generate LLVMC configuration library"),
                     clEnumValN(PrintEnums, "print-enums",
@@ -190,6 +193,9 @@
     case GenIntrinsic:
       IntrinsicEmitter(Records).run(*Out);
       break;
+    case GenTgtIntrinsic:
+      IntrinsicEmitter(Records, true).run(*Out);
+      break;
     case GenLLVMCConf:
       LLVMCConfigurationEmitter(Records).run(*Out);
       break;