summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-readobj/llvm-readobj.cpp
diff options
context:
space:
mode:
authorWolfgang Pieb <Wolfgang.Pieb@sony.com>2019-08-05 22:47:07 +0000
committerWolfgang Pieb <Wolfgang.Pieb@sony.com>2019-08-05 22:47:07 +0000
commitc71c6299265678f9495966efd859770660ed7b50 (patch)
tree46188b65acf4959ec85d83031362b65d314b7549 /llvm/tools/llvm-readobj/llvm-readobj.cpp
parente39e79358fcdd5d8ad809defaa821f0bbfa809a5 (diff)
downloadbcm5719-llvm-c71c6299265678f9495966efd859770660ed7b50.tar.gz
bcm5719-llvm-c71c6299265678f9495966efd859770660ed7b50.zip
[llvm-readelf] Support dumping of stack sizes sections with readelf --stack-sizes
Reviewers: jhenderson, grimar, rupprecht Differential Revision: https://reviews.llvm.org/D65313 llvm-svn: 367942
Diffstat (limited to 'llvm/tools/llvm-readobj/llvm-readobj.cpp')
-rw-r--r--llvm/tools/llvm-readobj/llvm-readobj.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/tools/llvm-readobj/llvm-readobj.cpp b/llvm/tools/llvm-readobj/llvm-readobj.cpp
index 1bd5bb74bf2..bb629c28cf1 100644
--- a/llvm/tools/llvm-readobj/llvm-readobj.cpp
+++ b/llvm/tools/llvm-readobj/llvm-readobj.cpp
@@ -324,6 +324,11 @@ namespace opts {
PrintStackMap("stackmap",
cl::desc("Display contents of stackmap section"));
+ // --stack-sizes
+ cl::opt<bool>
+ PrintStackSizes("stack-sizes",
+ cl::desc("Display contents of all stack sizes sections"));
+
// --version-info, -V
cl::opt<bool>
VersionInfo("version-info",
@@ -583,6 +588,8 @@ static void dumpObject(const ObjectFile *Obj, ScopedPrinter &Writer,
}
if (opts::PrintStackMap)
Dumper->printStackMap();
+ if (opts::PrintStackSizes)
+ Dumper->printStackSizes();
}
/// Dumps each object file in \a Arc;
@@ -727,6 +734,10 @@ int main(int argc, const char *argv[]) {
opts::UnwindInfo = true;
opts::SectionGroups = true;
opts::HashHistogram = true;
+ // FIXME: As soon as we implement LLVM-style printing of the .stack_size
+ // section, we will enable it with --all (only for LLVM-style).
+ if (opts::Output == opts::LLVM)
+ opts::PrintStackSizes = false;
}
if (opts::Headers) {
OpenPOWER on IntegriCloud