# RUN: yaml2obj %s > %t
# RUN: llvm-objcopy --strip-all-gnu %t %t2
# RUN: llvm-strip --strip-all-gnu %t -o %t3
# RUN: llvm-readobj --file-headers --sections %t2 | FileCheck %s
# RUN: cmp %t2 %t3

# Show that the debug section in a segment was removed, to match GNU.
# First validate that the offset in use is correct.
# RUN: llvm-objcopy %t %t4
# RUN: od -t x1 -N 4 -j 120 %t4 | FileCheck %s --ignore-case --check-prefix=COPY-BYTES
# RUN: od -t x1 -N 4 -j 120 %t2 | FileCheck %s --ignore-case --check-prefix=STRIP-BYTES

!ELF
FileHeader:
  Class:           ELFCLASS64
  Data:            ELFDATA2LSB
  Type:            ET_REL
  Machine:         EM_X86_64
Sections:
  - Name:            .debug_in_segment
    Type:            SHT_PROGBITS
    Flags:           [ ]
    Content:         "deadbeef"
  - Name:            .dynstr
    Type:            SHT_STRTAB
    Flags:           [ SHF_ALLOC ]
  - Name:            .symtab.dyn
    Type:            SHT_SYMTAB
    Flags:           [ SHF_ALLOC ]
    Type:            SHT_NOBITS
  - Name:            .text
    Type:            SHT_PROGBITS
    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
    Size:            4
  - Name:            .debug_info
    Type:            SHT_PROGBITS
    Flags:           [ ]
    AddressAlign:    0x1
    Size:            4
  - Name:            .debug_loc
    Type:            SHT_PROGBITS
    Flags:           [ SHF_ALLOC ]
    AddressAlign:    0x1
    Size:            4
  - Name:            .comment
    Type:            SHT_PROGBITS
  - Name:            .random_section_name
    Type:            SHT_PROGBITS
  - Name:            .debug_not_a_real_debug_section
    Type:            SHT_PROGBITS
  - Name:            .rel.text
    Type:            SHT_REL
    Info:            .text
  - Name:            .rela.text
    Type:            SHT_RELA
    Info:            .text
ProgramHeaders:
  # Use an arbitrary segment type to show that the segment type is unimportant.
  - Type: 0x61234567
    Sections:
      - Section: .debug_in_segment

# CHECK: SectionHeaderCount: 8

# CHECK:      Name: .dynstr
# CHECK:      Name: .symtab.dyn
# CHECK:      Name: .text
# CHECK:      Name: .debug_loc
# CHECK:      Name: .comment
# CHECK:      Name: .random_section_name
# CHECK:      Name: .shstrtab

# COPY-BYTES:  de ad be ef
# STRIP-BYTES: 00 00 00 00
