diff options
author | Xing GUO <higuoxing@gmail.com> | 2019-03-02 04:20:28 +0000 |
---|---|---|
committer | Xing GUO <higuoxing@gmail.com> | 2019-03-02 04:20:28 +0000 |
commit | b28587890761de0105a2636d29c96286c3582b3f (patch) | |
tree | 22b627d4678c855f95614c770547b11751516d91 /llvm/lib/Object/ELF.cpp | |
parent | 43876ae7bc3392441f4995f0b540c2fce359493c (diff) | |
download | bcm5719-llvm-b28587890761de0105a2636d29c96286c3582b3f.tar.gz bcm5719-llvm-b28587890761de0105a2636d29c96286c3582b3f.zip |
[llvm-objdump] Should print unknown d_tag in hex format
Summary:
Currently, `llvm-objdump` prints "unknown" instead of d_tag value in hex format. Because getDynamicTagAsString returns "unknown" rather than empty
string.
Reviewers: grimar, jhenderson
Reviewed By: jhenderson
Subscribers: rupprecht, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D58763
llvm-svn: 355262
Diffstat (limited to 'llvm/lib/Object/ELF.cpp')
-rw-r--r-- | llvm/lib/Object/ELF.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Object/ELF.cpp b/llvm/lib/Object/ELF.cpp index 314be34ef59..dd8f3a9f331 100644 --- a/llvm/lib/Object/ELF.cpp +++ b/llvm/lib/Object/ELF.cpp @@ -424,7 +424,7 @@ ELFFile<ELFT>::android_relas(const Elf_Shdr *Sec) const { } template <class ELFT> -const char *ELFFile<ELFT>::getDynamicTagAsString(unsigned Arch, +std::string ELFFile<ELFT>::getDynamicTagAsString(unsigned Arch, uint64_t Type) const { #define DYNAMIC_STRINGIFY_ENUM(tag, value) \ case value: \ @@ -470,12 +470,12 @@ const char *ELFFile<ELFT>::getDynamicTagAsString(unsigned Arch, #undef DYNAMIC_TAG_MARKER #undef DYNAMIC_STRINGIFY_ENUM default: - return "unknown"; + return "<unknown:>0x" + utohexstr(Type, true); } } template <class ELFT> -const char *ELFFile<ELFT>::getDynamicTagAsString(uint64_t Type) const { +std::string ELFFile<ELFT>::getDynamicTagAsString(uint64_t Type) const { return getDynamicTagAsString(getHeader()->e_machine, Type); } |