## Show that llvm-sizes works correctly on a typical ELF input for Berkeley
## format. It also shows that the formatting is correct (including using tabs as
## field separators).

# RUN: yaml2obj %s -o %t.o

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

## Also show that the default output format is Berkeley.
# RUN: llvm-size %t.o \
# RUN:   | FileCheck %s --match-full-lines --strict-whitespace -DFILE=%t.o --implicit-check-not={{.}}

## text is .text, .eh_frame, .unusual_name_for_code: 2 + 4 + 64 = 70
## data is .data, .init_array, .moar_stuff: 8 + 32 + 128 = 168
## bss is .bss: 1
## total: 239
## unaccounted for (not affecting total) is .debug_info, .text.but_not_really
#      CHECK:   text	   data	    bss	    dec	    hex	filename
# CHECK-NEXT:     70	    168	      1	    239	     ef	[[FILE]]

!ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_EXEC
  Machine: EM_X86_64
Sections:
  - Name:  .bss
    Type:  SHT_NOBITS
    Flags: [ SHF_ALLOC, SHF_WRITE ]
    Size:  1
  - Name:  .text
    Type:  SHT_PROGBITS
    Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
    Size:  2
  - Name:  .unusual_name_for_code
    Type:  SHT_PROGBITS
    Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
    Size:  64
  - Name:  .eh_frame
    Type:  SHT_PROGBITS
    Flags: [ SHF_ALLOC ]
    Size:  4
  - Name:  .data
    Type:  SHT_PROGBITS
    Flags: [ SHF_ALLOC, SHF_WRITE ]
    Size:  8
  - Name:  .moar_stuff
    Type:  SHT_PROGBITS
    Flags: [ SHF_ALLOC, SHF_WRITE ]
    Size:  128
  - Name:  .text.but_not_really
    Type:  SHT_PROGBITS
    Flags: [ ]
    Size:  256
  - Name:  .debug_info
    Type:  SHT_PROGBITS
    Flags: [ ]
    Size:  16
  - Name:  .init_array
    Type:  SHT_INIT_ARRAY
    Flags: [ SHF_ALLOC, SHF_WRITE ]
    Size:  32
