浏览代码

Hook up --help-hidden with PrintHelp() (#1060)

We have defined --help-hidden in HLSLOptions.td but the compiler
is not set up to respect it. This commit hooks up them.
Lei Zhang 7 年之前
父节点
当前提交
236cdc1cdf
共有 3 个文件被更改,包括 5 次插入1 次删除
  1. 1 0
      include/dxc/Support/HLSLOptions.h
  2. 1 0
      lib/DxcSupport/HLSLOptions.cpp
  3. 3 1
      tools/clang/tools/dxc/dxc.cpp

+ 1 - 0
include/dxc/Support/HLSLOptions.h

@@ -134,6 +134,7 @@ public:
   bool OptDump = false; // OPT_ODump - dump optimizer commands
   bool OptDump = false; // OPT_ODump - dump optimizer commands
   bool OutputWarnings = true; // OPT_no_warnings
   bool OutputWarnings = true; // OPT_no_warnings
   bool ShowHelp = false;  // OPT_help
   bool ShowHelp = false;  // OPT_help
+  bool ShowHelpHidden = false; // OPT__help_hidden
   bool UseColor = false; // OPT_Cc
   bool UseColor = false; // OPT_Cc
   bool UseHexLiterals = false; // OPT_Lx
   bool UseHexLiterals = false; // OPT_Lx
   bool UseInstructionByteOffsets = false; // OPT_No
   bool UseInstructionByteOffsets = false; // OPT_No

+ 1 - 0
lib/DxcSupport/HLSLOptions.cpp

@@ -217,6 +217,7 @@ int ReadDxcOpts(const OptTable *optionTable, unsigned flagsToInclude,
   }
   }
 
 
   opts.ShowHelp = Args.hasFlag(OPT_help, OPT_INVALID, false);
   opts.ShowHelp = Args.hasFlag(OPT_help, OPT_INVALID, false);
+  opts.ShowHelp |= (opts.ShowHelpHidden = Args.hasFlag(OPT__help_hidden, OPT_INVALID, false));
   if (opts.ShowHelp) {
   if (opts.ShowHelp) {
     return 0;
     return 0;
   }
   }

+ 3 - 1
tools/clang/tools/dxc/dxc.cpp

@@ -1122,7 +1122,9 @@ int __cdecl wmain(int argc, const wchar_t **argv_) {
       std::string version;
       std::string version;
       llvm::raw_string_ostream versionStream(version);
       llvm::raw_string_ostream versionStream(version);
       context.GetCompilerVersionInfo(versionStream);
       context.GetCompilerVersionInfo(versionStream);
-      optionTable->PrintHelp(helpStream, "dxc.exe", "HLSL Compiler", versionStream.str().c_str());
+      optionTable->PrintHelp(helpStream, "dxc.exe", "HLSL Compiler",
+                             versionStream.str().c_str(),
+                             dxcOpts.ShowHelpHidden);
       helpStream.flush();
       helpStream.flush();
       WriteUtf8ToConsoleSizeT(helpString.data(), helpString.size());
       WriteUtf8ToConsoleSizeT(helpString.data(), helpString.size());
       return 0;
       return 0;