[lit] Add argument check: --timeout must be non-negative integer
[llvm-core.git] / test / tools / yaml2obj / implicit-sections-info.yaml
blobd7d530d396003b2d38e3a33a3e2b337ea3049dd0
1 ## Check the values of sh_info fields set by default for
2 ## explicitly listed .dynstr, .dynsym, .strtab and .symtab
3 ## sections.
4 ##
5 ## For symbol table sections, sh_info has a value which is
6 ## one greater than the symbol table index of the last
7 ## local symbol.
8 ##
9 ## sh_info isn't set for string table sections.
11 # RUN: yaml2obj --docnum=1 %s -o %t
12 # RUN: llvm-readobj --sections %t | FileCheck %s --check-prefix=CASE1
14 # CASE1:      Name: .symtab
15 # CASE1:      Info:
16 # CASE1-SAME: 2
17 # CASE1:      Name: .strtab
18 # CASE1:      Info:
19 # CASE1-SAME: 0
20 # CASE1:      Name: .dynsym
21 # CASE1:      Info:
22 # CASE1-SAME: 1
23 # CASE1:      Name: .dynstr
24 # CASE1:      Info:
25 # CASE1-SAME: 0
27 --- !ELF
28 FileHeader:
29   Class:   ELFCLASS64
30   Data:    ELFDATA2LSB
31   Type:    ET_DYN
32   Machine: EM_X86_64
33 Sections:
34   - Name:  .symtab
35     Type:  SHT_SYMTAB
36   - Name:  .strtab
37     Type:  SHT_STRTAB
38   - Name:  .dynsym
39     Type:  SHT_DYNSYM
40   - Name:  .dynstr
41     Type:  SHT_STRTAB
42 Symbols:
43   - Name:    local
44   - Name:    global1
45     Binding: STB_GLOBAL
46 DynamicSymbols:
47   - Name:    global2
48     Binding: STB_GLOBAL
50 ## In the case when these sections are not defined in YAML, the
51 ## behavior is the same as when we define them, but do not set the Info.
53 # RUN: yaml2obj --docnum=2 %s -o %t
54 # RUN: llvm-readobj --sections %t | FileCheck %s --check-prefix=CASE1
56 --- !ELF
57 FileHeader:
58   Class:   ELFCLASS64
59   Data:    ELFDATA2LSB
60   Type:    ET_DYN
61   Machine: EM_X86_64
62 Symbols:
63   - Name:    local
64   - Name:    global1
65     Binding: STB_GLOBAL
66 DynamicSymbols:
67   - Name:    global2
68     Binding: STB_GLOBAL
70 ## Check we are able to set any sh_info explicitly.
72 # RUN: yaml2obj --docnum=3 %s -o %t
73 # RUN: llvm-readobj --sections %t | FileCheck %s --check-prefix=CASE2
75 # CASE2:      Name: .dynstr
76 # CASE2:      Info:
77 # CASE2-SAME: 10
78 # CASE2:      Name: .dynsym
79 # CASE2:      Info:
80 # CASE2-SAME: 11
81 # CASE2:      Name: .strtab
82 # CASE2:      Info:
83 # CASE2-SAME: 12
84 # CASE2:      Name: .symtab
85 # CASE2:      Info:
86 # CASE2-SAME: 13
88 --- !ELF
89 FileHeader:
90   Class:   ELFCLASS64
91   Data:    ELFDATA2LSB
92   Type:    ET_DYN
93   Machine: EM_X86_64
94 Sections:
95   - Name:  .dynstr
96     Type:  SHT_STRTAB
97     Info:  10
98   - Name:  .dynsym
99     Type:  SHT_DYNSYM
100     Info:  11
101   - Name:  .strtab
102     Type:  SHT_STRTAB
103     Info:  12
104   - Name:  .symtab
105     Type:  SHT_SYMTAB
106     Info:  13
107 Symbols:
108   - Name:    local
109   - Name:    global1
110     Binding: STB_GLOBAL
111 DynamicSymbols:
112   - Name:    global2
113     Binding: STB_GLOBAL