Recommit "rL366894: [yaml2obj] - Allow custom fields for the SHT_UNDEF sections."
[llvm-complete.git] / test / tools / llvm-readobj / elf-groups.test
blob4e165311ecfb1880375e34b03ec5b9d39be1f385
1 ## Check that llvm-readelf and llvm-readobj can
2 ## dump SHT_GROUP sections properly.
4 # RUN: yaml2obj %s -o %t.o
5 # RUN: llvm-readobj -g %t.o | FileCheck %s
6 # RUN: llvm-readelf -g %t.o | FileCheck --check-prefix=GNU %s
8 # CHECK:      Groups {
9 # CHECK-NEXT:   Group {
10 # CHECK-NEXT:     Name: .group
11 # CHECK-NEXT:     Index: 1
12 # CHECK-NEXT:     Link: 7
13 # CHECK-NEXT:     Info: 1
14 # CHECK-NEXT:     Type: COMDAT
15 # CHECK-NEXT:     Signature: foo
16 # CHECK-NEXT:     Section(s) in group [
17 # CHECK-NEXT:       .text.foo
18 # CHECK-NEXT:       .rela.text.foo
19 # CHECK-NEXT:     ]
20 # CHECK-NEXT:   }
21 # CHECK-NEXT:   Group {
22 # CHECK-NEXT:     Name: .group1
23 # CHECK-NEXT:     Index: 2
24 # CHECK-NEXT:     Link: 7
25 # CHECK-NEXT:     Info: 2
26 # CHECK-NEXT:     Type: COMDAT
27 # CHECK-NEXT:     Signature: bar
28 # CHECK-NEXT:     Section(s) in group [
29 # CHECK-NEXT:       .text.bar
30 # CHECK-NEXT:       .rela.text.bar
31 # CHECK-NEXT:     ]
32 # CHECK-NEXT:   }
34 # GNU:      COMDAT group section [    1] `.group' [foo] contains 2 sections:
35 # GNU-NEXT:  [Index]  Name
36 # GNU-NEXT:  [    3] .text.foo
37 # GNU-NEXT:  [    4] .rela.text.foo
38 # GNU:      COMDAT group section [    2] `.group1' [bar] contains 2 sections:
39 # GNU-NEXT:  [Index]  Name
40 # GNU-NEXT:  [    5] .text.bar
41 # GNU-NEXT:  [    6] .rela.text.bar
43 --- !ELF
44 FileHeader:
45   Class:   ELFCLASS64
46   Data:    ELFDATA2LSB
47   Type:    ET_REL
48   Machine: EM_X86_64
49 Sections:
50   - Name: .group
51     Type: SHT_GROUP
52     Link: .symtab
53     Info: foo
54     Members:
55       - SectionOrType: GRP_COMDAT
56       - SectionOrType: .text.foo
57       - SectionOrType: .rela.text.foo
58   - Name: .group1
59     Type: SHT_GROUP
60     Link: .symtab
61     Info: bar
62     Members:
63       - SectionOrType: GRP_COMDAT
64       - SectionOrType: .text.bar
65       - SectionOrType: .rela.text.bar
66   - Name:  .text.foo
67     Type:  SHT_PROGBITS
68   - Name: .rela.text.foo
69     Type: SHT_RELA
70     Link: .symtab
71     Info: .text.foo
72   - Name: .text.bar
73     Type: SHT_PROGBITS
74   - Name: .rela.text.bar
75     Type: SHT_RELA
76     Link: .symtab
77     Info: .text.bar
78 Symbols:
79   - Name:    foo
80     Section: .text.foo
81   - Name:    bar
82     Section: .text.bar