Index: llvm/trunk/test/tools/llvm-objdump/X86/disassemble-implied-by-disassemble-functions.test =================================================================== --- llvm/trunk/test/tools/llvm-objdump/X86/disassemble-implied-by-disassemble-functions.test +++ llvm/trunk/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 Index: llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp =================================================================== --- llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp +++ llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp @@ -2032,7 +2032,8 @@ 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 &&