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