## .empty is not covered by a segment. Its offset is moved to 0x200 to fill the gap.
# RUN: yaml2obj --docnum=1 %s -o %t1
# RUN: llvm-objcopy %t1 %t1.out
# RUN: llvm-readelf -S %t1.out | FileCheck --check-prefix=CHECK1 %s

# CHECK1:      Name         Type     Address          Off
# CHECK1-NEXT:              NULL     0000000000000000 000000
# CHECK1-NEXT: .foo         PROGBITS 0000000000000000 000100
# CHECK1-NEXT: .empty       PROGBITS 0000000000001000 000200
# CHECK1-NEXT: .baz         PROGBITS 0000000000001000 001000

--- !ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_EXEC
  Machine: EM_X86_64
Sections:
  - Name:         gap
    Type:         Fill
    Size:         0xE00
  - Name:         .foo
    Type:         SHT_PROGBITS
    Flags:        [ SHF_ALLOC ]
    AddressAlign: 0x100
    Address:      0
    Size:         0x100
  - Name:         .empty
    Type:         SHT_PROGBITS
    Flags:        [ SHF_ALLOC ]
    Address:      0x1000
  - Name:         .baz
    Type:         SHT_PROGBITS
    Flags:        [ SHF_ALLOC ]
    AddressAlign: 0x1000
    Address:      0x1000
    Size:         0x100

## Test that we attribute .empty to the second segment. Its offset is assigned according to
## the p_offset of the second segment.
# RUN: yaml2obj --docnum=2 %s -o %t2
# RUN: llvm-objcopy %t2 %t2.out
# RUN: llvm-readelf -S -l %t2.out | FileCheck --check-prefix=CHECK2 %s

# CHECK2:      Name         Type     Address          Off
# CHECK2-NEXT:              NULL     0000000000000000 000000
# CHECK2-NEXT: .foo         PROGBITS 0000000000000000 000100
# CHECK2-NEXT: .empty       PROGBITS 0000000000001000 001000
# CHECK2-NEXT: .baz         PROGBITS 0000000000001000 001000

# CHECK2:      Type  Offset   VirtAddr           PhysAddr           FileSiz  MemSiz   Flg Align
# CHECK2-NEXT: LOAD  0x000100 0x0000000000000000 0x0000000000000000 0x000100 0x000100     0x100
# CHECK2-NEXT: LOAD  0x001000 0x0000000000001000 0x0000000000001000 0x000100 0x000100     0x1000

--- !ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_EXEC
  Machine: EM_X86_64
Sections:
  - Name:         gap
    Type:         Fill
    Size:         0xE00
  - Name:         .foo
    Type:         SHT_PROGBITS
    Flags:        [ SHF_ALLOC ]
    AddressAlign: 0x100
    Address:      0
    Size:         0x100
  - Name:         .empty
    Type:         SHT_PROGBITS
    Flags:        [ SHF_ALLOC ]
    Address:      0x1000
  - Name:         .baz
    Type:         SHT_PROGBITS
    Flags:        [ SHF_ALLOC ]
    AddressAlign: 0x1000
    Address:      0x1000
    Size:         0x100
ProgramHeaders:
  - Type:     PT_LOAD
    VAddr:    0
    Align:    0x100
    FirstSec: .foo
    LastSec:  .foo
  - Type:     PT_LOAD
    VAddr:    0x1000
    Align:    0x1000
    FirstSec: .empty
    LastSec:  .baz
