## This test verifies that the linkedit segment is
## laid out in the right order.

# RUN: yaml2obj %s -o %t.original
# RUN: llvm-objcopy %t.original %t.copy
# RUN: obj2yaml %t.copy > %t.yaml
## Print the results several times in order to capture the linkedit offsets
## in the order they are needed, but still following the order of the load
## commands where they appear.
# RUN: cat %t.yaml %t.yaml %t.yaml | FileCheck %s

# CHECK: cmd:             LC_SEGMENT_64
# CHECK: segname:         __LINKEDIT
# CHECK: fileoff:         [[#LINKEDIT_FILEOFF:]]
# CHECK: filesize:        [[#LINKEDIT_FILESIZE:]]

# CHECK: cmd:             LC_DYLD_INFO_ONLY
# CHECK: rebase_off:      [[#REBASE_OFF: LINKEDIT_FILEOFF]]
# CHECK: rebase_size:     [[#REBASE_SIZE:]]
# CHECK: bind_off:        [[#BIND_OFF: REBASE_OFF + REBASE_SIZE]]
# CHECK: bind_size:       [[#BIND_SIZE:]]
# CHECK: weak_bind_off:   [[#WEAK_BIND_OFF: BIND_OFF + BIND_SIZE]]
# CHECK: weak_bind_size:  [[#WEAK_BIND_SIZE:]]
# CHECK: lazy_bind_off:   [[#LAZY_BIND_OFF: WEAK_BIND_OFF + WEAK_BIND_SIZE]]
# CHECK: lazy_bind_size:  [[#LAZY_BIND_SIZE:]]
# CHECK: export_off:      [[#EXPORTS_OFF:LAZY_BIND_OFF + LAZY_BIND_SIZE]]
# CHECK: export_size:     [[#EXPORTS_SIZE:]]

# CHECK: cmd:             LC_FUNCTION_STARTS
# CHECK: dataoff:         [[#FUNCTION_STARTS_FILEOFF: EXPORTS_OFF + EXPORTS_SIZE]]
# CHECK: datasize:        [[#FUNCTION_STARTS_FILESIZE:]]

# CHECK: cmd:             LC_DATA_IN_CODE
# CHECK: dataoff:         [[#DATA_IN_CODE_FILEOFF: FUNCTION_STARTS_FILEOFF + FUNCTION_STARTS_FILESIZE]]
# CHECK: datasize:        [[#DATA_IN_CODE_FILESIZE:]]

## Jump over LC_CODE_SIGNATURE, which needs to be checked last

# CHECK: --- !mach-o

# CHECK: cmd:             LC_SYMTAB
# CHECK: symoff:          [[#SYMTAB_SYMOFF: DATA_IN_CODE_FILEOFF + DATA_IN_CODE_FILESIZE]]
# CHECK: nsyms:           [[#SYMTAB_NSYMS:]]

## Skip over the strings table offset/size (part of LC_SYMTAB) until next loop.

# CHECK: cmd:             LC_DYSYMTAB
# CHECK: indirectsymoff:  [[#DYSYMTAB_INDIRECTSYMOFF: SYMTAB_SYMOFF + mul(SYMTAB_NSYMS, 16)]]
# CHECK: nindirectsyms:   [[#DYSYMTAB_NINDIRECTSYMS:]]

# CHECK: --- !mach-o

# CHECK: cmd:             LC_SYMTAB
# CHECK: stroff:          [[#SYMTAB_STROFF: DYSYMTAB_INDIRECTSYMOFF + mul(DYSYMTAB_NINDIRECTSYMS, 4)]]
# CHECK: strsize:         [[#SYMTAB_STRSIZE:]]

# CHECK: cmd:             LC_CODE_SIGNATURE
## LC_CODE_SIGNATURE needs to be aligned to 16 bytes boundaries.
# CHECK: dataoff:         [[#CODE_SIGNATURE_FILEOFF: mul(div(SYMTAB_STROFF + SYMTAB_STRSIZE + 8, 16), 16)]]
# CHECK: datasize:        [[#CODE_SIGNATURE_FILESIZE:LINKEDIT_FILEOFF + LINKEDIT_FILESIZE - CODE_SIGNATURE_FILEOFF]]

--- !mach-o
FileHeader:
  magic:           0xFEEDFACF
  cputype:         0x1000007
  cpusubtype:      0x3
  filetype:        0x2
  ncmds:           18
  sizeofcmds:      1352
  flags:           0x210085
  reserved:        0x0
LoadCommands:
  - cmd:             LC_SEGMENT_64
    cmdsize:         72
    segname:         __PAGEZERO
    vmaddr:          0
    vmsize:          4294967296
    fileoff:         0
    filesize:        0
    maxprot:         0
    initprot:        0
    nsects:          0
    flags:           0
  - cmd:             LC_SEGMENT_64
    cmdsize:         392
    segname:         __TEXT
    vmaddr:          4294967296
    vmsize:          16384
    fileoff:         0
    filesize:        16384
    maxprot:         5
    initprot:        5
    nsects:          4
    flags:           0
    Sections:
      - sectname:        __text
        segname:         __TEXT
        addr:            0x100003F80
        size:            16
        offset:          0x3F80
        align:           2
        reloff:          0x0
        nreloc:          0
        flags:           0x80000400
        reserved1:       0x0
        reserved2:       0x0
        reserved3:       0x0
        content:         E80B000000E80C000000C39000000000
      - sectname:        __stubs
        segname:         __TEXT
        addr:            0x100003F90
        size:            12
        offset:          0x3F90
        align:           1
        reloff:          0x0
        nreloc:          0
        flags:           0x80000408
        reserved1:       0x0
        reserved2:       0x6
        reserved3:       0x0
        content:         FF256A400000FF256C400000
      - sectname:        __stub_helper
        segname:         __TEXT
        addr:            0x100003F9C
        size:            26
        offset:          0x3F9C
        align:           2
        reloff:          0x0
        nreloc:          0
        flags:           0x80000400
        reserved1:       0x0
        reserved2:       0x0
        reserved3:       0x0
        content:         4C8D1D6D4000004153FF2555000000906800000000E9E6FFFFFF
      - sectname:        __unwind_info
        segname:         __TEXT
        addr:            0x100003FB8
        size:            72
        offset:          0x3FB8
        align:           2
        reloff:          0x0
        nreloc:          0
        flags:           0x0
        reserved1:       0x0
        reserved2:       0x0
        reserved3:       0x0
        content:         010000001C000000000000001C000000000000001C00000002000000803F00003400000034000000913F00000000000034000000030000000C000100100001000000000000000000
  - cmd:             LC_SEGMENT_64
    cmdsize:         152
    segname:         __DATA_CONST
    vmaddr:          4294983680
    vmsize:          16384
    fileoff:         16384
    filesize:        16384
    maxprot:         3
    initprot:        3
    nsects:          1
    flags:           16
    Sections:
      - sectname:        __got
        segname:         __DATA_CONST
        addr:            0x100004000
        size:            8
        offset:          0x4000
        align:           3
        reloff:          0x0
        nreloc:          0
        flags:           0x6
        reserved1:       0x2
        reserved2:       0x0
        reserved3:       0x0
        content:         '0000000000000000'
  - cmd:             LC_SEGMENT_64
    cmdsize:         232
    segname:         __DATA
    vmaddr:          4295000064
    vmsize:          16384
    fileoff:         32768
    filesize:        16384
    maxprot:         3
    initprot:        3
    nsects:          2
    flags:           0
    Sections:
      - sectname:        __la_symbol_ptr
        segname:         __DATA
        addr:            0x100008000
        size:            16
        offset:          0x8000
        align:           3
        reloff:          0x0
        nreloc:          0
        flags:           0x7
        reserved1:       0x3
        reserved2:       0x0
        reserved3:       0x0
        content:         AC3F0000010000000000000000000000
      - sectname:        __data
        segname:         __DATA
        addr:            0x100008010
        size:            8
        offset:          0x8010
        align:           3
        reloff:          0x0
        nreloc:          0
        flags:           0x0
        reserved1:       0x0
        reserved2:       0x0
        reserved3:       0x0
        content:         '0000000000000000'
  - cmd:             LC_SEGMENT_64
    cmdsize:         72
    segname:         __LINKEDIT
    vmaddr:          4295016448
    vmsize:          16384
    fileoff:         49152
    filesize:        920
    maxprot:         1
    initprot:        1
    nsects:          0
    flags:           0
  - cmd:             LC_DYLD_INFO_ONLY
    cmdsize:         48
    rebase_off:      49152
    rebase_size:     8
    bind_off:        49160
    bind_size:       56
    weak_bind_off:   49216
    weak_bind_size:  32
    lazy_bind_off:   49248
    lazy_bind_size:  16
    export_off:      49264
    export_size:     48
  - cmd:             LC_SYMTAB
    cmdsize:         24
    symoff:          49328
    nsyms:           6
    stroff:          49448
    strsize:         80
  - cmd:             LC_DYSYMTAB
    cmdsize:         80
    ilocalsym:       0
    nlocalsym:       1
    iextdefsym:      1
    nextdefsym:      2
    iundefsym:       3
    nundefsym:       3
    tocoff:          0
    ntoc:            0
    modtaboff:       0
    nmodtab:         0
    extrefsymoff:    0
    nextrefsyms:     0
    indirectsymoff:  49424
    nindirectsyms:   5
    extreloff:       0
    nextrel:         0
    locreloff:       0
    nlocrel:         0
  - cmd:             LC_LOAD_DYLINKER
    cmdsize:         32
    name:            12
    Content:         '/usr/lib/dyld'
    ZeroPadBytes:    7
  - cmd:             LC_UUID
    cmdsize:         24
    uuid:            D565F8BE-1140-391A-BD6E-9CED386430F2
  - cmd:             LC_BUILD_VERSION
    cmdsize:         32
    platform:        1
    minos:           786432
    sdk:             787200
    ntools:          1
    Tools:
      - tool:            3
        version:         50069504
  - cmd:             LC_SOURCE_VERSION
    cmdsize:         16
    version:         0
  - cmd:             LC_MAIN
    cmdsize:         24
    entryoff:        16256
    stacksize:       0
  - cmd:             LC_LOAD_DYLIB
    cmdsize:         48
    dylib:
      name:            24
      timestamp:       2
      current_version: 0
      compatibility_version: 0
    Content:         libFoo-classic.dylib
    ZeroPadBytes:    4
  - cmd:             LC_LOAD_DYLIB
    cmdsize:         56
    dylib:
      name:            24
      timestamp:       2
      current_version: 85943299
      compatibility_version: 65536
    Content:         '/usr/lib/libSystem.B.dylib'
    ZeroPadBytes:    6
  - cmd:             LC_FUNCTION_STARTS
    cmdsize:         16
    dataoff:         49312
    datasize:        8
  - cmd:             LC_DATA_IN_CODE
    cmdsize:         16
    dataoff:         49320
    datasize:        8
  - cmd:             LC_CODE_SIGNATURE
    cmdsize:         16
    dataoff:         49536
    datasize:        536
LinkEditData:
  RebaseOpcodes:
    - Opcode:          REBASE_OPCODE_SET_TYPE_IMM
      Imm:             1
    - Opcode:          REBASE_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB
      Imm:             3
      ExtraData:       [ 0x0 ]
    - Opcode:          REBASE_OPCODE_DO_REBASE_IMM_TIMES
      Imm:             1
    - Opcode:          REBASE_OPCODE_DONE
      Imm:             0
  BindOpcodes:
    - Opcode:          BIND_OPCODE_SET_DYLIB_ORDINAL_IMM
      Imm:             1
      Symbol:          ''
    - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
      Imm:             0
      Symbol:          _weak_foo
    - Opcode:          BIND_OPCODE_SET_TYPE_IMM
      Imm:             1
      Symbol:          ''
    - Opcode:          BIND_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB
      Imm:             3
      ULEBExtraData:   [ 0x8 ]
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DO_BIND_ADD_ADDR_ULEB
      Imm:             0
      ULEBExtraData:   [ 0xFFFFFFFFFFFFFFF8 ]
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DO_BIND
      Imm:             0
      Symbol:          ''
    - Opcode:          BIND_OPCODE_SET_DYLIB_ORDINAL_IMM
      Imm:             2
      Symbol:          ''
    - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
      Imm:             0
      Symbol:          dyld_stub_binder
    - Opcode:          BIND_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB
      Imm:             2
      ULEBExtraData:   [ 0x0 ]
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DO_BIND
      Imm:             0
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DONE
      Imm:             0
      Symbol:          ''
  WeakBindOpcodes:
    - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
      Imm:             0
      Symbol:          _weak_foo
    - Opcode:          BIND_OPCODE_SET_TYPE_IMM
      Imm:             1
      Symbol:          ''
    - Opcode:          BIND_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB
      Imm:             3
      ULEBExtraData:   [ 0x8 ]
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DO_BIND_ADD_ADDR_ULEB
      Imm:             0
      ULEBExtraData:   [ 0xFFFFFFFFFFFFFFF8 ]
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DO_BIND
      Imm:             0
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DONE
      Imm:             0
      Symbol:          ''
  LazyBindOpcodes:
    - Opcode:          BIND_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB
      Imm:             3
      ULEBExtraData:   [ 0x0 ]
      Symbol:          ''
    - Opcode:          BIND_OPCODE_SET_DYLIB_ORDINAL_IMM
      Imm:             1
      Symbol:          ''
    - Opcode:          BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM
      Imm:             0
      Symbol:          _foo
    - Opcode:          BIND_OPCODE_DO_BIND
      Imm:             0
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DONE
      Imm:             0
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DONE
      Imm:             0
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DONE
      Imm:             0
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DONE
      Imm:             0
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DONE
      Imm:             0
      Symbol:          ''
    - Opcode:          BIND_OPCODE_DONE
      Imm:             0
      Symbol:          ''
  ExportTrie:
    TerminalSize:    0
    NodeOffset:      0
    Name:            ''
    Flags:           0x0
    Address:         0x0
    Other:           0x0
    ImportName:      ''
    Children:
      - TerminalSize:    0
        NodeOffset:      5
        Name:            _
        Flags:           0x0
        Address:         0x0
        Other:           0x0
        ImportName:      ''
        Children:
          - TerminalSize:    2
            NodeOffset:      33
            Name:            _mh_execute_header
            Flags:           0x0
            Address:         0x0
            Other:           0x0
            ImportName:      ''
          - TerminalSize:    3
            NodeOffset:      37
            Name:            main
            Flags:           0x0
            Address:         0x3F80
            Other:           0x0
            ImportName:      ''
  NameList:
    - n_strx:          60
      n_type:          0xE
      n_sect:          7
      n_desc:          0
      n_value:         4295000080
    - n_strx:          2
      n_type:          0xF
      n_sect:          1
      n_desc:          16
      n_value:         4294967296
    - n_strx:          22
      n_type:          0xF
      n_sect:          1
      n_desc:          0
      n_value:         4294983552
    - n_strx:          28
      n_type:          0x1
      n_sect:          0
      n_desc:          256
      n_value:         0
    - n_strx:          33
      n_type:          0x1
      n_sect:          0
      n_desc:          384
      n_value:         0
    - n_strx:          43
      n_type:          0x1
      n_sect:          0
      n_desc:          512
      n_value:         0
  StringTable:
    - ' '
    - __mh_execute_header
    - _main
    - _foo
    - _weak_foo
    - dyld_stub_binder
    - __dyld_private
    - ''
    - ''
    - ''
    - ''
    - ''
  IndirectSymbols: [ 0x3, 0x4, 0x5, 0x3, 0x4 ]
  FunctionStarts:  [ 0x3F80 ]
  DataInCode:
    - Offset:          0x3F8C
      Length:          4
      Kind:            0x4
...
