diff options
author | George Rimar <grimar@accesssoftek.com> | 2019-01-18 12:01:59 +0000 |
---|---|---|
committer | George Rimar <grimar@accesssoftek.com> | 2019-01-18 12:01:59 +0000 |
commit | 5e36433189ba3297af33a9088ee17abde10c7871 (patch) | |
tree | feaeffb12a82cf47b82012a1761658481938c7cf | |
parent | ef19af19428b368d95036b41f8c8eee0bd390a21 (diff) | |
download | bcm5719-llvm-5e36433189ba3297af33a9088ee17abde10c7871.tar.gz bcm5719-llvm-5e36433189ba3297af33a9088ee17abde10c7871.zip |
[llvm-objdump] - Dump the archive headers when -all-headers is specified.
When -all-headers is given it is supposed to dump all headers,
but now it skips the archive headers for no reason.
The patch fixes that.
Differential revision: https://reviews.llvm.org/D56780
llvm-svn: 351547
-rw-r--r-- | llvm/test/tools/llvm-objdump/all-headers.test | 25 | ||||
-rw-r--r-- | llvm/tools/llvm-objdump/llvm-objdump.cpp | 4 |
2 files changed, 27 insertions, 2 deletions
diff --git a/llvm/test/tools/llvm-objdump/all-headers.test b/llvm/test/tools/llvm-objdump/all-headers.test index 6bb9a844f16..5cb78c7e3ec 100644 --- a/llvm/test/tools/llvm-objdump/all-headers.test +++ b/llvm/test/tools/llvm-objdump/all-headers.test @@ -11,6 +11,31 @@ # CHECK-EMPTY: # CHECK-NEXT: Sections: +## Check how we dump the archives. +## Check we dump the appropriate headers for each file in the archive. + +# RUN: cp %t %t2 +# RUN: rm -f %t.a +# RUN: llvm-ar rcs %t.a %t %t2 +# RUN: llvm-objdump --all-headers %t.a | FileCheck %s --check-prefix=ARCHIVE + +# ARCHIVE: {{.*}}.a({{.*}}): file format ELF64-x86-64 +# ARCHIVE: architecture: x86_64 +# ARCHIVE: start address: 0x0000000000000000 +# ARCHIVE: rw-r--r-- +# ARCHIVE: Sections: +# ARCHIVE: SYMBOL TABLE: +# ARCHIVE: Program Header: +# ARCHIVE: Dynamic Section: +# ARCHIVE: {{.*}}.a({{.*}}2): file format ELF64-x86-64 +# ARCHIVE: architecture: x86_64 +# ARCHIVE: start address: 0x0000000000000000 +# ARCHIVE: rw-r--r-- +# ARCHIVE: Sections: +# ARCHIVE: SYMBOL TABLE: +# ARCHIVE: Program Header: +# ARCHIVE: Dynamic Section: + !ELF FileHeader: Class: ELFCLASS64 diff --git a/llvm/tools/llvm-objdump/llvm-objdump.cpp b/llvm/tools/llvm-objdump/llvm-objdump.cpp index 088a120d31e..d26e49779a2 100644 --- a/llvm/tools/llvm-objdump/llvm-objdump.cpp +++ b/llvm/tools/llvm-objdump/llvm-objdump.cpp @@ -2036,8 +2036,8 @@ int main(int argc, char **argv) { InputFilenames.push_back("a.out"); if (AllHeaders) - FileHeaders = PrivateHeaders = Relocations = SectionHeaders = SymbolTable = - true; + ArchiveHeaders = FileHeaders = PrivateHeaders = Relocations = + SectionHeaders = SymbolTable = true; if (DisassembleAll || PrintSource || PrintLines) Disassemble = true; |