diff options
author | Lang Hames <lhames@gmail.com> | 2015-06-26 23:56:53 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2015-06-26 23:56:53 +0000 |
commit | 0000afd88cc35d6febd25c72f484b22378897737 (patch) | |
tree | a5e8e0565506a1dcdd44174363cf95ef815a8fb7 /llvm/tools/llvm-readobj/llvm-readobj.cpp | |
parent | 605e1f6b6cb8bba842a08ef5d59eee3e42f5a834 (diff) | |
download | bcm5719-llvm-0000afd88cc35d6febd25c72f484b22378897737.tar.gz bcm5719-llvm-0000afd88cc35d6febd25c72f484b22378897737.zip |
[StackMaps] Add a lightweight parser for stackmap version 1 sections.
The parser provides a convenient interface for reading llvm stackmap v1 sections
in object files.
This patch also includes a new option for llvm-readobj, '-stackmap', which uses
the parser to pretty-print stackmap sections for debugging/testing purposes.
llvm-svn: 240860
Diffstat (limited to 'llvm/tools/llvm-readobj/llvm-readobj.cpp')
-rw-r--r-- | llvm/tools/llvm-readobj/llvm-readobj.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/tools/llvm-readobj/llvm-readobj.cpp b/llvm/tools/llvm-readobj/llvm-readobj.cpp index 3a6483a1386..222c1a13600 100644 --- a/llvm/tools/llvm-readobj/llvm-readobj.cpp +++ b/llvm/tools/llvm-readobj/llvm-readobj.cpp @@ -176,6 +176,12 @@ namespace opts { cl::opt<bool> COFFBaseRelocs("coff-basereloc", cl::desc("Display the PE/COFF .reloc section")); + + // -stackmap + cl::opt<bool> + PrintStackMap("stackmap", + cl::desc("Display contents of stackmap section")); + } // namespace opts static int ReturnValue = EXIT_SUCCESS; @@ -316,6 +322,9 @@ static void dumpObject(const ObjectFile *Obj) { Dumper->printCOFFDirectives(); if (opts::COFFBaseRelocs) Dumper->printCOFFBaseReloc(); + + if (opts::PrintStackMap) + Dumper->printStackMap(); } /// @brief Dumps each object file in \a Arc; |