diff --git a/test/tools/llvm-objdump/X86/macho-private-header.test b/test/tools/llvm-objdump/X86/macho-private-header.test
index b904bbc..d900725 100644
--- a/test/tools/llvm-objdump/X86/macho-private-header.test
+++ b/test/tools/llvm-objdump/X86/macho-private-header.test
@@ -1,4 +1,4 @@
-// RUN: llvm-objdump -macho -private-header %p/Inputs/hello.obj.macho-x86_64 | FileCheck %s
+// RUN: llvm-objdump -private-header %p/Inputs/hello.obj.macho-x86_64 | FileCheck %s
 
 CHECK: Mach header
 CHECK:       magic cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags
diff --git a/tools/llvm-objdump/llvm-objdump.cpp b/tools/llvm-objdump/llvm-objdump.cpp
index 47a2347..afd137f 100644
--- a/tools/llvm-objdump/llvm-objdump.cpp
+++ b/tools/llvm-objdump/llvm-objdump.cpp
@@ -2021,15 +2021,34 @@
   if (DisassembleAll || PrintSource || PrintLines)
     Disassemble = true;
 
-  if (!ArchiveHeaders && !Disassemble && DwarfDumpType == DIDT_Null &&
-      !DynamicRelocations && !FileHeaders && !PrivateHeaders && !RawClangAST &&
-      !Relocations && !SectionHeaders && !SectionContents && !SymbolTable &&
-      !UnwindInfo && !FaultMapSection &&
-      !(MachOOpt &&
-        (Bind || DataInCode || DylibId || DylibsUsed || ExportsTrie ||
-         FirstPrivateHeader || IndirectSymbols || InfoPlist || LazyBind ||
-         LinkOptHints || Rebase || ObjcMetaData || UniversalHeaders ||
-         WeakBind || !FilterSections.empty()))) {
+  if (!Disassemble
+      && !Relocations
+      && !DynamicRelocations
+      && !SectionHeaders
+      && !SectionContents
+      && !SymbolTable
+      && !UnwindInfo
+      && !PrivateHeaders
+      && !FileHeaders
+      && !FirstPrivateHeader
+      && !ExportsTrie
+      && !Rebase
+      && !Bind
+      && !LazyBind
+      && !WeakBind
+      && !RawClangAST
+      && !(UniversalHeaders && MachOOpt)
+      && !ArchiveHeaders
+      && !(IndirectSymbols && MachOOpt)
+      && !(DataInCode && MachOOpt)
+      && !(LinkOptHints && MachOOpt)
+      && !(InfoPlist && MachOOpt)
+      && !(DylibsUsed && MachOOpt)
+      && !(DylibId && MachOOpt)
+      && !(ObjcMetaData && MachOOpt)
+      && !(!FilterSections.empty() && MachOOpt)
+      && !FaultMapSection
+      && DwarfDumpType == DIDT_Null) {
     cl::PrintHelpMessage();
     return 2;
   }
