subsections-via-symbols-default.yaml 981 Bytes
# RUN: ld64.lld -ios_simulator_version_min 5.0 -arch x86_64 -r %s -o %t
# RUN: llvm-readobj --file-headers %t | FileCheck %s

# Make sure that we have an objc image info in the output.  It should have
# been generated by the objc pass.

--- !mach-o
arch:            x86_64
file-type:       MH_OBJECT
flags:           [ MH_SUBSECTIONS_VIA_SYMBOLS ]
compat-version:  0.0
current-version: 0.0
has-UUID:        false
OS:              unknown
sections:
  - segment:         __DATA
    section:         __objc_imageinfo
    type:            S_REGULAR
    attributes:      [ S_ATTR_NO_DEAD_STRIP ]
    address:         0x0000000000000100
    content:         [ 0x00, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00 ]
...

# The ObjC pass creates a new image info in a new MachoFile internal to the pass.
# Make sure that we still have MH_SUBSECTIONS_VIA_SYMBOLS in the output file, even
# though that file in the ObjCPass didn't get it set from being parsed.

# CHECK: MH_SUBSECTIONS_VIA_SYMBOLS