diff options
author | Paul Semel <semelpaul@gmail.com> | 2018-07-11 10:00:29 +0000 |
---|---|---|
committer | Paul Semel <semelpaul@gmail.com> | 2018-07-11 10:00:29 +0000 |
commit | b98f504850123e345d0470cb0bfec67eb6e7a679 (patch) | |
tree | fe343e53812af6f8103ff323528460228556ae26 /llvm/tools/llvm-readobj/llvm-readobj.cpp | |
parent | 5260c9efc87ea62bd40c47cc65d8e9648a649d42 (diff) | |
download | bcm5719-llvm-b98f504850123e345d0470cb0bfec67eb6e7a679.tar.gz bcm5719-llvm-b98f504850123e345d0470cb0bfec67eb6e7a679.zip |
[llvm-readobj] Add -hex-dump (-x) option
Differential Revision: https://reviews.llvm.org/D48281
llvm-svn: 336782
Diffstat (limited to 'llvm/tools/llvm-readobj/llvm-readobj.cpp')
-rw-r--r-- | llvm/tools/llvm-readobj/llvm-readobj.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/tools/llvm-readobj/llvm-readobj.cpp b/llvm/tools/llvm-readobj/llvm-readobj.cpp index aa2cc762daf..39567b80235 100644 --- a/llvm/tools/llvm-readobj/llvm-readobj.cpp +++ b/llvm/tools/llvm-readobj/llvm-readobj.cpp @@ -152,6 +152,12 @@ namespace opts { cl::alias StringDumpShort("p", cl::desc("Alias for --string-dump"), cl::aliasopt(StringDump)); + // -hex-dump + cl::list<std::string> HexDump("hex-dump", cl::desc("<number|name>"), + cl::ZeroOrMore); + cl::alias HexDumpShort("x", cl::desc("Alias for --hex-dump"), + cl::aliasopt(HexDump)); + // -hash-table cl::opt<bool> HashTable("hash-table", cl::desc("Display ELF hash table")); @@ -431,6 +437,10 @@ static void dumpObject(const ObjectFile *Obj, ScopedPrinter &Writer) { llvm::for_each(opts::StringDump, [&Dumper](StringRef SectionName) { Dumper->printSectionAsString(SectionName); }); + if (!opts::HexDump.empty()) + llvm::for_each(opts::HexDump, [&Dumper](StringRef SectionName) { + Dumper->printSectionAsHex(SectionName); + }); if (opts::HashTable) Dumper->printHashTable(); if (opts::GnuHashTable) |