1# RUN: yaml2obj %s | obj2yaml | FileCheck %s
2
3--- !mach-o
4FileHeader:      
5  magic:           0xFEEDFACF
6  cputype:         0x01000007
7  cpusubtype:      0x80000003
8  filetype:        0x00000002
9  ncmds:           4
10  sizeofcmds:      224
11  flags:           0x00218085
12  reserved:        0x00000000
13LoadCommands:    
14  - cmd:             LC_SEGMENT_64
15    cmdsize:         72
16    segname:         __LINKEDIT
17    vmaddr:          4294979584
18    vmsize:          4096
19    fileoff:         1024
20    filesize:        2508
21    maxprot:         7
22    initprot:        1
23    nsects:          0
24    flags:           0
25  - cmd:             LC_DYLD_INFO_ONLY
26    cmdsize:         48
27    rebase_off:      1024
28    rebase_size:     8
29    bind_off:        0
30    bind_size:       0
31    weak_bind_off:   1032
32    weak_bind_size:  96
33    lazy_bind_off:   1128
34    lazy_bind_size:  624
35    export_off:      1752
36    export_size:     48
37  - cmd:             LC_SYMTAB
38    cmdsize:         24
39    symoff:          1816
40    nsyms:           30
41    stroff:          2436
42    strsize:         1096
43  - cmd:             LC_DYSYMTAB
44    cmdsize:         80
45    ilocalsym:       0
46    nlocalsym:       9
47    iextdefsym:      9
48    nextdefsym:      2
49    iundefsym:       11
50    nundefsym:       19
51    tocoff:          0
52    ntoc:            0
53    modtaboff:       0
54    nmodtab:         0
55    extrefsymoff:    0
56    nextrefsyms:     0
57    indirectsymoff:  2296
58    nindirectsyms:   35
59    extreloff:       0
60    nextrel:         0
61    locreloff:       0
62    nlocrel:         0
63LinkEditData:    
64  WeakBindOpcodes:     
65    - Opcode:          BIND_OPCODE_SET_DYLIB_ORDINAL_IMM
66      Imm:             1
67    - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
68      Imm:             0
69      Symbol:          __ZNSt3__14coutE
70    - Opcode:          BIND_OPCODE_SET_TYPE_IMM
71      Imm:             1
72    - Opcode:          BIND_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB
73      Imm:             2
74      ULEBExtraData:   
75        - 0x0000000000000000
76    - Opcode:          BIND_OPCODE_DO_BIND
77      Imm:             0
78    - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
79      Imm:             0
80      Symbol:          __ZNSt3__15ctypeIcE2idE
81    - Opcode:          BIND_OPCODE_DO_BIND
82      Imm:             0
83    - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
84      Imm:             0
85      Symbol:          ___gxx_personality_v0
86    - Opcode:          BIND_OPCODE_DO_BIND
87      Imm:             0
88    - Opcode:          BIND_OPCODE_SET_DYLIB_ORDINAL_IMM
89      Imm:             2
90    - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
91      Imm:             0
92      Symbol:          dyld_stub_binder
93    - Opcode:          BIND_OPCODE_DO_BIND
94      Imm:             0
95    - Opcode:          BIND_OPCODE_DONE
96      Imm:             0
97...
98
99#CHECK: LinkEditData:
100#CHECK:   WeakBindOpcodes:
101#CHECK:     - Opcode:          BIND_OPCODE_SET_DYLIB_ORDINAL_IMM
102#CHECK:       Imm:             1
103#CHECK:     - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
104#CHECK:       Imm:             0
105#CHECK:       Symbol:          __ZNSt3__14coutE
106#CHECK:     - Opcode:          BIND_OPCODE_SET_TYPE_IMM
107#CHECK:       Imm:             1
108#CHECK:     - Opcode:          BIND_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB
109#CHECK:       Imm:             2
110#CHECK:       ULEBExtraData:
111#CHECK:         - 0x0000000000000000
112#CHECK:     - Opcode:          BIND_OPCODE_DO_BIND
113#CHECK:       Imm:             0
114#CHECK:     - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
115#CHECK:       Imm:             0
116#CHECK:       Symbol:          __ZNSt3__15ctypeIcE2idE
117#CHECK:     - Opcode:          BIND_OPCODE_DO_BIND
118#CHECK:       Imm:             0
119#CHECK:     - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
120#CHECK:       Imm:             0
121#CHECK:       Symbol:          ___gxx_personality_v0
122#CHECK:     - Opcode:          BIND_OPCODE_DO_BIND
123#CHECK:       Imm:             0
124#CHECK:     - Opcode:          BIND_OPCODE_SET_DYLIB_ORDINAL_IMM
125#CHECK:       Imm:             2
126#CHECK:     - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
127#CHECK:       Imm:             0
128#CHECK:       Symbol:          dyld_stub_binder
129#CHECK:     - Opcode:          BIND_OPCODE_DO_BIND
130#CHECK:       Imm:             0
131#CHECK:     - Opcode:          BIND_OPCODE_DONE
132#CHECK:       Imm:             0
133
134