From f44eb922c05e3d43050cd8a8bc4ca1dfd59a6ebe Mon Sep 17 00:00:00 2001 From: George Rimar Date: Tue, 21 May 2019 11:05:46 +0000 Subject: [llvm-objdump] Make --disassemble-functions imply -d Fixes https://bugs.llvm.org/show_bug.cgi?id=41903 Patch by Mike Pozulp! Differential revision: https://reviews.llvm.org/D62054 llvm-svn: 361240 --- ...sassemble-implied-by-disassemble-functions.test | 22 ++++++++++++++++++++++ llvm/tools/llvm-objdump/llvm-objdump.cpp | 3 ++- 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 llvm/test/tools/llvm-objdump/X86/disassemble-implied-by-disassemble-functions.test diff --git a/llvm/test/tools/llvm-objdump/X86/disassemble-implied-by-disassemble-functions.test b/llvm/test/tools/llvm-objdump/X86/disassemble-implied-by-disassemble-functions.test new file mode 100644 index 00000000000..56c2dcd51d9 --- /dev/null +++ b/llvm/test/tools/llvm-objdump/X86/disassemble-implied-by-disassemble-functions.test @@ -0,0 +1,22 @@ +## Check that --disassemble-functions implies --disassemble. +# RUN: yaml2obj < %s | llvm-objdump - --disassemble-functions=main | FileCheck %s + +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 +Sections: + - Name: .text + Type: SHT_PROGBITS + Flags: [ SHF_EXECINSTR ] + Content: 90 +Symbols: + - Name: main + Type: STT_FUNC + Section: .text +... + +# CHECK: 0000000000000000 main: +# CHECK-NEXT: 0: 90 nop diff --git a/llvm/tools/llvm-objdump/llvm-objdump.cpp b/llvm/tools/llvm-objdump/llvm-objdump.cpp index de26b61697c..9f06268a8ec 100644 --- a/llvm/tools/llvm-objdump/llvm-objdump.cpp +++ b/llvm/tools/llvm-objdump/llvm-objdump.cpp @@ -2032,7 +2032,8 @@ int main(int argc, char **argv) { ArchiveHeaders = FileHeaders = PrivateHeaders = Relocations = SectionHeaders = SymbolTable = true; - if (DisassembleAll || PrintSource || PrintLines) + if (DisassembleAll || PrintSource || PrintLines || + (!DisassembleFunctions.empty())) Disassemble = true; if (!ArchiveHeaders && !Disassemble && DwarfDumpType == DIDT_Null && -- cgit v1.2.3