Home | History | Annotate | Download | only in MachO
      1 # RUN: yaml2obj %s | obj2yaml | FileCheck %s
      2 
      3 --- !mach-o
      4 FileHeader:      
      5   magic:           0xFEEDFACF
      6   cputype:         0x01000007
      7   cpusubtype:      0x80000003
      8   filetype:        0x00000002
      9   ncmds:           16
     10   sizeofcmds:      1408
     11   flags:           0x00218085
     12   reserved:        0x00000000
     13 LoadCommands:    
     14   - cmd:             LC_SEGMENT_64
     15     cmdsize:         72
     16     segname:         __PAGEZERO
     17     vmaddr:          0
     18     vmsize:          4294967296
     19     fileoff:         0
     20     filesize:        0
     21     maxprot:         0
     22     initprot:        0
     23     nsects:          0
     24     flags:           0
     25   - cmd:             LC_SEGMENT_64
     26     cmdsize:         552
     27     segname:         __TEXT
     28     vmaddr:          4294967296
     29     vmsize:          8192
     30     fileoff:         0
     31     filesize:        8192
     32     maxprot:         7
     33     initprot:        5
     34     nsects:          6
     35     flags:           0
     36     Sections:        
     37       - sectname:        __text
     38         segname:         __TEXT
     39         addr:            0x0000000100001160
     40         size:            3099
     41         offset:          0x00001160
     42         align:           4
     43         reloff:          0x00000000
     44         nreloc:          0
     45         flags:           0x80000400
     46         reserved1:       0x00000000
     47         reserved2:       0x00000000
     48         reserved3:       0x00000000
     49       - sectname:        __stubs
     50         segname:         __TEXT
     51         addr:            0x0000000100001D7C
     52         size:            90
     53         offset:          0x00001D7C
     54         align:           1
     55         reloff:          0x00000000
     56         nreloc:          0
     57         flags:           0x80000408
     58         reserved1:       0x00000000
     59         reserved2:       0x00000006
     60         reserved3:       0x00000000
     61       - sectname:        __stub_helper
     62         segname:         __TEXT
     63         addr:            0x0000000100001DD8
     64         size:            166
     65         offset:          0x00001DD8
     66         align:           2
     67         reloff:          0x00000000
     68         nreloc:          0
     69         flags:           0x80000400
     70         reserved1:       0x00000000
     71         reserved2:       0x00000000
     72         reserved3:       0x00000000
     73       - sectname:        __gcc_except_tab
     74         segname:         __TEXT
     75         addr:            0x0000000100001E80
     76         size:            240
     77         offset:          0x00001E80
     78         align:           2
     79         reloff:          0x00000000
     80         nreloc:          0
     81         flags:           0x00000000
     82         reserved1:       0x00000000
     83         reserved2:       0x00000000
     84         reserved3:       0x00000000
     85       - sectname:        __cstring
     86         segname:         __TEXT
     87         addr:            0x0000000100001F70
     88         size:            15
     89         offset:          0x00001F70
     90         align:           0
     91         reloff:          0x00000000
     92         nreloc:          0
     93         flags:           0x00000002
     94         reserved1:       0x00000000
     95         reserved2:       0x00000000
     96         reserved3:       0x00000000
     97       - sectname:        __unwind_info
     98         segname:         __TEXT
     99         addr:            0x0000000100001F80
    100         size:            120
    101         offset:          0x00001F80
    102         align:           2
    103         reloff:          0x00000000
    104         nreloc:          0
    105         flags:           0x00000000
    106         reserved1:       0x00000000
    107         reserved2:       0x00000000
    108         reserved3:       0x00000000
    109   - cmd:             LC_SEGMENT_64
    110     cmdsize:         312
    111     segname:         __DATA
    112     vmaddr:          4294975488
    113     vmsize:          4096
    114     fileoff:         8192
    115     filesize:        4096
    116     maxprot:         7
    117     initprot:        3
    118     nsects:          3
    119     flags:           0
    120     Sections:        
    121       - sectname:        __got
    122         segname:         __DATA
    123         addr:            0x0000000100002000
    124         size:            24
    125         offset:          0x00002000
    126         align:           3
    127         reloff:          0x00000000
    128         nreloc:          0
    129         flags:           0x00000006
    130         reserved1:       0x0000000F
    131         reserved2:       0x00000000
    132         reserved3:       0x00000000
    133       - sectname:        __nl_symbol_ptr
    134         segname:         __DATA
    135         addr:            0x0000000100002018
    136         size:            16
    137         offset:          0x00002018
    138         align:           3
    139         reloff:          0x00000000
    140         nreloc:          0
    141         flags:           0x00000006
    142         reserved1:       0x00000012
    143         reserved2:       0x00000000
    144         reserved3:       0x00000000
    145       - sectname:        __la_symbol_ptr
    146         segname:         __DATA
    147         addr:            0x0000000100002028
    148         size:            120
    149         offset:          0x00002028
    150         align:           3
    151         reloff:          0x00000000
    152         nreloc:          0
    153         flags:           0x00000007
    154         reserved1:       0x00000014
    155         reserved2:       0x00000000
    156         reserved3:       0x00000000
    157   - cmd:             LC_SEGMENT_64
    158     cmdsize:         72
    159     segname:         __LINKEDIT
    160     vmaddr:          4294979584
    161     vmsize:          4096
    162     fileoff:         12288
    163     filesize:        2508
    164     maxprot:         7
    165     initprot:        1
    166     nsects:          0
    167     flags:           0
    168   - cmd:             LC_DYLD_INFO_ONLY
    169     cmdsize:         48
    170     rebase_off:      12288
    171     rebase_size:     8
    172     bind_off:        12296
    173     bind_size:       96
    174     weak_bind_off:   0
    175     weak_bind_size:  0
    176     lazy_bind_off:   12392
    177     lazy_bind_size:  624
    178     export_off:      13016
    179     export_size:     48
    180   - cmd:             LC_SYMTAB
    181     cmdsize:         24
    182     symoff:          13080
    183     nsyms:           30
    184     stroff:          13700
    185     strsize:         1096
    186   - cmd:             LC_DYSYMTAB
    187     cmdsize:         80
    188     ilocalsym:       0
    189     nlocalsym:       9
    190     iextdefsym:      9
    191     nextdefsym:      2
    192     iundefsym:       11
    193     nundefsym:       19
    194     tocoff:          0
    195     ntoc:            0
    196     modtaboff:       0
    197     nmodtab:         0
    198     extrefsymoff:    0
    199     nextrefsyms:     0
    200     indirectsymoff:  13560
    201     nindirectsyms:   35
    202     extreloff:       0
    203     nextrel:         0
    204     locreloff:       0
    205     nlocrel:         0
    206   - cmd:             LC_LOAD_DYLINKER
    207     cmdsize:         32
    208     name:            12
    209   - cmd:             LC_UUID
    210     cmdsize:         24
    211     uuid:            461A1B28-822F-3F38-B670-645419E636F5
    212   - cmd:             LC_VERSION_MIN_MACOSX
    213     cmdsize:         16
    214     version:         658176
    215     sdk:             658176
    216   - cmd:             LC_SOURCE_VERSION
    217     cmdsize:         16
    218     version:         0
    219   - cmd:             LC_MAIN
    220     cmdsize:         24
    221     entryoff:        4448
    222     stacksize:       0
    223   - cmd:             LC_LOAD_DYLIB
    224     cmdsize:         48
    225     dylib:           
    226       name:            24
    227       timestamp:       2
    228       current_version: 7864576
    229       compatibility_version: 65536
    230   - cmd:             LC_LOAD_DYLIB
    231     cmdsize:         56
    232     dylib:           
    233       name:            24
    234       timestamp:       2
    235       current_version: 80349697
    236       compatibility_version: 65536
    237   - cmd:             LC_FUNCTION_STARTS
    238     cmdsize:         16
    239     dataoff:         13064
    240     datasize:        16
    241   - cmd:             LC_DATA_IN_CODE
    242     cmdsize:         16
    243     dataoff:         13080
    244     datasize:        0
    245 ...
    246 
    247 
    248 #CHECK:   - cmd:             LC_SEGMENT_64
    249 #CHECK:     segname:         __PAGEZERO
    250 #CHECK:   - cmd:             LC_SEGMENT_64
    251 #CHECK:     segname:         __TEXT
    252 #CHECK:     Sections:        
    253 #CHECK:       - sectname:        __text
    254 #CHECK:         segname:         __TEXT
    255 #CHECK:         addr:            0x0000000100001160
    256 #CHECK:         size:            3099
    257 #CHECK:         offset:          0x00001160
    258 #CHECK:         align:           4
    259 #CHECK:         reloff:          0x00000000
    260 #CHECK:         nreloc:          0
    261 #CHECK:         flags:           0x80000400
    262 #CHECK:         reserved1:       0x00000000
    263 #CHECK:         reserved2:       0x00000000
    264 #CHECK:         reserved3:       0x00000000
    265 #CHECK:       - sectname:        __stubs
    266 #CHECK:         segname:         __TEXT
    267 #CHECK:       - sectname:        __stub_helper
    268 #CHECK:         segname:         __TEXT
    269 #CHECK:       - sectname:        __gcc_except_tab
    270 #CHECK:         segname:         __TEXT
    271 #CHECK:       - sectname:        __cstring
    272 #CHECK:         segname:         __TEXT
    273 #CHECK:       - sectname:        __unwind_info
    274 #CHECK:         segname:         __TEXT
    275 #CHECK:   - cmd:             LC_SEGMENT_64
    276 #CHECK:     segname:         __DATA
    277 #CHECK:     Sections:        
    278 #CHECK:       - sectname:        __got
    279 #CHECK:         segname:         __DATA
    280 #CHECK:       - sectname:        __nl_symbol_ptr
    281 #CHECK:         segname:         __DATA
    282 #CHECK:       - sectname:        __la_symbol_ptr
    283 #CHECK:         segname:         __DATA
    284