| # REQUIRES: x86 |
| ## FIXME: This yaml is from an object file produced with 'ld -r': |
| ## |
| ## echo "int main() {return 1;}" > test.c |
| ## clang -c -g -o test.o test.c |
| ## ld -r -o test2.o test.o -no_data_in_code_info |
| ## |
| ## Replace this with "normal" .s test format once lld supports `-r` |
| |
| # RUN: yaml2obj %s -o %t.o |
| # RUN: %lld -lSystem -arch x86_64 %t.o -o %t |
| |
| --- !mach-o |
| FileHeader: |
| magic: 0xFEEDFACF |
| cputype: 0x1000007 |
| cpusubtype: 0x3 |
| filetype: 0x1 |
| ncmds: 3 |
| sizeofcmds: 288 |
| flags: 0x2000 |
| reserved: 0x0 |
| LoadCommands: |
| - cmd: LC_SEGMENT_64 |
| cmdsize: 232 |
| segname: '' |
| vmaddr: 0 |
| vmsize: 56 |
| fileoff: 352 |
| filesize: 56 |
| maxprot: 7 |
| initprot: 7 |
| nsects: 2 |
| flags: 0 |
| Sections: |
| - sectname: __text |
| segname: __TEXT |
| addr: 0x0 |
| size: 18 |
| offset: 0x160 |
| align: 4 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x80000400 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| content: 554889E5C745FC00000000B8010000005DC3 |
| - sectname: __compact_unwind |
| segname: __LD |
| addr: 0x18 |
| size: 32 |
| offset: 0x178 |
| align: 3 |
| reloff: 0x198 |
| nreloc: 1 |
| flags: 0x2000000 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| content: '0000000000000000120000000000000100000000000000000000000000000000' |
| relocations: |
| - address: 0x0 |
| symbolnum: 8 |
| pcrel: false |
| length: 3 |
| extern: true |
| type: 0 |
| scattered: false |
| value: 0 |
| - cmd: LC_SYMTAB |
| cmdsize: 24 |
| symoff: 416 |
| nsyms: 9 |
| stroff: 560 |
| strsize: 48 |
| - cmd: LC_BUILD_VERSION |
| cmdsize: 32 |
| platform: 1 |
| minos: 659200 |
| sdk: 0 |
| ntools: 1 |
| Tools: |
| - tool: 3 |
| version: 46596096 |
| LinkEditData: |
| NameList: |
| - n_strx: 8 |
| n_type: 0x64 ## N_SO STAB |
| n_sect: 0 |
| n_desc: 0 |
| n_value: 0 |
| - n_strx: 14 |
| n_type: 0x64 ## N_SO STAB |
| n_sect: 0 |
| n_desc: 0 |
| n_value: 0 |
| - n_strx: 21 |
| n_type: 0x66 ## N_OSO STAB |
| n_sect: 3 |
| n_desc: 1 |
| n_value: 1651001352 |
| - n_strx: 1 |
| n_type: 0x2E ## N_BNSYM STAB |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 0 |
| - n_strx: 41 |
| n_type: 0x24 ## N_FUN STAB |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 0 |
| - n_strx: 1 |
| n_type: 0x24 ## N_FUN STAB |
| n_sect: 0 |
| n_desc: 0 |
| n_value: 18 |
| - n_strx: 1 |
| n_type: 0x4E ## N_ENSYM STAB |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 18 |
| - n_strx: 1 |
| n_type: 0x64 ## N_SO STAB |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 0 |
| - n_strx: 2 |
| n_type: 0xF |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 0 |
| StringTable: |
| - ' ' |
| - _main |
| - '/tmp/' |
| - test.c |
| - '/private/tmp/test.o' |
| - _main |
| - '' |
| ... |