// RUN: llvm-objdump -p %p/Inputs/hello.obj.macho-aarch64 | FileCheck %s // RUN: llvm-objdump -p %p/Inputs/hello.exe.macho-aarch64 \ // RUN: | FileCheck %s -check-prefix=EXE CHECK: Mach header CHECK: magic cputype cpusubtype caps filetype ncmds sizeofcmds flags CHECK: MH_MAGIC_64 ARM64 ALL 0x00 OBJECT 4 352 SUBSECTIONS_VIA_SYMBOLS CHECK: Load command 0 CHECK: cmd LC_SEGMENT_64 CHECK: cmdsize 232 CHECK: segname CHECK: vmaddr 0x0000000000000000 CHECK: vmsize 0x000000000000004d CHECK: fileoff 384 CHECK: filesize 77 CHECK: maxprot rwx CHECK: initprot rwx CHECK: nsects 2 CHECK: flags (none) CHECK: Section CHECK: sectname __text CHECK: segname __TEXT CHECK: addr 0x0000000000000000 CHECK: size 0x0000000000000040 CHECK: offset 384 CHECK: align 2^2 (4) CHECK: reloff 464 CHECK: nreloc 3 CHECK: type S_REGULAR CHECK: attributes PURE_INSTRUCTIONS SOME_INSTRUCTIONS CHECK: reserved1 0 CHECK: reserved2 0 CHECK: Section CHECK: sectname __cstring CHECK: segname __TEXT CHECK: addr 0x0000000000000040 CHECK: size 0x000000000000000d CHECK: offset 448 CHECK: align 2^0 (1) CHECK: reloff 0 CHECK: nreloc 0 CHECK: type S_CSTRING_LITERALS CHECK: attributes (none) CHECK: reserved1 0 CHECK: reserved2 0 CHECK: Load command 1 CHECK: cmd LC_VERSION_MIN_IPHONEOS CHECK: cmdsize 16 CHECK: version 9.0 CHECK: sdk n/a CHECK: Load command 2 CHECK: cmd LC_SYMTAB CHECK: cmdsize 24 CHECK: symoff 488 CHECK: nsyms 5 CHECK: stroff 568 CHECK: strsize 36 CHECK: Load command 3 CHECK: cmd LC_DYSYMTAB CHECK: cmdsize 80 CHECK: ilocalsym 0 CHECK: nlocalsym 3 CHECK: iextdefsym 3 CHECK: nextdefsym 1 CHECK: iundefsym 4 CHECK: nundefsym 1 CHECK: tocoff 0 CHECK: ntoc 0 CHECK: modtaboff 0 CHECK: nmodtab 0 CHECK: extrefsymoff 0 CHECK: nextrefsyms 0 CHECK: indirectsymoff 0 CHECK: nindirectsyms 0 CHECK: extreloff 0 CHECK: nextrel 0 CHECK: locreloff 0 CHECK: nlocrel 0 EXE: Mach header EXE: magic cputype cpusubtype caps filetype ncmds sizeofcmds flags EXE: MH_MAGIC_64 ARM64 ALL 0x00 EXECUTE 17 1240 NOUNDEFS DYLDLINK TWOLEVEL PIE EXE: Load command 0 EXE: cmd LC_SEGMENT_64 EXE: cmdsize 72 EXE: segname __PAGEZERO EXE: vmaddr 0x0000000000000000 EXE: vmsize 0x0000000100000000 EXE: fileoff 0 EXE: filesize 0 EXE: maxprot --- EXE: initprot --- EXE: nsects 0 EXE: flags (none) EXE: Load command 1 EXE: cmd LC_SEGMENT_64 EXE: cmdsize 472 EXE: segname __TEXT EXE: vmaddr 0x0000000100000000 EXE: vmsize 0x0000000000008000 EXE: fileoff 0 EXE: filesize 32768 EXE: maxprot r-x EXE: initprot r-x EXE: nsects 5 EXE: flags (none) EXE: Section EXE: sectname __text EXE: segname __TEXT EXE: addr 0x0000000100007f38 EXE: size 0x0000000000000040 EXE: offset 32568 EXE: align 2^2 (4) EXE: reloff 0 EXE: nreloc 0 EXE: type S_REGULAR EXE: attributes PURE_INSTRUCTIONS SOME_INSTRUCTIONS EXE: reserved1 0 EXE: reserved2 0 EXE: Section EXE: sectname __stubs EXE: segname __TEXT EXE: addr 0x0000000100007f78 EXE: size 0x000000000000000c EXE: offset 32632 EXE: align 2^1 (2) EXE: reloff 0 EXE: nreloc 0 EXE: type S_SYMBOL_STUBS EXE: attributes PURE_INSTRUCTIONS SOME_INSTRUCTIONS EXE: reserved1 0 (index into indirect symbol table) EXE: reserved2 12 (size of stubs) EXE: Section EXE: sectname __stub_helper EXE: segname __TEXT EXE: addr 0x0000000100007f84 EXE: size 0x0000000000000024 EXE: offset 32644 EXE: align 2^2 (4) EXE: reloff 0 EXE: nreloc 0 EXE: type S_REGULAR EXE: attributes PURE_INSTRUCTIONS SOME_INSTRUCTIONS EXE: reserved1 0 EXE: reserved2 0 EXE: Section EXE: sectname __cstring EXE: segname __TEXT EXE: addr 0x0000000100007fa8 EXE: size 0x000000000000000d EXE: offset 32680 EXE: align 2^0 (1) EXE: reloff 0 EXE: nreloc 0 EXE: type S_CSTRING_LITERALS EXE: attributes (none) EXE: reserved1 0 EXE: reserved2 0 EXE: Section EXE: sectname __unwind_info EXE: segname __TEXT EXE: addr 0x0000000100007fb8 EXE: size 0x0000000000000048 EXE: offset 32696 EXE: align 2^2 (4) EXE: reloff 0 EXE: nreloc 0 EXE: type S_REGULAR EXE: attributes (none) EXE: reserved1 0 EXE: reserved2 0 EXE: Load command 2 EXE: cmd LC_SEGMENT_64 EXE: cmdsize 232 EXE: segname __DATA EXE: vmaddr 0x0000000100008000 EXE: vmsize 0x0000000000004000 EXE: fileoff 32768 EXE: filesize 16384 EXE: maxprot rw- EXE: initprot rw- EXE: nsects 2 EXE: flags (none) EXE: Section EXE: sectname __got EXE: segname __DATA EXE: addr 0x0000000100008000 EXE: size 0x0000000000000010 EXE: offset 32768 EXE: align 2^3 (8) EXE: reloff 0 EXE: nreloc 0 EXE: type S_NON_LAZY_SYMBOL_POINTERS EXE: attributes (none) EXE: reserved1 1 (index into indirect symbol table) EXE: reserved2 0 EXE: Section EXE: sectname __la_symbol_ptr EXE: segname __DATA EXE: addr 0x0000000100008010 EXE: size 0x0000000000000008 EXE: offset 32784 EXE: align 2^3 (8) EXE: reloff 0 EXE: nreloc 0 EXE: type S_LAZY_SYMBOL_POINTERS EXE: attributes (none) EXE: reserved1 3 (index into indirect symbol table) EXE: reserved2 0 EXE: Load command 3 EXE: cmd LC_SEGMENT_64 EXE: cmdsize 72 EXE: segname __LINKEDIT EXE: vmaddr 0x000000010000c000 EXE: vmsize 0x0000000000004000 EXE: fileoff 49152 EXE: filesize 264 EXE: maxprot r-- EXE: initprot r-- EXE: nsects 0 EXE: flags (none) EXE: Load command 4 EXE: cmd LC_DYLD_INFO_ONLY EXE: cmdsize 48 EXE: rebase_off 49152 EXE: rebase_size 8 EXE: bind_off 49160 EXE: bind_size 24 EXE: weak_bind_off 0 EXE: weak_bind_size 0 EXE: lazy_bind_off 49184 EXE: lazy_bind_size 16 EXE: export_off 49200 EXE: export_size 48 EXE: Load command 5 EXE: cmd LC_SYMTAB EXE: cmdsize 24 EXE: symoff 49280 EXE: nsyms 4 EXE: stroff 49360 EXE: strsize 56 EXE: Load command 6 EXE: cmd LC_DYSYMTAB EXE: cmdsize 80 EXE: ilocalsym 0 EXE: nlocalsym 0 EXE: iextdefsym 0 EXE: nextdefsym 2 EXE: iundefsym 2 EXE: nundefsym 2 EXE: tocoff 0 EXE: ntoc 0 EXE: modtaboff 0 EXE: nmodtab 0 EXE: extrefsymoff 0 EXE: nextrefsyms 0 EXE: indirectsymoff 49344 EXE: nindirectsyms 4 EXE: extreloff 0 EXE: nextrel 0 EXE: locreloff 0 EXE: nlocrel 0 EXE: Load command 7 EXE: cmd LC_LOAD_DYLINKER EXE: cmdsize 32 EXE: name /usr/lib/dyld (offset 12) EXE: Load command 8 EXE: cmd LC_UUID EXE: cmdsize 24 EXE: uuid D687F888-CD3F-3276-8C94-BA3CCA21D820 EXE: Load command 9 EXE: cmd LC_VERSION_MIN_IPHONEOS EXE: cmdsize 16 EXE: version 9.0 EXE: sdk 9.0 EXE: Load command 10 EXE: cmd LC_SOURCE_VERSION EXE: cmdsize 16 EXE: version 0.0 EXE: Load command 11 EXE: cmd LC_MAIN EXE: cmdsize 24 EXE: entryoff 32568 EXE: stacksize 0 EXE: Load command 12 EXE: cmd LC_ENCRYPTION_INFO_64 EXE: cmdsize 24 EXE: cryptoff 16384 EXE: cryptsize 16384 EXE: cryptid 0 EXE: pad 0 EXE: Load command 13 EXE: cmd LC_LOAD_DYLIB EXE: cmdsize 56 EXE: name /usr/lib/libSystem.B.dylib (offset 24) EXE: current version 1215.0.0 EXE: compatibility version 1.0.0 EXE: Load command 14 EXE: cmd LC_FUNCTION_STARTS EXE: cmdsize 16 EXE: dataoff 49248 EXE: datasize 8 EXE: Load command 15 EXE: cmd LC_DATA_IN_CODE EXE: cmdsize 16 EXE: dataoff 49256 EXE: datasize 0 EXE: Load command 16 EXE: cmd LC_DYLIB_CODE_SIGN_DRS EXE: cmdsize 16 EXE: dataoff 49256 EXE: datasize 24