1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00

[llvm-objdump] Allow short options without arguments to be grouped

Summary:

https://bugs.llvm.org/show_bug.cgi?id=31679

Reviewers: kristina, jhenderson, grimar, jakehehrlich, rupprecht

Subscribers: llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D57904

llvm-svn: 353998
This commit is contained in:
Matthew Voss 2019-02-14 00:39:40 +00:00
parent 1d717fab8b
commit 174bace66f
4 changed files with 30 additions and 20 deletions

View File

@ -1,5 +1,5 @@
// RUN: yaml2obj -o %t.out %p/Inputs/simple-executable-x86_64.yaml
// RUN: llvm-objdump -d %t.out -df=main | FileCheck %s
// RUN: llvm-objdump -d %t.out -disassemble-functions=main | FileCheck %s
// CHECK: Disassembly of section .anothertext:
// CHECK-NEXT: main:

View File

@ -0,0 +1,2 @@
// RUN: llvm-objdump -DRafdghprstux %p/Inputs/private-headers-x86_64.elf 2>&1 | FileCheck %s
// CHECK-NOT: Unknown command line argument

View File

@ -59,7 +59,7 @@ using namespace llvm;
using namespace object;
static cl::opt<bool>
UseDbg("g",
UseDbg("g", cl::Grouping,
cl::desc("Print line information from debug info if available"));
static cl::opt<std::string> DSYMFile("dsym",

View File

@ -79,7 +79,8 @@ cl::opt<bool>
llvm::AllHeaders("all-headers",
cl::desc("Display all available header information"));
static cl::alias AllHeadersShort("x", cl::desc("Alias for --all-headers"),
cl::NotHidden, cl::aliasopt(AllHeaders));
cl::NotHidden, cl::Grouping,
cl::aliasopt(AllHeaders));
static cl::list<std::string>
InputFilenames(cl::Positional, cl::desc("<input object files>"),cl::ZeroOrMore);
@ -88,22 +89,25 @@ cl::opt<bool>
llvm::Disassemble("disassemble",
cl::desc("Display assembler mnemonics for the machine instructions"));
static cl::alias Disassembled("d", cl::desc("Alias for --disassemble"),
cl::NotHidden, cl::aliasopt(Disassemble));
cl::NotHidden, cl::Grouping,
cl::aliasopt(Disassemble));
cl::opt<bool>
llvm::DisassembleAll("disassemble-all",
cl::desc("Display assembler mnemonics for the machine instructions"));
static cl::alias DisassembleAlld("D", cl::desc("Alias for --disassemble-all"),
cl::NotHidden, cl::aliasopt(DisassembleAll));
cl::NotHidden, cl::Grouping,
cl::aliasopt(DisassembleAll));
cl::opt<bool> llvm::Demangle("demangle", cl::desc("Demangle symbols names"),
cl::init(false));
static cl::alias DemangleShort("C", cl::desc("Alias for --demangle"),
cl::NotHidden, cl::aliasopt(llvm::Demangle));
cl::NotHidden, cl::Grouping,
cl::aliasopt(llvm::Demangle));
static cl::list<std::string>
DisassembleFunctions("df",
DisassembleFunctions("disassemble-functions",
cl::CommaSeparated,
cl::desc("List of functions to disassemble"));
static StringSet<> DisasmFuncsSet;
@ -112,14 +116,14 @@ cl::opt<bool>
llvm::Relocations("reloc",
cl::desc("Display the relocation entries in the file"));
static cl::alias RelocationsShort("r", cl::desc("Alias for --reloc"),
cl::NotHidden,
cl::NotHidden, cl::Grouping,
cl::aliasopt(llvm::Relocations));
cl::opt<bool>
llvm::DynamicRelocations("dynamic-reloc",
cl::desc("Display the dynamic relocation entries in the file"));
static cl::alias DynamicRelocationsd("R", cl::desc("Alias for --dynamic-reloc"),
cl::NotHidden,
cl::NotHidden, cl::Grouping,
cl::aliasopt(DynamicRelocations));
cl::opt<bool>
@ -127,12 +131,12 @@ cl::opt<bool>
cl::desc("Display the content of each section"));
static cl::alias SectionContentsShort("s",
cl::desc("Alias for --full-contents"),
cl::NotHidden,
cl::NotHidden, cl::Grouping,
cl::aliasopt(SectionContents));
cl::opt<bool> llvm::SymbolTable("syms", cl::desc("Display the symbol table"));
static cl::alias SymbolTableShort("t", cl::desc("Alias for --syms"),
cl::NotHidden,
cl::NotHidden, cl::Grouping,
cl::aliasopt(llvm::SymbolTable));
cl::opt<bool>
@ -157,7 +161,7 @@ llvm::RawClangAST("raw-clang-ast",
static cl::opt<bool>
MachOOpt("macho", cl::desc("Use MachO specific object file parser"));
static cl::alias MachOm("m", cl::desc("Alias for --macho"), cl::NotHidden,
cl::aliasopt(MachOOpt));
cl::Grouping, cl::aliasopt(MachOOpt));
cl::opt<std::string>
llvm::TripleName("triple", cl::desc("Target triple to disassemble for, "
@ -182,7 +186,7 @@ static cl::alias SectionHeadersShort("headers",
cl::aliasopt(SectionHeaders));
static cl::alias SectionHeadersShorter("h",
cl::desc("Alias for --section-headers"),
cl::NotHidden,
cl::NotHidden, cl::Grouping,
cl::aliasopt(SectionHeaders));
static cl::opt<bool>
@ -213,7 +217,8 @@ cl::opt<bool>
llvm::UnwindInfo("unwind-info", cl::desc("Display unwind information"));
static cl::alias UnwindInfoShort("u", cl::desc("Alias for --unwind-info"),
cl::NotHidden, cl::aliasopt(UnwindInfo));
cl::NotHidden, cl::Grouping,
cl::aliasopt(UnwindInfo));
cl::opt<bool>
llvm::PrivateHeaders("private-headers",
@ -226,7 +231,7 @@ llvm::FirstPrivateHeader("private-header",
static cl::alias PrivateHeadersShort("p",
cl::desc("Alias for --private-headers"),
cl::NotHidden,
cl::NotHidden, cl::Grouping,
cl::aliasopt(PrivateHeaders));
cl::opt<bool> llvm::FileHeaders(
@ -234,14 +239,16 @@ cl::opt<bool> llvm::FileHeaders(
cl::desc("Display the contents of the overall file header"));
static cl::alias FileHeadersShort("f", cl::desc("Alias for --file-headers"),
cl::NotHidden, cl::aliasopt(FileHeaders));
cl::NotHidden, cl::Grouping,
cl::aliasopt(FileHeaders));
cl::opt<bool>
llvm::ArchiveHeaders("archive-headers",
cl::desc("Display archive header information"));
cl::alias ArchiveHeadersShort("a", cl::desc("Alias for --archive-headers"),
cl::NotHidden, cl::aliasopt(ArchiveHeaders));
cl::NotHidden, cl::Grouping,
cl::aliasopt(ArchiveHeaders));
cl::opt<bool>
llvm::PrintImmHex("print-imm-hex",
@ -260,14 +267,15 @@ cl::opt<bool> PrintSource(
"Display source inlined with disassembly. Implies disassemble object"));
cl::alias PrintSourceShort("S", cl::desc("Alias for -source"), cl::NotHidden,
cl::aliasopt(PrintSource));
cl::Grouping, cl::aliasopt(PrintSource));
cl::opt<bool> PrintLines("line-numbers",
cl::desc("Display source line numbers with "
"disassembly. Implies disassemble object"));
cl::alias PrintLinesShort("l", cl::desc("Alias for -line-numbers"),
cl::NotHidden, cl::aliasopt(PrintLines));
cl::NotHidden, cl::Grouping,
cl::aliasopt(PrintLines));
cl::opt<unsigned long long>
StartAddress("start-address", cl::desc("Disassemble beginning at address"),
@ -282,7 +290,7 @@ cl::opt<bool> DisassembleZeroes(
cl::desc("Do not skip blocks of zeroes when disassembling"));
cl::alias DisassembleZeroesShort("z",
cl::desc("Alias for --disassemble-zeroes"),
cl::NotHidden,
cl::NotHidden, cl::Grouping,
cl::aliasopt(DisassembleZeroes));
static StringRef ToolName;