[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / CodeGen / PowerPC / aix-xcoff-data.ll
blob49135499386701d743859e2a0a18f16560ace1f1
1 ; This file tests the codegen of initialized and common variables in AIX
2 ; assembly and XCOFF object files.
4 ; RUN: llc -mtriple powerpc-ibm-aix-xcoff -data-sections=false < %s | FileCheck --check-prefixes=CHECK,CHECK32 %s
5 ; RUN: llc -mtriple powerpc64-ibm-aix-xcoff -data-sections=false < %s | FileCheck --check-prefixes=CHECK,CHECK64 %s
7 ; RUN: llc -mtriple powerpc-ibm-aix-xcoff -data-sections=false -filetype=obj -o %t.o < %s
8 ; RUN: llvm-readobj --section-headers --file-header %t.o | \
9 ; RUN:   FileCheck --check-prefix=OBJ %s
10 ; RUN: llvm-readobj --syms %t.o | FileCheck --check-prefixes=SYMS,SYMS32 %s
12 ; RUN: llc -mtriple powerpc64-ibm-aix-xcoff -data-sections=false -filetype=obj -o %t64.o < %s
13 ; RUN: llvm-readobj --section-headers --file-header %t64.o | \
14 ; RUN:   FileCheck --check-prefix=OBJ64 %s
15 ; RUN: llvm-readobj --syms %t64.o | FileCheck --check-prefixes=SYMS,SYMS64 %s
17 @ivar = local_unnamed_addr global i32 35, align 4
18 @llvar = local_unnamed_addr global i64 36, align 8
19 @svar = local_unnamed_addr global i16 37, align 2
20 @fvar = local_unnamed_addr global float 8.000000e+02, align 4
21 @dvar = local_unnamed_addr global double 9.000000e+02, align 8
22 @over_aligned = local_unnamed_addr global double 9.000000e+02, align 32
23 @chrarray = local_unnamed_addr global [4 x i8] c"abcd", align 1
24 @dblarr = local_unnamed_addr global [4 x double] [double 1.000000e+00, double 2.000000e+00, double 3.000000e+00, double 4.000000e+00], align 8
25 @d_0 = global double 0.000000e+00, align 8
26 @s_0 = global i16 0, align 2
27 @f_0 = global float 0.000000e+00, align 4
29 %struct.anon = type <{ i32, double }>
30 @astruct = global [1 x %struct.anon] [%struct.anon <{ i32 1, double 7.000000e+00 }>], align 1
32 %struct.anon2 = type { double, i32 }
33 @bstruct = global [1 x %struct.anon2] [%struct.anon2 { double 7.000000e+00 , i32 1}], align 8
35 @a = common global i32 0, align 4
36 @b = common global i64 0, align 8
37 @c = common global i16 0, align 2
39 @d = common local_unnamed_addr global double 0.000000e+00, align 8
40 @f = common local_unnamed_addr global float 0.000000e+00, align 4
42 @over_aligned_comm = common local_unnamed_addr global double 0.000000e+00, align 32
44 @array = common local_unnamed_addr global [33 x i8] zeroinitializer, align 1
46 ; CHECK-NOT: .toc
48 ; CHECK:      .csect [PR],5
49 ; CHECK-NEXT:  .file
51 ; CHECK:      .csect .data[RW],5
52 ; CHECK-NEXT: .globl  ivar
53 ; CHECK-NEXT: .align  2
54 ; CHECK-NEXT: ivar:
55 ; CHECK-NEXT: .vbyte    4, 35
57 ; CHECK:      .globl  llvar
58 ; CHECK-NEXT: .align  3
59 ; CHECK-NEXT: llvar:
60 ; CHECK32-NEXT: .vbyte  4, 0
61 ; CHECK32-NEXT: .vbyte  4, 36
62 ; CHECK64-NEXT: .vbyte  8, 36
64 ; CHECK:      .globl  svar
65 ; CHECK-NEXT: .align  1
66 ; CHECK-NEXT: svar:
67 ; CHECK-NEXT: .vbyte    2, 37
69 ; CHECK:      .globl  fvar
70 ; CHECK-NEXT: .align  2
71 ; CHECK-NEXT: fvar:
72 ; CHECK-NEXT: .vbyte    4, 0x44480000
74 ; CHECK:      .globl  dvar
75 ; CHECK-NEXT: .align  3
76 ; CHECK-NEXT: dvar:
77 ; CHECK32-NEXT: .vbyte  4, 1082925056
78 ; CHECK32-NEXT: .vbyte  4, 0
79 ; CHECK64-NEXT: .vbyte  8, 0x408c200000000000
81 ; CHECK:      .globl  over_aligned
82 ; CHECK-NEXT: .align  5
83 ; CHECK-NEXT: over_aligned:
84 ; CHECK32-NEXT: .vbyte  4, 1082925056
85 ; CHECK32-NEXT: .vbyte  4, 0
86 ; CHECK64-NEXT: .vbyte  8, 0x408c200000000000
88 ; CHECK:      .globl  chrarray
89 ; CHECK-NEXT: chrarray:
90 ; CHECK-NEXT: .byte   "abcd"
92 ; CHECK:      .globl  dblarr
93 ; CHECK-NEXT: .align  3
94 ; CHECK-NEXT: dblarr:
95 ; CHECK32-NEXT: .vbyte  4, 1072693248
96 ; CHECK32-NEXT: .vbyte  4, 0
97 ; CHECK64-NEXT: .vbyte  8, 0x3ff0000000000000
98 ; CHECK32-NEXT: .vbyte  4, 1073741824
99 ; CHECK32-NEXT: .vbyte  4, 0
100 ; CHECK64-NEXT: .vbyte  8, 0x4000000000000000
101 ; CHECK32-NEXT: .vbyte  4, 1074266112
102 ; CHECK32-NEXT: .vbyte  4, 0
103 ; CHECK64-NEXT: .vbyte  8, 0x4008000000000000
104 ; CHECK32-NEXT: .vbyte  4, 1074790400
105 ; CHECK32-NEXT: .vbyte  4, 0
106 ; CHECK64-NEXT: .vbyte  8, 0x4010000000000000
108 ; CHECK:      .globl  d_0
109 ; CHECK-NEXT: .align 3
110 ; CHECK-NEXT: d_0:
111 ; CHECK32-NEXT: .vbyte  4, 0
112 ; CHECK32-NEXT: .vbyte  4, 0
113 ; CHECK64-NEXT: .vbyte  8, 0
115 ; CHECK:      .globl  s_0
116 ; CHECK-NEXT: .align  1
117 ; CHECK-NEXT: s_0:
118 ; CHECK-NEXT: .vbyte    2, 0
120 ; CHECK:      .globl f_0
121 ; CHECK-NEXT: .align 2
122 ; CHECK-NEXT: f_0:
123 ; CHECK-NEXT: .vbyte    4, 0
125 ; CHECK:            .globl astruct
126 ; CHECK-NEXT:   astruct:
127 ; CHECK-NEXT:       .vbyte      4, 1
128 ; CHECK32-NEXT:     .vbyte      4, 1075576832
129 ; CHECK32-NEXT:     .vbyte      4, 0
130 ; CHECK64-NEXT:     .vbyte      8, 0x401c000000000000
132 ; CHECK:            .globl bstruct
133 ; CHECK-NEXT:       .align 3
134 ; CHECK-NEXT:   bstruct:
135 ; CHECK32-NEXT:     .vbyte      4, 1075576832
136 ; CHECK32-NEXT:     .vbyte      4, 0
137 ; CHECK64-NEXT:     .vbyte      8, 0x401c000000000000
138 ; CHECK-NEXT:       .vbyte      4, 1
139 ; CHECK-NEXT:       .space      4
142 ; CHECK-NEXT: .comm   a[RW],4,2
143 ; CHECK-NEXT: .comm   b[RW],8,3
144 ; CHECK-NEXT: .comm   c[RW],2,1
145 ; CHECK-NEXT: .comm   d[RW],8,3
146 ; CHECK-NEXT: .comm   f[RW],4,2
147 ; CHECK-NEXT: .comm   over_aligned_comm[RW],8,5
148 ; CHECK-NEXT: .comm   array[RW],33,0
150 ; OBJ:      File: {{.*}}aix-xcoff-data.ll.tmp.o
151 ; OBJ-NEXT: Format: aixcoff-rs6000
152 ; OBJ-NEXT: Arch: powerpc
153 ; OBJ-NEXT: AddressSize: 32bit
154 ; OBJ-NEXT: FileHeader {
155 ; OBJ-NEXT:   Magic: 0x1DF
156 ; OBJ-NEXT:   NumberOfSections: 3
157 ; OBJ-NEXT:   TimeStamp:
158 ; OBJ-NEXT:   SymbolTableOffset: 0x10C
159 ; OBJ-NEXT:   SymbolTableEntries: 45
160 ; OBJ-NEXT:   OptionalHeaderSize: 0x0
161 ; OBJ-NEXT:   Flags: 0x0
162 ; OBJ-NEXT: }
164 ; OBJ:      Sections [
165 ; OBJ:        Section {
166 ; OBJ-NEXT:     Index: [[#OBJ_INDX:]]
167 ; OBJ-NEXT:     Name: .text
168 ; OBJ-NEXT:     PhysicalAddress: 0x0
169 ; OBJ-NEXT:     VirtualAddress: 0x0
170 ; OBJ-NEXT:     Size: 0x0
171 ; OBJ-NEXT:     RawDataOffset: 0x8C
172 ; OBJ-NEXT:     RelocationPointer: 0x0
173 ; OBJ-NEXT:     LineNumberPointer: 0x0
174 ; OBJ-NEXT:     NumberOfRelocations: 0
175 ; OBJ-NEXT:     NumberOfLineNumbers: 0
176 ; OBJ-NEXT:     Type: STYP_TEXT (0x20)
177 ; OBJ-NEXT:   }
179 ; OBJ:        Section {
180 ; OBJ-NEXT:     Index: [[#OBJ_INDX+1]]
181 ; OBJ-NEXT:     Name: .data
182 ; OBJ-NEXT:     PhysicalAddress: 0x0
183 ; OBJ-NEXT:     VirtualAddress: 0x0
184 ; OBJ-NEXT:     Size: 0x80
185 ; OBJ-NEXT:     RawDataOffset: 0x8C
186 ; OBJ-NEXT:     RelocationPointer: 0x0
187 ; OBJ-NEXT:     LineNumberPointer: 0x0
188 ; OBJ-NEXT:     NumberOfRelocations: 0
189 ; OBJ-NEXT:     NumberOfLineNumbers: 0
190 ; OBJ-NEXT:     Type: STYP_DATA (0x40)
191 ; OBJ-NEXT:   }
193 ; OBJ:        Section {
194 ; OBJ-NEXT:     Index: [[#OBJ_INDX+2]]
195 ; OBJ-NEXT:     Name: .bss
196 ; OBJ-NEXT:     PhysicalAddress: 0x80
197 ; OBJ-NEXT:     VirtualAddress: 0x80
198 ; OBJ-NEXT:     Size: 0x6C
199 ; OBJ-NEXT:     RawDataOffset: 0x0
200 ; OBJ-NEXT:     RelocationPointer: 0x0
201 ; OBJ-NEXT:     LineNumberPointer: 0x0
202 ; OBJ-NEXT:     NumberOfRelocations: 0
203 ; OBJ-NEXT:     NumberOfLineNumbers: 0
204 ; OBJ-NEXT:     Type: STYP_BSS (0x80)
205 ; OBJ-NEXT:   }
206 ; OBJ:      ]
208 ; SYMS:      Symbols [
209 ; SYMS-NEXT:   Symbol {
210 ; SYMS-NEXT:     Index: 0
211 ; SYMS-NEXT:     Name: <stdin>
212 ; SYMS-NEXT:     Value (SymbolTableIndex): 0x0
213 ; SYMS-NEXT:     Section: N_DEBUG
214 ; SYMS-NEXT:     Source Language ID: TB_CPLUSPLUS (0x9)
215 ; SYMS32-NEXT:   CPU Version ID: TCPU_COM (0x3)
216 ; SYMS64-NEXT:   CPU Version ID: TCPU_PPC64 (0x2)
217 ; SYMS-NEXT:     StorageClass: C_FILE (0x67)
218 ; SYMS-NEXT:     NumberOfAuxEntries: 0
219 ; SYMS-NEXT:   }
220 ; SYMS-NEXT:   Symbol {
221 ; SYMS-NEXT:     Index: [[#INDX:]]
222 ; SYMS-NEXT:     Name:
223 ; SYMS-NEXT:     Value (RelocatableAddress): 0x0
224 ; SYMS-NEXT:     Section: .text
225 ; SYMS-NEXT:     Type: 0x0
226 ; SYMS-NEXT:     StorageClass: C_HIDEXT (0x6B)
227 ; SYMS-NEXT:     NumberOfAuxEntries: 1
228 ; SYMS-NEXT:     CSECT Auxiliary Entry {
229 ; SYMS-NEXT:       Index: [[#INDX+1]]
230 ; SYMS-NEXT:       SectionLen: 0
231 ; SYMS-NEXT:       ParameterHashIndex: 0x0
232 ; SYMS-NEXT:       TypeChkSectNum: 0x0
233 ; SYMS-NEXT:       SymbolAlignmentLog2: 5
234 ; SYMS-NEXT:       SymbolType: XTY_SD (0x1)
235 ; SYMS-NEXT:       StorageMappingClass: XMC_PR (0x0)
236 ; SYMS32-NEXT:     StabInfoIndex: 0x0
237 ; SYMS32-NEXT:     StabSectNum: 0x0
238 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
239 ; SYMS-NEXT:     }
240 ; SYMS-NEXT:   }
242 ; SYMS:        Symbol {
243 ; SYMS-NEXT:     Index: [[#INDX+2]]
244 ; SYMS-NEXT:     Name: .data
245 ; SYMS-NEXT:     Value (RelocatableAddress): 0x0
246 ; SYMS-NEXT:     Section: .data
247 ; SYMS-NEXT:     Type: 0x0
248 ; SYMS-NEXT:     StorageClass: C_HIDEXT (0x6B)
249 ; SYMS-NEXT:     NumberOfAuxEntries: 1
250 ; SYMS-NEXT:     CSECT Auxiliary Entry {
251 ; SYMS-NEXT:       Index: [[#INDX+3]]
252 ; SYMS-NEXT:       SectionLen: 128
253 ; SYMS-NEXT:       ParameterHashIndex: 0x0
254 ; SYMS-NEXT:       TypeChkSectNum: 0x0
255 ; SYMS-NEXT:       SymbolAlignmentLog2: 5
256 ; SYMS-NEXT:       SymbolType: XTY_SD (0x1)
257 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
258 ; SYMS32-NEXT:     StabInfoIndex: 0x0
259 ; SYMS32-NEXT:     StabSectNum: 0x0
260 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
261 ; SYMS-NEXT:     }
262 ; SYMS-NEXT:   }
264 ; SYMS:        Symbol {
265 ; SYMS-NEXT:     Index: [[#INDX+4]]
266 ; SYMS-NEXT:     Name: ivar
267 ; SYMS-NEXT:     Value (RelocatableAddress): 0x0
268 ; SYMS-NEXT:     Section: .data
269 ; SYMS-NEXT:     Type: 0x0
270 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
271 ; SYMS-NEXT:     NumberOfAuxEntries: 1
272 ; SYMS-NEXT:     CSECT Auxiliary Entry {
273 ; SYMS-NEXT:       Index: [[#INDX+5]]
274 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
275 ; SYMS-NEXT:       ParameterHashIndex: 0x0
276 ; SYMS-NEXT:       TypeChkSectNum: 0x0
277 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
278 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
279 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
280 ; SYMS32-NEXT:     StabInfoIndex: 0x0
281 ; SYMS32-NEXT:     StabSectNum: 0x0
282 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
283 ; SYMS-NEXT:     }
284 ; SYMS-NEXT:   }
286 ; SYMS:        Symbol {
287 ; SYMS-NEXT:     Index: [[#INDX+6]]
288 ; SYMS-NEXT:     Name: llvar
289 ; SYMS-NEXT:     Value (RelocatableAddress): 0x8
290 ; SYMS-NEXT:     Section: .data
291 ; SYMS-NEXT:     Type: 0x0
292 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
293 ; SYMS-NEXT:     NumberOfAuxEntries: 1
294 ; SYMS-NEXT:     CSECT Auxiliary Entry {
295 ; SYMS-NEXT:       Index: [[#INDX+7]]
296 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
297 ; SYMS-NEXT:       ParameterHashIndex: 0x0
298 ; SYMS-NEXT:       TypeChkSectNum: 0x0
299 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
300 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
301 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
302 ; SYMS32-NEXT:     StabInfoIndex: 0x0
303 ; SYMS32-NEXT:     StabSectNum: 0x0
304 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
305 ; SYMS-NEXT:     }
306 ; SYMS-NEXT:   }
308 ; SYMS:        Symbol {
309 ; SYMS-NEXT:     Index: [[#INDX+8]]
310 ; SYMS-NEXT:     Name: svar
311 ; SYMS-NEXT:     Value (RelocatableAddress): 0x10
312 ; SYMS-NEXT:     Section: .data
313 ; SYMS-NEXT:     Type: 0x0
314 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
315 ; SYMS-NEXT:     NumberOfAuxEntries: 1
316 ; SYMS-NEXT:     CSECT Auxiliary Entry {
317 ; SYMS-NEXT:       Index: [[#INDX+9]]
318 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
319 ; SYMS-NEXT:       ParameterHashIndex: 0x0
320 ; SYMS-NEXT:       TypeChkSectNum: 0x0
321 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
322 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
323 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
324 ; SYMS32-NEXT:     StabInfoIndex: 0x0
325 ; SYMS32-NEXT:     StabSectNum: 0x0
326 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
327 ; SYMS-NEXT:     }
328 ; SYMS-NEXT:   }
330 ; SYMS:        Symbol {
331 ; SYMS-NEXT:     Index: [[#INDX+10]]
332 ; SYMS-NEXT:     Name: fvar
333 ; SYMS-NEXT:     Value (RelocatableAddress): 0x14
334 ; SYMS-NEXT:     Section: .data
335 ; SYMS-NEXT:     Type: 0x0
336 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
337 ; SYMS-NEXT:     NumberOfAuxEntries: 1
338 ; SYMS-NEXT:     CSECT Auxiliary Entry {
339 ; SYMS-NEXT:       Index: [[#INDX+11]]
340 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
341 ; SYMS-NEXT:       ParameterHashIndex: 0x0
342 ; SYMS-NEXT:       TypeChkSectNum: 0x0
343 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
344 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
345 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
346 ; SYMS32-NEXT:     StabInfoIndex: 0x0
347 ; SYMS32-NEXT:     StabSectNum: 0x0
348 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
349 ; SYMS-NEXT:     }
350 ; SYMS-NEXT:   }
352 ; SYMS:        Symbol {
353 ; SYMS-NEXT:     Index: [[#INDX+12]]
354 ; SYMS-NEXT:     Name: dvar
355 ; SYMS-NEXT:     Value (RelocatableAddress): 0x18
356 ; SYMS-NEXT:     Section: .data
357 ; SYMS-NEXT:     Type: 0x0
358 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
359 ; SYMS-NEXT:     NumberOfAuxEntries: 1
360 ; SYMS-NEXT:     CSECT Auxiliary Entry {
361 ; SYMS-NEXT:       Index: [[#INDX+13]]
362 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
363 ; SYMS-NEXT:       ParameterHashIndex: 0x0
364 ; SYMS-NEXT:       TypeChkSectNum: 0x0
365 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
366 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
367 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
368 ; SYMS32-NEXT:     StabInfoIndex: 0x0
369 ; SYMS32-NEXT:     StabSectNum: 0x0
370 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
371 ; SYMS-NEXT:     }
372 ; SYMS-NEXT:   }
374 ; SYMS:        Symbol {
375 ; SYMS-NEXT:     Index: [[#INDX+14]]
376 ; SYMS-NEXT:     Name: over_aligned
377 ; SYMS-NEXT:     Value (RelocatableAddress): 0x20
378 ; SYMS-NEXT:     Section: .data
379 ; SYMS-NEXT:     Type: 0x0
380 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
381 ; SYMS-NEXT:     NumberOfAuxEntries: 1
382 ; SYMS-NEXT:     CSECT Auxiliary Entry {
383 ; SYMS-NEXT:       Index: [[#INDX+15]]
384 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
385 ; SYMS-NEXT:       ParameterHashIndex: 0x0
386 ; SYMS-NEXT:       TypeChkSectNum: 0x0
387 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
388 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
389 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
390 ; SYMS32-NEXT:     StabInfoIndex: 0x0
391 ; SYMS32-NEXT:     StabSectNum: 0x0
392 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
393 ; SYMS-NEXT:     }
394 ; SYMS-NEXT:   }
396 ; SYMS:        Symbol {
397 ; SYMS-NEXT:     Index: [[#INDX+16]]
398 ; SYMS-NEXT:     Name: chrarray
399 ; SYMS-NEXT:     Value (RelocatableAddress): 0x28
400 ; SYMS-NEXT:     Section: .data
401 ; SYMS-NEXT:     Type: 0x0
402 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
403 ; SYMS-NEXT:     NumberOfAuxEntries: 1
404 ; SYMS-NEXT:     CSECT Auxiliary Entry {
405 ; SYMS-NEXT:       Index: [[#INDX+17]]
406 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
407 ; SYMS-NEXT:       ParameterHashIndex: 0x0
408 ; SYMS-NEXT:       TypeChkSectNum: 0x0
409 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
410 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
411 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
412 ; SYMS32-NEXT:     StabInfoIndex: 0x0
413 ; SYMS32-NEXT:     StabSectNum: 0x0
414 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
415 ; SYMS-NEXT:     }
416 ; SYMS-NEXT:   }
418 ; SYMS:        Symbol {
419 ; SYMS-NEXT:     Index: [[#INDX+18]]
420 ; SYMS-NEXT:     Name: dblarr
421 ; SYMS-NEXT:     Value (RelocatableAddress): 0x30
422 ; SYMS-NEXT:     Section: .data
423 ; SYMS-NEXT:     Type: 0x0
424 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
425 ; SYMS-NEXT:     NumberOfAuxEntries: 1
426 ; SYMS-NEXT:     CSECT Auxiliary Entry {
427 ; SYMS-NEXT:       Index: [[#INDX+19]]
428 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
429 ; SYMS-NEXT:       ParameterHashIndex: 0x0
430 ; SYMS-NEXT:       TypeChkSectNum: 0x0
431 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
432 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
433 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
434 ; SYMS32-NEXT:     StabInfoIndex: 0x0
435 ; SYMS32-NEXT:     StabSectNum: 0x0
436 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
437 ; SYMS-NEXT:     }
438 ; SYMS-NEXT:   }
440 ; SYMS:        Symbol {
441 ; SYMS-NEXT:     Index: [[#INDX+20]]
442 ; SYMS-NEXT:     Name: d_0
443 ; SYMS-NEXT:     Value (RelocatableAddress): 0x50
444 ; SYMS-NEXT:     Section: .data
445 ; SYMS-NEXT:     Type: 0x0
446 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
447 ; SYMS-NEXT:     NumberOfAuxEntries: 1
448 ; SYMS-NEXT:     CSECT Auxiliary Entry {
449 ; SYMS-NEXT:       Index: [[#INDX+21]]
450 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
451 ; SYMS-NEXT:       ParameterHashIndex: 0x0
452 ; SYMS-NEXT:       TypeChkSectNum: 0x0
453 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
454 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
455 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
456 ; SYMS32-NEXT:     StabInfoIndex: 0x0
457 ; SYMS32-NEXT:     StabSectNum: 0x0
458 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
459 ; SYMS-NEXT:     }
460 ; SYMS-NEXT:   }
462 ; SYMS:        Symbol {
463 ; SYMS-NEXT:     Index: [[#INDX+22]]
464 ; SYMS-NEXT:     Name: s_0
465 ; SYMS-NEXT:     Value (RelocatableAddress): 0x58
466 ; SYMS-NEXT:     Section: .data
467 ; SYMS-NEXT:     Type: 0x0
468 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
469 ; SYMS-NEXT:     NumberOfAuxEntries: 1
470 ; SYMS-NEXT:     CSECT Auxiliary Entry {
471 ; SYMS-NEXT:       Index: [[#INDX+23]]
472 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
473 ; SYMS-NEXT:       ParameterHashIndex: 0x0
474 ; SYMS-NEXT:       TypeChkSectNum: 0x0
475 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
476 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
477 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
478 ; SYMS32-NEXT:     StabInfoIndex: 0x0
479 ; SYMS32-NEXT:     StabSectNum: 0x0
480 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
481 ; SYMS-NEXT:     }
482 ; SYMS-NEXT:   }
484 ; SYMS:        Symbol {
485 ; SYMS-NEXT:     Index: [[#INDX+24]]
486 ; SYMS-NEXT:     Name: f_0
487 ; SYMS-NEXT:     Value (RelocatableAddress): 0x5C
488 ; SYMS-NEXT:     Section: .data
489 ; SYMS-NEXT:     Type: 0x0
490 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
491 ; SYMS-NEXT:     NumberOfAuxEntries: 1
492 ; SYMS-NEXT:     CSECT Auxiliary Entry {
493 ; SYMS-NEXT:       Index: [[#INDX+25]]
494 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
495 ; SYMS-NEXT:       ParameterHashIndex: 0x0
496 ; SYMS-NEXT:       TypeChkSectNum: 0x0
497 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
498 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
499 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
500 ; SYMS32-NEXT:     StabInfoIndex: 0x0
501 ; SYMS32-NEXT:     StabSectNum: 0x0
502 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
503 ; SYMS-NEXT:     }
504 ; SYMS-NEXT:   }
506 ; SYMS:        Symbol {
507 ; SYMS-NEXT:     Index: [[#INDX+26]]
508 ; SYMS-NEXT:     Name: astruct
509 ; SYMS-NEXT:     Value (RelocatableAddress): 0x60
510 ; SYMS-NEXT:     Section: .data
511 ; SYMS-NEXT:     Type: 0x0
512 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
513 ; SYMS-NEXT:     NumberOfAuxEntries: 1
514 ; SYMS-NEXT:     CSECT Auxiliary Entry {
515 ; SYMS-NEXT:       Index: [[#INDX+27]]
516 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
517 ; SYMS-NEXT:       ParameterHashIndex: 0x0
518 ; SYMS-NEXT:       TypeChkSectNum: 0x0
519 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
520 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
521 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
522 ; SYMS32-NEXT:     StabInfoIndex: 0x0
523 ; SYMS32-NEXT:     StabSectNum: 0x0
524 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
525 ; SYMS-NEXT:     }
526 ; SYMS-NEXT:   }
528 ; SYMS:        Symbol {
529 ; SYMS-NEXT:     Index: [[#INDX+28]]
530 ; SYMS-NEXT:     Name: bstruct
531 ; SYMS-NEXT:     Value (RelocatableAddress): 0x70
532 ; SYMS-NEXT:     Section: .data
533 ; SYMS-NEXT:     Type: 0x0
534 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
535 ; SYMS-NEXT:     NumberOfAuxEntries: 1
536 ; SYMS-NEXT:     CSECT Auxiliary Entry {
537 ; SYMS-NEXT:       Index: [[#INDX+29]]
538 ; SYMS-NEXT:       ContainingCsectSymbolIndex: [[#INDX+2]]
539 ; SYMS-NEXT:       ParameterHashIndex: 0x0
540 ; SYMS-NEXT:       TypeChkSectNum: 0x0
541 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
542 ; SYMS-NEXT:       SymbolType: XTY_LD (0x2)
543 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
544 ; SYMS32-NEXT:     StabInfoIndex: 0x0
545 ; SYMS32-NEXT:     StabSectNum: 0x0
546 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
547 ; SYMS-NEXT:     }
548 ; SYMS-NEXT:   }
550 ; SYMS:        Symbol {
551 ; SYMS-NEXT:     Index: [[#INDX+30]]
552 ; SYMS-NEXT:     Name: a
553 ; SYMS-NEXT:     Value (RelocatableAddress): 0x80
554 ; SYMS-NEXT:     Section: .bss
555 ; SYMS-NEXT:     Type: 0x0
556 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
557 ; SYMS-NEXT:     NumberOfAuxEntries: 1
558 ; SYMS-NEXT:     CSECT Auxiliary Entry {
559 ; SYMS-NEXT:       Index: [[#INDX+31]]
560 ; SYMS-NEXT:       SectionLen: 4
561 ; SYMS-NEXT:       ParameterHashIndex: 0x0
562 ; SYMS-NEXT:       TypeChkSectNum: 0x0
563 ; SYMS-NEXT:       SymbolAlignmentLog2: 2
564 ; SYMS-NEXT:       SymbolType: XTY_CM (0x3)
565 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
566 ; SYMS32-NEXT:     StabInfoIndex: 0x0
567 ; SYMS32-NEXT:     StabSectNum: 0x0
568 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
569 ; SYMS-NEXT:     }
570 ; SYMS-NEXT:   }
572 ; SYMS:        Symbol {
573 ; SYMS-NEXT:     Index: [[#INDX+32]]
574 ; SYMS-NEXT:     Name: b
575 ; SYMS-NEXT:     Value (RelocatableAddress): 0x88
576 ; SYMS-NEXT:     Section: .bss
577 ; SYMS-NEXT:     Type: 0x0
578 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
579 ; SYMS-NEXT:     NumberOfAuxEntries: 1
580 ; SYMS-NEXT:     CSECT Auxiliary Entry {
581 ; SYMS-NEXT:       Index: [[#INDX+33]]
582 ; SYMS-NEXT:       SectionLen: 8
583 ; SYMS-NEXT:       ParameterHashIndex: 0x0
584 ; SYMS-NEXT:       TypeChkSectNum: 0x0
585 ; SYMS-NEXT:       SymbolAlignmentLog2: 3
586 ; SYMS-NEXT:       SymbolType: XTY_CM (0x3)
587 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
588 ; SYMS32-NEXT:     StabInfoIndex: 0x0
589 ; SYMS32-NEXT:     StabSectNum: 0x0
590 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
591 ; SYMS-NEXT:     }
592 ; SYMS-NEXT:   }
594 ; SYMS:        Symbol {
595 ; SYMS-NEXT:     Index: [[#INDX+34]]
596 ; SYMS-NEXT:     Name: c
597 ; SYMS-NEXT:     Value (RelocatableAddress): 0x90
598 ; SYMS-NEXT:     Section: .bss
599 ; SYMS-NEXT:     Type: 0x0
600 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
601 ; SYMS-NEXT:     NumberOfAuxEntries: 1
602 ; SYMS-NEXT:     CSECT Auxiliary Entry {
603 ; SYMS-NEXT:       Index: [[#INDX+35]]
604 ; SYMS-NEXT:       SectionLen: 2
605 ; SYMS-NEXT:       ParameterHashIndex: 0x0
606 ; SYMS-NEXT:       TypeChkSectNum: 0x0
607 ; SYMS-NEXT:       SymbolAlignmentLog2: 1
608 ; SYMS-NEXT:       SymbolType: XTY_CM (0x3)
609 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
610 ; SYMS32-NEXT:     StabInfoIndex: 0x0
611 ; SYMS32-NEXT:     StabSectNum: 0x0
612 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
613 ; SYMS-NEXT:     }
614 ; SYMS-NEXT:   }
616 ; SYMS:        Symbol {
617 ; SYMS-NEXT:     Index: [[#INDX+36]]
618 ; SYMS-NEXT:     Name: d
619 ; SYMS-NEXT:     Value (RelocatableAddress): 0x98
620 ; SYMS-NEXT:     Section: .bss
621 ; SYMS-NEXT:     Type: 0x0
622 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
623 ; SYMS-NEXT:     NumberOfAuxEntries: 1
624 ; SYMS-NEXT:     CSECT Auxiliary Entry {
625 ; SYMS-NEXT:       Index: [[#INDX+37]]
626 ; SYMS-NEXT:       SectionLen: 8
627 ; SYMS-NEXT:       ParameterHashIndex: 0x0
628 ; SYMS-NEXT:       TypeChkSectNum: 0x0
629 ; SYMS-NEXT:       SymbolAlignmentLog2: 3
630 ; SYMS-NEXT:       SymbolType: XTY_CM (0x3)
631 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
632 ; SYMS32-NEXT:     StabInfoIndex: 0x0
633 ; SYMS32-NEXT:     StabSectNum: 0x0
634 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
635 ; SYMS-NEXT:     }
636 ; SYMS-NEXT:   }
638 ; SYMS:        Symbol {
639 ; SYMS-NEXT:     Index: [[#INDX+38]]
640 ; SYMS-NEXT:     Name: f
641 ; SYMS-NEXT:     Value (RelocatableAddress): 0xA0
642 ; SYMS-NEXT:     Section: .bss
643 ; SYMS-NEXT:     Type: 0x0
644 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
645 ; SYMS-NEXT:     NumberOfAuxEntries: 1
646 ; SYMS-NEXT:     CSECT Auxiliary Entry {
647 ; SYMS-NEXT:       Index: [[#INDX+39]]
648 ; SYMS-NEXT:       SectionLen: 4
649 ; SYMS-NEXT:       ParameterHashIndex: 0x0
650 ; SYMS-NEXT:       TypeChkSectNum: 0x0
651 ; SYMS-NEXT:       SymbolAlignmentLog2: 2
652 ; SYMS-NEXT:       SymbolType: XTY_CM (0x3)
653 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
654 ; SYMS32-NEXT:     StabInfoIndex: 0x0
655 ; SYMS32-NEXT:     StabSectNum: 0x0
656 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
657 ; SYMS-NEXT:     }
658 ; SYMS-NEXT:   }
660 ; SYMS:        Symbol {
661 ; SYMS-NEXT:     Index: [[#INDX+40]]
662 ; SYMS-NEXT:     Name: over_aligned_comm
663 ; SYMS-NEXT:     Value (RelocatableAddress): 0xC0
664 ; SYMS-NEXT:     Section: .bss
665 ; SYMS-NEXT:     Type: 0x0
666 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
667 ; SYMS-NEXT:     NumberOfAuxEntries: 1
668 ; SYMS-NEXT:     CSECT Auxiliary Entry {
669 ; SYMS-NEXT:       Index: [[#INDX+41]]
670 ; SYMS-NEXT:       SectionLen: 8
671 ; SYMS-NEXT:       ParameterHashIndex: 0x0
672 ; SYMS-NEXT:       TypeChkSectNum: 0x0
673 ; SYMS-NEXT:       SymbolAlignmentLog2: 5
674 ; SYMS-NEXT:       SymbolType: XTY_CM (0x3)
675 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
676 ; SYMS32-NEXT:     StabInfoIndex: 0x0
677 ; SYMS32-NEXT:     StabSectNum: 0x0
678 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
679 ; SYMS-NEXT:     }
680 ; SYMS-NEXT:   }
682 ; SYMS:        Symbol {
683 ; SYMS-NEXT:     Index: [[#INDX+42]]
684 ; SYMS-NEXT:     Name: array
685 ; SYMS-NEXT:     Value (RelocatableAddress): 0xC8
686 ; SYMS-NEXT:     Section: .bss
687 ; SYMS-NEXT:     Type: 0x0
688 ; SYMS-NEXT:     StorageClass: C_EXT (0x2)
689 ; SYMS-NEXT:     NumberOfAuxEntries: 1
690 ; SYMS-NEXT:     CSECT Auxiliary Entry {
691 ; SYMS-NEXT:       Index: [[#INDX+43]]
692 ; SYMS-NEXT:       SectionLen: 33
693 ; SYMS-NEXT:       ParameterHashIndex: 0x0
694 ; SYMS-NEXT:       TypeChkSectNum: 0x0
695 ; SYMS-NEXT:       SymbolAlignmentLog2: 0
696 ; SYMS-NEXT:       SymbolType: XTY_CM (0x3)
697 ; SYMS-NEXT:       StorageMappingClass: XMC_RW (0x5)
698 ; SYMS32-NEXT:     StabInfoIndex: 0x0
699 ; SYMS32-NEXT:     StabSectNum: 0x0
700 ; SYMS64-NEXT:     Auxiliary Type: AUX_CSECT (0xFB)
701 ; SYMS-NEXT:     }
702 ; SYMS-NEXT:   }
703 ; SYMS:      ]
705 ; OBJ64:      Format: aix5coff64-rs6000
706 ; OBJ64-NEXT: Arch: powerpc64
707 ; OBJ64-NEXT: AddressSize: 64bit
708 ; OBJ64-NEXT: FileHeader {
709 ; OBJ64-NEXT:   Magic: 0x1F7
710 ; OBJ64-NEXT:   NumberOfSections: 3
711 ; OBJ64-NEXT:   TimeStamp: None (0x0)
712 ; OBJ64-NEXT:   SymbolTableOffset: 0x170
713 ; OBJ64-NEXT:   SymbolTableEntries: 45
714 ; OBJ64-NEXT:   OptionalHeaderSize: 0x0
715 ; OBJ64-NEXT:   Flags: 0x0
716 ; OBJ64-NEXT: }
718 ; OBJ64:      Sections [
719 ; OBJ64-NEXT:   Section {
720 ; OBJ64-NEXT:     Index: [[#OBJ64_INDX:]]
721 ; OBJ64-NEXT:     Name: .text
722 ; OBJ64-NEXT:     PhysicalAddress: 0x0
723 ; OBJ64-NEXT:     VirtualAddress: 0x0
724 ; OBJ64-NEXT:     Size: 0x0
725 ; OBJ64-NEXT:     RawDataOffset: 0xF0
726 ; OBJ64-NEXT:     RelocationPointer: 0x0
727 ; OBJ64-NEXT:     LineNumberPointer: 0x0
728 ; OBJ64-NEXT:     NumberOfRelocations: 0
729 ; OBJ64-NEXT:     NumberOfLineNumbers: 0
730 ; OBJ64-NEXT:     Type: STYP_TEXT (0x20)
731 ; OBJ64-NEXT:   }
732 ; OBJ64-NEXT:   Section {
733 ; OBJ64-NEXT:     Index: [[#OBJ64_INDX+1]]
734 ; OBJ64-NEXT:     Name: .data
735 ; OBJ64-NEXT:     PhysicalAddress: 0x0
736 ; OBJ64-NEXT:     VirtualAddress: 0x0
737 ; OBJ64-NEXT:     Size: 0x80
738 ; OBJ64-NEXT:     RawDataOffset: 0xF0
739 ; OBJ64-NEXT:     RelocationPointer: 0x0
740 ; OBJ64-NEXT:     LineNumberPointer: 0x0
741 ; OBJ64-NEXT:     NumberOfRelocations: 0
742 ; OBJ64-NEXT:     NumberOfLineNumbers: 0
743 ; OBJ64-NEXT:     Type: STYP_DATA (0x40)
744 ; OBJ64-NEXT:   }
745 ; OBJ64-NEXT:   Section {
746 ; OBJ64-NEXT:     Index: [[#OBJ64_INDX+2]]
747 ; OBJ64-NEXT:     Name: .bss
748 ; OBJ64-NEXT:     PhysicalAddress: 0x80
749 ; OBJ64-NEXT:     VirtualAddress: 0x80
750 ; OBJ64-NEXT:     Size: 0x6C
751 ; OBJ64-NEXT:     RawDataOffset: 0x0
752 ; OBJ64-NEXT:     RelocationPointer: 0x0
753 ; OBJ64-NEXT:     LineNumberPointer: 0x0
754 ; OBJ64-NEXT:     NumberOfRelocations: 0
755 ; OBJ64-NEXT:     NumberOfLineNumbers: 0
756 ; OBJ64-NEXT:     Type: STYP_BSS (0x80)
757 ; OBJ64-NEXT:   }
758 ; OBJ64-NEXT: ]