1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00

[llvm][tools] Hide unrelated llvm-bcanalyzer options

They otherwise show up when we link against the dynamic libLLVM.so.

Differential Revision: https://reviews.llvm.org/D105893
This commit is contained in:
Timm Bäder 2021-07-13 16:37:26 +02:00
parent 091d61e196
commit 0108938558
2 changed files with 28 additions and 8 deletions

View File

@ -0,0 +1,7 @@
# RUN: llvm-bcanalyzer --help | FileCheck %s --check-prefix HELP --implicit-check-not='{{[Oo]}}ptions:'
# HELP: OVERVIEW: llvm-bcanalyzer file analyzer
# HELP: USAGE
# HELP: BC Analyzer Options
# HELP: Color Options
# HELP: Generic Options

View File

@ -32,37 +32,48 @@
#include "llvm/Support/Error.h"
#include "llvm/Support/InitLLVM.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/WithColor.h"
#include "llvm/Support/raw_ostream.h"
#include <memory>
using namespace llvm;
static cl::opt<std::string>
InputFilename(cl::Positional, cl::desc("<input bitcode>"), cl::init("-"));
static cl::OptionCategory BCAnalyzerCategory("BC Analyzer Options");
static cl::opt<bool> Dump("dump", cl::desc("Dump low level bitcode trace"));
static cl::opt<std::string> InputFilename(cl::Positional,
cl::desc("<input bitcode>"),
cl::init("-"),
cl::cat(BCAnalyzerCategory));
static cl::opt<bool> Dump("dump", cl::desc("Dump low level bitcode trace"),
cl::cat(BCAnalyzerCategory));
//===----------------------------------------------------------------------===//
// Bitcode specific analysis.
//===----------------------------------------------------------------------===//
static cl::opt<bool> NoHistogram("disable-histogram",
cl::desc("Do not print per-code histogram"));
cl::desc("Do not print per-code histogram"),
cl::cat(BCAnalyzerCategory));
static cl::opt<bool> NonSymbolic("non-symbolic",
cl::desc("Emit numeric info in dump even if"
" symbolic info is available"));
" symbolic info is available"),
cl::cat(BCAnalyzerCategory));
static cl::opt<std::string>
BlockInfoFilename("block-info",
cl::desc("Use the BLOCK_INFO from the given file"));
cl::desc("Use the BLOCK_INFO from the given file"),
cl::cat(BCAnalyzerCategory));
static cl::opt<bool>
ShowBinaryBlobs("show-binary-blobs",
cl::desc("Print binary blobs using hex escapes"));
cl::desc("Print binary blobs using hex escapes"),
cl::cat(BCAnalyzerCategory));
static cl::opt<std::string> CheckHash(
"check-hash",
cl::desc("Check module hash using the argument as a string table"));
cl::desc("Check module hash using the argument as a string table"),
cl::cat(BCAnalyzerCategory));
static Error reportError(StringRef Message) {
return createStringError(std::errc::illegal_byte_sequence, Message.data());
@ -85,6 +96,8 @@ static Expected<std::unique_ptr<MemoryBuffer>> openBitcodeFile(StringRef Path) {
int main(int argc, char **argv) {
InitLLVM X(argc, argv);
cl::HideUnrelatedOptions({&BCAnalyzerCategory, &ColorCategory});
cl::ParseCommandLineOptions(argc, argv, "llvm-bcanalyzer file analyzer\n");
ExitOnError ExitOnErr("llvm-bcanalyzer: ");