diff options
author | James Henderson <jh7370@my.bristol.ac.uk> | 2019-01-17 15:34:12 +0000 |
---|---|---|
committer | James Henderson <jh7370@my.bristol.ac.uk> | 2019-01-17 15:34:12 +0000 |
commit | e50d9cb3649bdf6521f92fd1e4cee3a690638159 (patch) | |
tree | 41895678eecf495d5630e4b3d3bb4c0ba8c193e2 /llvm/tools/llvm-readobj/llvm-readobj.cpp | |
parent | 81cff31ccf3e1b7dd35653c964ea25d1733ba409 (diff) | |
download | llvm-e50d9cb3649bdf6521f92fd1e4cee3a690638159.zip llvm-e50d9cb3649bdf6521f92fd1e4cee3a690638159.tar.gz llvm-e50d9cb3649bdf6521f92fd1e4cee3a690638159.tar.bz2 |
[llvm-readobj][ELF]Add demangling support
This change adds demangling support to the ELF side of llvm-readobj,
under the switch --demangle/-C.
The following places are demangled: symbol table dumps (static and
dynamic), relocation dumps (static and dynamic), addrsig dumps, call
graph profile dumps, and group section signature symbols.
Although GNU readelf doesn't support demangling, it is still a useful
feature to have, and brings it on a par with llvm-objdump's
capabilities.
This fixes https://bugs.llvm.org/show_bug.cgi?id=40054.
Reviewed by: grimar, rupprecht
Differential Revision: https://reviews.llvm.org/D56791
llvm-svn: 351450
Diffstat (limited to 'llvm/tools/llvm-readobj/llvm-readobj.cpp')
-rw-r--r-- | llvm/tools/llvm-readobj/llvm-readobj.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/tools/llvm-readobj/llvm-readobj.cpp b/llvm/tools/llvm-readobj/llvm-readobj.cpp index 81ce7a5..d6cb3b9 100644 --- a/llvm/tools/llvm-readobj/llvm-readobj.cpp +++ b/llvm/tools/llvm-readobj/llvm-readobj.cpp @@ -176,6 +176,12 @@ namespace opts { cl::alias HexDumpShort("x", cl::desc("Alias for --hex-dump"), cl::aliasopt(HexDump)); + // -demangle, -C + cl::opt<bool> Demangle("demangle", + cl::desc("Demangle symbol names in output")); + cl::alias DemangleShort("C", cl::desc("Alias for --demangle"), + cl::aliasopt(Demangle), cl::NotHidden); + // -hash-table cl::opt<bool> HashTable("hash-table", cl::desc("Display ELF hash table")); |