## Show that llvm-sizes works correctly on a typical ELF input for sysv
## format. It also shows that the formatting is correct.

## FIXME: The rules demonstrated by this test are not quite what GNU size
## follows. See https://bugs.llvm.org/show_bug.cgi?id=42934.

# RUN: yaml2obj %s > %t.o
# RUN: llvm-size --format=sysv %t.o \
# RUN:   | FileCheck %s --match-full-lines --strict-whitespace -DFILE=%t.o --implicit-check-not={{.}}
# RUN: llvm-size -A %t.o \
# RUN:   | FileCheck %s --match-full-lines --strict-whitespace -DFILE=%t.o --implicit-check-not={{.}}

#      CHECK:[[FILE]]  :
# CHECK-NEXT:section               size      addr
# CHECK-NEXT:.progbits                1   2097152
# CHECK-NEXT:.symtab_shndx            4    524288
# CHECK-NEXT:.hash                   64     65536
# CHECK-NEXT:.dynamic               128     32768
# CHECK-NEXT:.note                  256     16384
# CHECK-NEXT:.nobits                512      8192
# CHECK-NEXT:.shlib                2048      2048
# CHECK-NEXT:.dynsym               4096      1024
# CHECK-NEXT:.init_array           8192       512
# CHECK-NEXT:.fini_array          16384       256
# CHECK-NEXT:.preinit_array       32768       128
# CHECK-NEXT:.group               65536        64
# CHECK-NEXT:.relr               131072        32
# CHECK-NEXT:.os_specific        262144        16
# CHECK-NEXT:.proc_specific      524288         8
# CHECK-NEXT:.user_specific     1048576         4
# CHECK-NEXT:Total              2096069

!ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_REL
  Machine: EM_X86_64
Sections:
  - Name:    .progbits
    Type:    SHT_PROGBITS
    ShSize:  0x1
    Address: 0x200000
  - Name:    .strtab
    Type:    SHT_STRTAB
    ShSize:  0x2
    Address: 0x100000
  - Name:    .symtab_shndx
    Link:    .symtab
    Type:    SHT_SYMTAB_SHNDX
    ShSize:  0x4
    Address: 0x80000
    Entries:
  - Name:    .symtab
    Type:    SHT_SYMTAB
    ## .symtab's size has to be based on .symtab_shndx's size, hence the
    ## size not following the pattern of the other sections.
    ShSize:  0x18
    Address: 0x40000
  - Name:    .rela
    Type:    SHT_RELA
    ShSize:  0x20
    Address: 0x20000
  - Name:    .hash
    Type:    SHT_HASH
    Content: ''
    ShSize:  0x40
    Address: 0x10000
  - Name:    .dynamic
    Type:    SHT_DYNAMIC
    ShSize:  0x80
    Address: 0x8000
  - Name:    .note
    Type:    SHT_NOTE
    ShSize:  0x100
    Address: 0x4000
  - Name:    .nobits
    Type:    SHT_NOBITS
    ShSize:  0x200
    Address: 0x2000
  - Name:    .rel
    Type:    SHT_REL
    ShSize:  0x400
    Address: 0x1000
  - Name:    .shlib
    Type:    SHT_SHLIB
    ShSize:  0x800
    Address: 0x800
  - Name:    .dynsym
    Type:    SHT_DYNSYM
    ShSize:  0x1000
    Address: 0x400
  - Name:    .init_array
    Type:    SHT_INIT_ARRAY
    ShSize:  0x2000
    Address: 0x200
  - Name:    .fini_array
    Type:    SHT_FINI_ARRAY
    ShSize:  0x4000
    Address: 0x100
  - Name:    .preinit_array
    Type:    SHT_PREINIT_ARRAY
    ShSize:  0x8000
    Address: 0x80
  - Name:    .group
    Type:    SHT_GROUP
    ShSize:  0x10000
    Address: 0x40
    Info:    0
    Members:
  - Name:    .relr
    Type:    SHT_RELR
    ShSize:  0x20000
    Address: 0x20
  - Name:    .os_specific
    Type:    0x61234567
    ShSize:  0x40000
    Address: 0x10
  - Name:    .proc_specific
    Type:    0x71234567
    ShSize:  0x80000
    Address: 0x8
  - Name:    .user_specific
    Type:    0x81234567
    ShSize:  0x100000
    Address: 0x4
  - Name:    .null
    Type:    SHT_NULL
    ShSize:  0x200000
    Address: 0x2
