mirror of
https://github.com/RPCSX/llvm.git
synced 2025-03-03 18:37:56 +00:00
Updated llvm-objdump for arm64 Mach-O MH_KEXT_BUNDLE file types so
it symbolically disassembles the __text section from the __TEXT_EXEC segment not the usual __TEXT segment by default. rdar://30590208 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@306046 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
e6b75a9bee
commit
bf84e2cbee
BIN
test/tools/llvm-objdump/AArch64/Inputs/kextbundle.macho-aarch64
Executable file
BIN
test/tools/llvm-objdump/AArch64/Inputs/kextbundle.macho-aarch64
Executable file
Binary file not shown.
9
test/tools/llvm-objdump/AArch64/macho-kextbundle.test
Normal file
9
test/tools/llvm-objdump/AArch64/macho-kextbundle.test
Normal file
@ -0,0 +1,9 @@
|
||||
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
|
@ -1224,8 +1224,13 @@ static void ProcessMachO(StringRef Name, MachOObjectFile *MachOOF,
|
||||
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)
|
||||
|
Loading…
x
Reference in New Issue
Block a user