diff options
author | Simon Atanasyan <simon@atanasyan.com> | 2013-11-11 20:51:48 +0000 |
---|---|---|
committer | Simon Atanasyan <simon@atanasyan.com> | 2013-11-11 20:51:48 +0000 |
commit | 5c8377f32c0cfa53be90de17eab17436f0bf6d4d (patch) | |
tree | a4caa59ceb6f192d0681fa4c3181117e47caf831 /llvm/tools/llvm-readobj/ELFDumper.cpp | |
parent | e293b1a8d8e0ca5c24117655b2191c4e46afba57 (diff) | |
download | llvm-5c8377f32c0cfa53be90de17eab17436f0bf6d4d.zip llvm-5c8377f32c0cfa53be90de17eab17436f0bf6d4d.tar.gz llvm-5c8377f32c0cfa53be90de17eab17436f0bf6d4d.tar.bz2 |
Add support for DT_VERxxx and DT_MIPS_xxx .dynamic section entries to the
llvm-readobj.
The patch reviewed by Michael Spencer.
http://llvm-reviews.chandlerc.com/D2113
llvm-svn: 194421
Diffstat (limited to 'llvm/tools/llvm-readobj/ELFDumper.cpp')
-rw-r--r-- | llvm/tools/llvm-readobj/ELFDumper.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/llvm/tools/llvm-readobj/ELFDumper.cpp b/llvm/tools/llvm-readobj/ELFDumper.cpp index f384824..07a9083 100644 --- a/llvm/tools/llvm-readobj/ELFDumper.cpp +++ b/llvm/tools/llvm-readobj/ELFDumper.cpp @@ -683,6 +683,16 @@ static const char *getTypeString(uint64_t Type) { LLVM_READOBJ_TYPE_CASE(SYMENT); LLVM_READOBJ_TYPE_CASE(SYMTAB); LLVM_READOBJ_TYPE_CASE(TEXTREL); + LLVM_READOBJ_TYPE_CASE(VERNEED); + LLVM_READOBJ_TYPE_CASE(VERNEEDNUM); + LLVM_READOBJ_TYPE_CASE(VERSYM); + LLVM_READOBJ_TYPE_CASE(MIPS_RLD_VERSION); + LLVM_READOBJ_TYPE_CASE(MIPS_FLAGS); + LLVM_READOBJ_TYPE_CASE(MIPS_BASE_ADDRESS); + LLVM_READOBJ_TYPE_CASE(MIPS_LOCAL_GOTNO); + LLVM_READOBJ_TYPE_CASE(MIPS_SYMTABNO); + LLVM_READOBJ_TYPE_CASE(MIPS_UNREFEXTNO); + LLVM_READOBJ_TYPE_CASE(MIPS_GOTSYM); default: return "unknown"; } } @@ -715,9 +725,21 @@ static void printValue(const ELFFile<ELFT> *O, uint64_t Type, uint64_t Value, case DT_FINI_ARRAY: case DT_PREINIT_ARRAY: case DT_DEBUG: + case DT_VERNEED: + case DT_VERSYM: case DT_NULL: + case DT_MIPS_FLAGS: + case DT_MIPS_BASE_ADDRESS: + case DT_MIPS_GOTSYM: OS << format("0x%" PRIX64, Value); break; + case DT_VERNEEDNUM: + case DT_MIPS_RLD_VERSION: + case DT_MIPS_LOCAL_GOTNO: + case DT_MIPS_SYMTABNO: + case DT_MIPS_UNREFEXTNO: + OS << Value; + break; case DT_PLTRELSZ: case DT_RELASZ: case DT_RELAENT: |