Index: test/tools/llvm-objdump/full-contents.test =================================================================== --- test/tools/llvm-objdump/full-contents.test +++ test/tools/llvm-objdump/full-contents.test @@ -0,0 +1,51 @@ +# RUN: yaml2obj %s > %t +# RUN: llvm-objdump --full-contents %t > %t.out1 +# RUN: llvm-objdump -s %t > %t.out2 +# RUN: cmp %t.out1 %t.out2 +# RUN: FileCheck %s --input-file=%t.out1 + +# CHECK: .bss +# CHECK: .text +# CHECK: .user-defined +# CHECK: .empty-section +# CHECK-NEXT: +# CHECK: .symtab +# CHECK: .strtab +# CHECK: .shstrtab + +!ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_EXEC + Machine: EM_X86_64 +Sections: + - Name: .bss + Type: SHT_PROGBITS + Flags: [ SHF_ALLOC, SHF_EXECINSTR ] + AddressAlign: 0x0000000000000010 + Content: "66756c6c2d636f6e74656e747300000074657374" + Size: 32 + - Name: .text + Type: SHT_PROGBITS + Flags: [ SHF_ALLOC, SHF_EXECINSTR ] + AddressAlign: 0x0000000000000010 + Content: "66756c6c2d636f6e74656e747300000074657374" + Size: 32 + - Name: .user-defined + Type: SHT_PROGBITS + Flags: [ SHF_ALLOC ] + AddressAlign: 0x0000000000000010 + Content: "66756c6c2d636f6e74656e747300000074657374" + Size: 32 + - Name: .empty-section + Type: SHT_NOBITS + Flags: [ SHF_ALLOC ] + AddressAlign: 0x0000000000000010 + Size: 32 +Symbols: + Global: + - Name: foo + Type: STT_FUNC + Section: .text + Value: 0x1004 Index: tools/llvm-objdump/llvm-objdump.cpp =================================================================== --- tools/llvm-objdump/llvm-objdump.cpp +++ tools/llvm-objdump/llvm-objdump.cpp @@ -116,7 +116,11 @@ cl::aliasopt(DynamicRelocations)); cl::opt -llvm::SectionContents("s", cl::desc("Display the content of each section")); +llvm::SectionContents("full-contents", + cl::desc("Display the content of each section")); +static cl::alias +SectionContentsShort("s", cl::desc("Alias for --full-contents"), + cl::aliasopt(SectionContents)); cl::opt llvm::SymbolTable("t", cl::desc("Display the symbol table"));