--- /dev/null
+RUN: llvm-objdump -d -m -no-show-raw-insn %p/Inputs/kextbundle.macho-aarch64 | FileCheck %s
+
+CHECK: (__TEXT_EXEC,__text) section
+CHECK: _foo:
+CHECK: 4000: stp x29, x30, [sp, #-16]!
+CHECK: 4004: mov x29, sp
+CHECK: 4008: bl _bar.stub
+CHECK: 400c: ldp x29, x30, [sp], #16
+CHECK: 4010: ret
if (Error Err = MachOOF->checkSymbolTable())
report_error(ArchiveName, FileName, std::move(Err), ArchitectureName);
- if (Disassemble)
- DisassembleMachO(FileName, MachOOF, "__TEXT", "__text");
+ if (Disassemble) {
+ if (MachOOF->getHeader().filetype == MachO::MH_KEXT_BUNDLE &&
+ MachOOF->getHeader().cputype == MachO::CPU_TYPE_ARM64)
+ DisassembleMachO(FileName, MachOOF, "__TEXT_EXEC", "__text");
+ else
+ DisassembleMachO(FileName, MachOOF, "__TEXT", "__text");
+ }
if (IndirectSymbols)
PrintIndirectSymbols(MachOOF, !NonVerbose);
if (DataInCode)