[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / tools / obj2yaml / section-group.test
blob111bffda8e58252ccf0c490782d5673b6a6b95f8
1 ## Checks that the tool is able to read section groups from ELF.
3 # RUN: yaml2obj --docnum=1 %s > %t1.o
4 # RUN: llvm-readobj --elf-section-groups %t1.o | FileCheck %s -check-prefix=OBJ
5 # RUN: obj2yaml %t1.o | FileCheck %s --check-prefix YAML
7 # OBJ:      Groups {
8 # OBJ-NEXT:   Group {
9 # OBJ-NEXT:     Name: .group
10 # OBJ-NEXT:     Index: 1
11 # OBJ-NEXT:     Link: 3
12 # OBJ-NEXT:     Info: 1
13 # OBJ-NEXT:     Type: COMDAT (0x1)
14 # OBJ-NEXT:     Signature: signature
15 # OBJ-NEXT:     Section(s) in group [
16 # OBJ-NEXT:       .rodata (2)
17 # OBJ-NEXT:     ]
18 # OBJ-NEXT:   }
19 # OBJ-NEXT: }
21 # YAML: - Name: .group
22 # YAML:   Type: SHT_GROUP
23 # YAML:   Link: .symtab
24 # YAML:   Info: signature
25 # YAML:   Members:
26 # YAML:     - SectionOrType: GRP_COMDAT
27 # YAML:     - SectionOrType: .rodata
29 --- !ELF
30 FileHeader:
31   Class:   ELFCLASS64
32   Data:    ELFDATA2LSB
33   Type:    ET_REL
34   Machine: EM_X86_64
35 Sections:
36   - Name: .group
37     Type: SHT_GROUP
38     Link: .symtab
39     Info: signature
40     Members:
41       - SectionOrType: GRP_COMDAT
42       - SectionOrType: .rodata
43   - Name: .rodata
44     Type: SHT_PROGBITS
45 Symbols:
46   - Name:    signature
47     Type:    STT_OBJECT
48     Section: .rodata
50 ## Check obj2yaml report an error when sh_info field of
51 ## group section contains invalid (too large) signature symbol index.
53 # RUN: yaml2obj --docnum=2 %s > %t2.o
54 # RUN: not obj2yaml %t2.o 2>&1 | FileCheck %s --check-prefix ERR
56 --- !ELF
57 FileHeader:
58   Class:   ELFCLASS64
59   Data:    ELFDATA2LSB
60   Type:    ET_REL
61   Machine: EM_X86_64
62 Sections:
63   - Name: .group
64     Type: SHT_GROUP
65     Link: .symtab
66     Info: 0xFF
67     Members:
68       - SectionOrType: GRP_COMDAT
69 Symbols: []
71 # ERR: Error reading file: {{.*}}2.o: unable to get symbol from section [index 2]: invalid symbol index (255)