77 // CHECK: alloca_memory_space = 0
88 // CHECK: bitsize = 64
99 // CHECK: global_memory_space = 0
10+ // CHECK: index = 64
1011 // CHECK: preferred = 8
1112 // CHECK: program_memory_space = 0
1213 // CHECK: size = 8
@@ -16,6 +17,7 @@ module {
1617 // CHECK: alloca_memory_space = 0
1718 // CHECK: bitsize = 64
1819 // CHECK: global_memory_space = 0
20+ // CHECK: index = 64
1921 // CHECK: preferred = 8
2022 // CHECK: program_memory_space = 0
2123 // CHECK: size = 8
@@ -25,6 +27,7 @@ module {
2527 // CHECK: alloca_memory_space = 0
2628 // CHECK: bitsize = 64
2729 // CHECK: global_memory_space = 0
30+ // CHECK: index = 64
2831 // CHECK: preferred = 8
2932 // CHECK: program_memory_space = 0
3033 // CHECK: size = 8
@@ -39,7 +42,7 @@ module {
3942module attributes { dlti.dl_spec = #dlti.dl_spec <
4043 #dlti.dl_entry <!llvm.ptr , dense <[32 , 32 , 64 ]> : vector <3 xi64 >>,
4144 #dlti.dl_entry <!llvm.ptr <5 >, dense <[64 , 64 , 64 ]> : vector <3 xi64 >>,
42- #dlti.dl_entry <!llvm.ptr <4 >, dense <[32 , 64 , 64 ]> : vector <3 x i64 >>,
45+ #dlti.dl_entry <!llvm.ptr <4 >, dense <[32 , 64 , 64 , 24 ]> : vector <4 x i64 >>,
4346 #dlti.dl_entry <" dlti.alloca_memory_space" , 5 : ui64 >,
4447 #dlti.dl_entry <" dlti.global_memory_space" , 2 : ui64 >,
4548 #dlti.dl_entry <" dlti.program_memory_space" , 3 : ui64 >,
@@ -51,6 +54,7 @@ module attributes { dlti.dl_spec = #dlti.dl_spec<
5154 // CHECK: alloca_memory_space = 5
5255 // CHECK: bitsize = 32
5356 // CHECK: global_memory_space = 2
57+ // CHECK: index = 32
5458 // CHECK: preferred = 8
5559 // CHECK: program_memory_space = 3
5660 // CHECK: size = 4
@@ -60,6 +64,7 @@ module attributes { dlti.dl_spec = #dlti.dl_spec<
6064 // CHECK: alloca_memory_space = 5
6165 // CHECK: bitsize = 32
6266 // CHECK: global_memory_space = 2
67+ // CHECK: index = 32
6368 // CHECK: preferred = 8
6469 // CHECK: program_memory_space = 3
6570 // CHECK: size = 4
@@ -69,24 +74,17 @@ module attributes { dlti.dl_spec = #dlti.dl_spec<
6974 // CHECK: alloca_memory_space = 5
7075 // CHECK: bitsize = 64
7176 // CHECK: global_memory_space = 2
77+ // CHECK: index = 64
7278 // CHECK: preferred = 8
7379 // CHECK: program_memory_space = 3
7480 // CHECK: size = 8
7581 // CHECK: stack_alignment = 128
7682 " test.data_layout_query" () : () -> !llvm.ptr <5 >
77- // CHECK: alignment = 4
78- // CHECK: alloca_memory_space = 5
79- // CHECK: bitsize = 32
80- // CHECK: global_memory_space = 2
81- // CHECK: preferred = 8
82- // CHECK: program_memory_space = 3
83- // CHECK: size = 4
84- // CHECK: stack_alignment = 128
85- " test.data_layout_query" () : () -> !llvm.ptr <3 >
8683 // CHECK: alignment = 8
8784 // CHECK: alloca_memory_space = 5
8885 // CHECK: bitsize = 32
8986 // CHECK: global_memory_space = 2
87+ // CHECK: index = 24
9088 // CHECK: preferred = 8
9189 // CHECK: program_memory_space = 3
9290 // CHECK: size = 4
@@ -134,34 +132,39 @@ module {
134132 // simple case
135133 // CHECK: alignment = 4
136134 // CHECK: bitsize = 32
135+ // CHECK: index = 0
137136 // CHECK: preferred = 4
138137 // CHECK: size = 4
139138 " test.data_layout_query" () : () -> !llvm.struct <(i32 )>
140139
141140 // padding inbetween
142141 // CHECK: alignment = 8
143142 // CHECK: bitsize = 128
143+ // CHECK: index = 0
144144 // CHECK: preferred = 8
145145 // CHECK: size = 16
146146 " test.data_layout_query" () : () -> !llvm.struct <(i32 , f64 )>
147147
148148 // padding at end of struct
149149 // CHECK: alignment = 8
150150 // CHECK: bitsize = 128
151+ // CHECK: index = 0
151152 // CHECK: preferred = 8
152153 // CHECK: size = 16
153154 " test.data_layout_query" () : () -> !llvm.struct <(f64 , i32 )>
154155
155156 // packed
156157 // CHECK: alignment = 1
157158 // CHECK: bitsize = 96
159+ // CHECK: index = 0
158160 // CHECK: preferred = 8
159161 // CHECK: size = 12
160162 " test.data_layout_query" () : () -> !llvm.struct <packed (f64 , i32 )>
161163
162164 // empty
163165 // CHECK: alignment = 1
164166 // CHECK: bitsize = 0
167+ // CHECK: index = 0
165168 // CHECK: preferred = 1
166169 // CHECK: size = 0
167170 " test.data_layout_query" () : () -> !llvm.struct <()>
@@ -179,27 +182,31 @@ module attributes { dlti.dl_spec = #dlti.dl_spec<
179182 // Strict alignment is applied
180183 // CHECK: alignment = 4
181184 // CHECK: bitsize = 16
185+ // CHECK: index = 0
182186 // CHECK: preferred = 4
183187 // CHECK: size = 2
184188 " test.data_layout_query" () : () -> !llvm.struct <(i16 )>
185189
186190 // No impact on structs that have stricter requirements
187191 // CHECK: alignment = 8
188192 // CHECK: bitsize = 128
193+ // CHECK: index = 0
189194 // CHECK: preferred = 8
190195 // CHECK: size = 16
191196 " test.data_layout_query" () : () -> !llvm.struct <(i32 , f64 )>
192197
193198 // Only the preferred alignment of structs is affected
194199 // CHECK: alignment = 1
195200 // CHECK: bitsize = 32
201+ // CHECK: index = 0
196202 // CHECK: preferred = 4
197203 // CHECK: size = 4
198204 " test.data_layout_query" () : () -> !llvm.struct <packed (i16 , i16 )>
199205
200206 // empty
201207 // CHECK: alignment = 4
202208 // CHECK: bitsize = 0
209+ // CHECK: index = 0
203210 // CHECK: preferred = 4
204211 // CHECK: size = 0
205212 " test.data_layout_query" () : () -> !llvm.struct <()>
@@ -265,20 +272,23 @@ module {
265272 // simple case
266273 // CHECK: alignment = 4
267274 // CHECK: bitsize = 64
275+ // CHECK: index = 0
268276 // CHECK: preferred = 4
269277 // CHECK: size = 8
270278 " test.data_layout_query" () : () -> !llvm.array <2 x i32 >
271279
272280 // size 0
273281 // CHECK: alignment = 8
274282 // CHECK: bitsize = 0
283+ // CHECK: index = 0
275284 // CHECK: preferred = 8
276285 // CHECK: size = 0
277286 " test.data_layout_query" () : () -> !llvm.array <0 x f64 >
278287
279288 // alignment info matches element type
280289 // CHECK: alignment = 4
281290 // CHECK: bitsize = 64
291+ // CHECK: index = 0
282292 // CHECK: preferred = 8
283293 // CHECK: size = 8
284294 " test.data_layout_query" () : () -> !llvm.array <1 x i64 >
0 commit comments