|  | ## 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 |