xref: /llvm-project/llvm/test/tools/llvm-size/output-alloc.test (revision 41ca82cbe815904173d094cb3a7789a705a73695)
1*41ca82cbSgbreynoo## gnu size has a number of special cases regarding REL, RELA and STRTAB sections being considered in size output.
2*41ca82cbSgbreynoo## To avoid unnecessary complexity llvm size outputs these sections in cases they have the SHF_ALLOC flag.
3*41ca82cbSgbreynoo
4*41ca82cbSgbreynoo# RUN: yaml2obj %s -o %t1
5*41ca82cbSgbreynoo# RUN: llvm-size --format=sysv %t1 | FileCheck %s
6*41ca82cbSgbreynoo
7*41ca82cbSgbreynoo# CHECK:      section     size   addr
8*41ca82cbSgbreynoo# CHECK-NEXT: .rela.alloc
9*41ca82cbSgbreynoo# CHECK-NEXT: .rel.alloc
10*41ca82cbSgbreynoo# CHECK-NEXT: .strtab.alloc
11*41ca82cbSgbreynoo# CHECK-NEXT: Total
12*41ca82cbSgbreynoo# CHECK-EMPTY:
13*41ca82cbSgbreynoo
14*41ca82cbSgbreynoo--- !ELF
15*41ca82cbSgbreynooFileHeader:
16*41ca82cbSgbreynoo  Class:   ELFCLASS64
17*41ca82cbSgbreynoo  Data:    ELFDATA2LSB
18*41ca82cbSgbreynoo  Type:    ET_REL
19*41ca82cbSgbreynoo  Machine: EM_X86_64
20*41ca82cbSgbreynooSections:
21*41ca82cbSgbreynoo  - Name:  .rela.alloc
22*41ca82cbSgbreynoo    Type:  SHT_RELA
23*41ca82cbSgbreynoo    Flags: [ SHF_ALLOC ]
24*41ca82cbSgbreynoo  - Name:  .rel.alloc
25*41ca82cbSgbreynoo    Type:  SHT_REL
26*41ca82cbSgbreynoo    Flags: [ SHF_ALLOC ]
27*41ca82cbSgbreynoo  - Name:  .strtab.alloc
28*41ca82cbSgbreynoo    Type:  SHT_STRTAB
29*41ca82cbSgbreynoo    Flags: [ SHF_ALLOC ]
30*41ca82cbSgbreynoo  - Name:  .rela
31*41ca82cbSgbreynoo    Type:  SHT_RELA
32*41ca82cbSgbreynoo    Flags: []
33*41ca82cbSgbreynoo  - Name:  .rel
34*41ca82cbSgbreynoo    Type:  SHT_REL
35*41ca82cbSgbreynoo    Flags: []
36*41ca82cbSgbreynoo  - Name:  .strtab
37*41ca82cbSgbreynoo    Type:  SHT_STRTAB
38*41ca82cbSgbreynoo    Flags: []
39