## Verify that -T removes Swift symbols.
# RUN: yaml2obj -D FLAGS=0x00200085 -D SEGMENT_NAME=__DATA \
# RUN:  -D SECTION_NAME=__objc_imageinfo -D SECTION_SIZE=8 \
# RUN:  -D SECTION_CONTENT=0000000040070105 %s -o %t1
# RUN: llvm-strip -x -T %t1
# RUN: llvm-readobj -s %t1 | FileCheck --check-prefix=NO-SWIFT-SYMBOLS %s

# RUN: yaml2obj -D FLAGS=0x00200085 -D SEGMENT_NAME=__DATA_CONST \
# RUN:  -D SECTION_NAME=__objc_imageinfo -D SECTION_SIZE=8 \
# RUN:  -D SECTION_CONTENT=0000000040070105 %s -o %t2
# RUN: llvm-strip -x -T %t2
# RUN: llvm-readobj -s %t2 | FileCheck --check-prefix=NO-SWIFT-SYMBOLS %s

# RUN: yaml2obj -D FLAGS=0x00200085 -D SEGMENT_NAME=__DATA_DIRTY \
# RUN:  -D SECTION_NAME=__objc_imageinfo -D SECTION_SIZE=8 \
# RUN:  -D SECTION_CONTENT=0000000040070105 %s -o %t3
# RUN: llvm-strip -x -T %t3
# RUN: llvm-readobj -s %t3 | FileCheck --check-prefix=NO-SWIFT-SYMBOLS %s

# NO-SWIFT-SYMBOLS:      Symbols [
# NO-SWIFT-SYMBOLS-NEXT:  Symbol {
# NO-SWIFT-SYMBOLS-NEXT:    Name: _main (2)
# NO-SWIFT-SYMBOLS-NEXT:    Extern
# NO-SWIFT-SYMBOLS-NEXT:    Type: Section (0xE)
# NO-SWIFT-SYMBOLS-NEXT:    Section: __text (0x1)
# NO-SWIFT-SYMBOLS-NEXT:    RefType: UndefinedNonLazy (0x0)
# NO-SWIFT-SYMBOLS-NEXT:    Flags [ (0x0)
# NO-SWIFT-SYMBOLS-NEXT:    ]
# NO-SWIFT-SYMBOLS-NEXT:    Value: 0x100000B70
# NO-SWIFT-SYMBOLS-NEXT:  }
# NO-SWIFT-SYMBOLS-NEXT: ]

## Verify that -T does not remove (public) Swift symbols when the binary
## does not contain __objc_imageinfo in one of the expected segments.

# RUN: yaml2obj -D FLAGS=0x00200085 -D SEGMENT_NAME=__DATA \
# RUN:  -D SECTION_NAME=__not_objc_imageinfo -D SECTION_SIZE=8 \
# RUN:  -D SECTION_CONTENT=0000000040070105 %s -o %t4
# RUN: llvm-strip -x -T %t4
# RUN: llvm-readobj -s %t4 | FileCheck --check-prefix=SWIFT-SYMBOLS %s

# RUN: yaml2obj -D FLAGS=0x00200085 -D SEGMENT_NAME=__NOT_DATA \
# RUN:  -D SECTION_NAME=__objc_imageinfo -D SECTION_SIZE=8 \
# RUN:  -D SECTION_CONTENT=0000000040070105 %s -o %t5
# RUN: llvm-strip -x -T %t5
# RUN: llvm-readobj -s %t5 | FileCheck --check-prefix=SWIFT-SYMBOLS %s

## Verify that -T does not remove (public) Swift symbols when swift_version is zero.

# RUN: yaml2obj -D FLAGS=0x00200085 -D SEGMENT_NAME=__DATA \
# RUN:  -D SECTION_NAME=__objc_imageinfo -D SECTION_SIZE=8 \
# RUN:  -D SECTION_CONTENT=0000000000000000 %s -o %t6
# RUN: llvm-strip -x -T %t6
# RUN: llvm-readobj -s %t6 | FileCheck --check-prefix=SWIFT-SYMBOLS %s

## Verify that -T does not remove (public) Swift symbols when the binary
## contains invalid (too small) __objc_imageinfo.

# RUN: yaml2obj -D FLAGS=0x00200085 -D SEGMENT_NAME=__DATA \
# RUN:  -D SECTION_NAME=__objc_imageinfo -D SECTION_SIZE=4 \
# RUN:  -D SECTION_CONTENT=00000000 %s -o %t7
# RUN: llvm-strip -x -T %t7
# RUN: llvm-readobj -s %t7 | FileCheck --check-prefix=SWIFT-SYMBOLS %s

## Verify that -T does not remove (public) Swift symbols
## when the flag MH_DYLDLINK is not set.

# RUN: yaml2obj -D FLAGS=0x00200000 -D SEGMENT_NAME=__DATA \
# RUN:  -D SECTION_NAME=__objc_imageinfo -D SECTION_SIZE=8 \
# RUN:  -D SECTION_CONTENT=0000000040070105 %s -o %t8
# RUN: llvm-strip -x -T %t8
# RUN: llvm-readobj -s %t8 | FileCheck --check-prefix=SWIFT-SYMBOLS %s

# SWIFT-SYMBOLS:      Symbols [
# SWIFT-SYMBOLS-NEXT:  Symbol {
# SWIFT-SYMBOLS-NEXT:    Name: _$S1a13PublicSymbol1Sivp (27)
# SWIFT-SYMBOLS-NEXT:    Extern
# SWIFT-SYMBOLS-NEXT:    Type: Section (0xE)
# SWIFT-SYMBOLS-NEXT:    Section: __text (0x1)
# SWIFT-SYMBOLS-NEXT:    RefType: UndefinedNonLazy (0x0)
# SWIFT-SYMBOLS-NEXT:    Flags [ (0x0)
# SWIFT-SYMBOLS-NEXT:    ]
# SWIFT-SYMBOLS-NEXT:    Value: 0x100001160
# SWIFT-SYMBOLS-NEXT:  }
# SWIFT-SYMBOLS-NEXT:  Symbol {
# SWIFT-SYMBOLS-NEXT:    Name: _$s1a13PublicSymbol2Sivp (2)
# SWIFT-SYMBOLS-NEXT:    Extern
# SWIFT-SYMBOLS-NEXT:    Type: Section (0xE)
# SWIFT-SYMBOLS-NEXT:    Section: __text (0x1)
# SWIFT-SYMBOLS-NEXT:    RefType: UndefinedNonLazy (0x0)
# SWIFT-SYMBOLS-NEXT:    Flags [ (0x0)
# SWIFT-SYMBOLS-NEXT:    ]
# SWIFT-SYMBOLS-NEXT:    Value: 0x100001168
# SWIFT-SYMBOLS-NEXT:  }
# SWIFT-SYMBOLS-NEXT:  Symbol {
# SWIFT-SYMBOLS-NEXT:    Name: _main (52)
# SWIFT-SYMBOLS-NEXT:    Extern
# SWIFT-SYMBOLS-NEXT:    Type: Section (0xE)
# SWIFT-SYMBOLS-NEXT:    Section: __text (0x1)
# SWIFT-SYMBOLS-NEXT:    RefType: UndefinedNonLazy (0x0)
# SWIFT-SYMBOLS-NEXT:    Flags [ (0x0)
# SWIFT-SYMBOLS-NEXT:    ]
# SWIFT-SYMBOLS-NEXT:    Value: 0x100000B70
# SWIFT-SYMBOLS-NEXT:  }
# SWIFT-SYMBOLS-NEXT: ]

--- !mach-o
FileHeader:
  magic:           0xFEEDFACF
  cputype:         0x01000007
  cpusubtype:      0x80000003
  filetype:        0x00000002
  ncmds:           4
  sizeofcmds:      400
  flags:           [[FLAGS]]
  reserved:        0x00000000
LoadCommands:
  - cmd:             LC_SEGMENT_64
    cmdsize:         152
    segname:         __TEXT
    vmaddr:          4294967296
    vmsize:          4096
    fileoff:         0
    filesize:        4096
    maxprot:         5
    initprot:        5
    nsects:          1
    flags:           0
    Sections:
      - sectname:        __text
        segname:         __TEXT
        addr:            0x0000000100000B70
        size:            845
        offset:          0x00000B70
        align:           4
        reloff:          0x00000000
        nreloc:          0
        flags:           0x80000400
        reserved1:       0x00000000
        reserved2:       0x00000000
        reserved3:       0x00000000
  - cmd:             LC_SEGMENT_64
    cmdsize:         152
    segname:         [[SEGMENT_NAME]]
    vmaddr:          4294971392
    vmsize:          4096
    fileoff:         4096
    filesize:        4096
    maxprot:         3
    initprot:        3
    nsects:          1
    flags:           0
    Sections:
      - sectname:        [[SECTION_NAME]]
        segname:         [[SEGMENT_NAME]]
        addr:            0x0000000100001090
        size:            [[SECTION_SIZE]]
        offset:          0x00001090
        align:           2
        reloff:          0x00000000
        nreloc:          0
        flags:           0x00000000
        reserved1:       0x00000000
        reserved2:       0x00000000
        reserved3:       0x00000000
        content:         "[[SECTION_CONTENT]]"
  - cmd:             LC_SEGMENT_64
    cmdsize:         72
    segname:         __LINKEDIT
    vmaddr:          4294975488
    vmsize:          4096
    fileoff:         8192
    filesize:        188
    maxprot:         1
    initprot:        1
    nsects:          0
    flags:           0
  - cmd:             LC_SYMTAB
    cmdsize:         24
    symoff:          8192
    nsyms:           5
    stroff:          8272
    strsize:         108
LinkEditData:
  NameList:
    - n_strx:          50
      n_type:          0x1E
      n_sect:          1
      n_desc:          0
      n_value:         4294971760
    - n_strx:          1
      n_type:          0x1E
      n_sect:          1
      n_desc:          0
      n_value:         4294971768
    - n_strx:          74
      n_type:          0x0F
      n_sect:          1
      n_desc:          0
      n_value:         4294971744
    - n_strx:          25
      n_type:          0x0F
      n_sect:          1
      n_desc:          0
      n_value:         4294971752
    - n_strx:          99
      n_type:          0x0F
      n_sect:          1
      n_desc:          0
      n_value:         4294970224
  StringTable:
    - ''
    - '_$s1a12LocalSymbol2Sivp'
    - '_$s1a13PublicSymbol2Sivp'
    - '_$S1a12LocalSymbol1Sivp'
    - '_$S1a13PublicSymbol1Sivp'
    - _main
    - ''
    - ''
    - ''
...
