16503aadcSFangrui Song# RUN: yaml2obj --docnum=1 %s -o %t 26503aadcSFangrui Song# RUN: llvm-objcopy --strip-non-alloc %t %t.out 36503aadcSFangrui Song# RUN: llvm-readobj --file-headers --sections %t.out | FileCheck %s 46e4dc6f2SAlexander Shaposhnikov 56503aadcSFangrui Song# CHECK: SectionHeaderCount: 5 66503aadcSFangrui Song# CHECK: Name: non_alloc_in_segment 76503aadcSFangrui Song# CHECK: Name: .bss 86503aadcSFangrui Song# CHECK: Name: .text 96503aadcSFangrui Song# CHECK: Name: .shstrtab 106503aadcSFangrui Song 116503aadcSFangrui Song--- !ELF 126e4dc6f2SAlexander ShaposhnikovFileHeader: 136e4dc6f2SAlexander Shaposhnikov Class: ELFCLASS64 146e4dc6f2SAlexander Shaposhnikov Data: ELFDATA2LSB 156e4dc6f2SAlexander Shaposhnikov Type: ET_REL 166e4dc6f2SAlexander Shaposhnikov Machine: EM_X86_64 176e4dc6f2SAlexander ShaposhnikovSections: 18b5de5e25SJames Henderson - Name: non_alloc_in_segment 19b5de5e25SJames Henderson Type: SHT_PROGBITS 20b5de5e25SJames Henderson Flags: [ ] 21b5de5e25SJames Henderson Size: 4 226e4dc6f2SAlexander Shaposhnikov - Name: .bss 236e4dc6f2SAlexander Shaposhnikov Type: SHT_NOBITS 246e4dc6f2SAlexander Shaposhnikov Flags: [ SHF_ALLOC ] 256e4dc6f2SAlexander Shaposhnikov - Name: .text 266e4dc6f2SAlexander Shaposhnikov Type: SHT_PROGBITS 276e4dc6f2SAlexander Shaposhnikov Flags: [ SHF_ALLOC, SHF_EXECINSTR ] 28b5de5e25SJames HendersonProgramHeaders: 29b5de5e25SJames Henderson # Use an arbitrary segment type to show that the segment type is unimportant. 30b5de5e25SJames Henderson - Type: 0x61234567 31*a7a447beSGeorgii Rymar FirstSec: non_alloc_in_segment 32*a7a447beSGeorgii Rymar LastSec: non_alloc_in_segment 336e4dc6f2SAlexander Shaposhnikov 346503aadcSFangrui Song# RUN: yaml2obj --docnum=2 %s -o %t2 356503aadcSFangrui Song# RUN: llvm-objcopy --strip-non-alloc %t2 %t2.out 366503aadcSFangrui Song# RUN: llvm-readobj --file-headers --sections %t2.out | FileCheck --check-prefix=CHECK2 %s 376e4dc6f2SAlexander Shaposhnikov 386503aadcSFangrui Song# CHECK2: SectionHeaderCount: 3 396503aadcSFangrui Song# CHECK2: Name: .text 406503aadcSFangrui Song# CHECK2: Name: .shstrtab 416503aadcSFangrui Song 426503aadcSFangrui Song--- !ELF 436503aadcSFangrui SongFileHeader: 446503aadcSFangrui Song Class: ELFCLASS64 456503aadcSFangrui Song Data: ELFDATA2LSB 466503aadcSFangrui Song Type: ET_REL 476503aadcSFangrui Song Machine: EM_X86_64 486503aadcSFangrui SongSections: 496503aadcSFangrui Song - Name: .text 506503aadcSFangrui Song Type: SHT_PROGBITS 516503aadcSFangrui Song Flags: [ SHF_ALLOC, SHF_EXECINSTR ] 526503aadcSFangrui Song## empty_trailing_non_alloc is considered included by the segment, 536503aadcSFangrui Song## so it will be retained. 546503aadcSFangrui Song - Name: empty_trailing_non_alloc 556503aadcSFangrui Song Type: SHT_PROGBITS 566503aadcSFangrui Song - Name: trailing_non_alloc 576503aadcSFangrui Song Type: SHT_PROGBITS 586503aadcSFangrui Song Content: 00 596503aadcSFangrui SongProgramHeaders: 606503aadcSFangrui Song - Type: 0x61234567 61*a7a447beSGeorgii Rymar FirstSec: .text 62*a7a447beSGeorgii Rymar LastSec: .text 63