1; RUN: llc -verify-machineinstrs -mtriple powerpc-ibm-aix-xcoff -xcoff-traceback-table=false -mcpu=pwr4 \ 2; RUN: -mattr=-altivec -data-sections=false < %s | FileCheck --check-prefixes=COMMON,BIT32 %s 3 4; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -xcoff-traceback-table=false -mcpu=pwr4 \ 5; RUN: -mattr=-altivec -data-sections=false < %s | FileCheck --check-prefixes=COMMON,BIT64 %s 6 7; RUN: llc -verify-machineinstrs -mtriple powerpc-ibm-aix-xcoff -xcoff-traceback-table=false -mcpu=pwr4 \ 8; RUN: -mattr=-altivec -data-sections=false -filetype=obj -o %t.o < %s 9; RUN: llvm-readobj --symbols %t.o | FileCheck --check-prefixes=CHECKSYM,CHECKSYM32 %s 10 11; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -xcoff-traceback-table=false -mcpu=pwr4 \ 12; RUN: -mattr=-altivec -data-sections=false -filetype=obj -o %t64.o < %s 13; RUN: llvm-readobj --symbols %t64.o | FileCheck --check-prefixes=CHECKSYM,CHECKSYM64 %s 14 15@foo_weak_p = global ptr @foo_ref_weak, align 4 16@b = weak global i32 0, align 4 17 18define weak void @foo_weak(ptr %p) { 19entry: 20 %p.addr = alloca ptr, align 4 21 store ptr %p, ptr %p.addr, align 4 22 %0 = load ptr, ptr %p.addr, align 4 23 %1 = load i32, ptr %0, align 4 24 %inc = add nsw i32 %1, 1 25 store i32 %inc, ptr %0, align 4 26 ret void 27} 28 29define weak void @foo_ref_weak() { 30entry: 31 ret void 32} 33 34define i32 @main() { 35entry: 36 %0 = load ptr, ptr @foo_weak_p, align 4 37 call void %0() 38 call void @foo_weak(ptr @b) 39 call void @foo_ref_weak() 40 ret i32 0 41} 42 43; COMMON: .weak foo_weak[DS] # -- Begin function foo_weak 44; COMMON-NEXT: .weak .foo_weak 45; COMMON-NEXT: .align 4 46; COMMON-NEXT: .csect foo_weak[DS] 47; BIT32-NEXT: .vbyte 4, .foo_weak # @foo_weak 48; BIT32-NEXT: .vbyte 4, TOC[TC0] 49; BIT32-NEXT: .vbyte 4, 0 50; BIT64-NEXT: .vbyte 8, .foo_weak # @foo_weak 51; BIT64-NEXT: .vbyte 8, TOC[TC0] 52; BIT64-NEXT: .vbyte 8, 0 53; COMMON-NEXT: .csect ..text..[PR] 54; COMMON-NEXT: .foo_weak: 55 56; COMMON: .weak foo_ref_weak[DS] # -- Begin function foo_ref_weak 57; COMMON-NEXT: .weak .foo_ref_weak 58; COMMON-NEXT: .align 4 59; COMMON-NEXT: .csect foo_ref_weak[DS] 60; BIT32-NEXT: .vbyte 4, .foo_ref_weak # @foo_ref_weak 61; BIT32-NEXT: .vbyte 4, TOC[TC0] 62; BIT32-NEXT: .vbyte 4, 0 63; BIT64-NEXT: .vbyte 8, .foo_ref_weak # @foo_ref_weak 64; BIT64-NEXT: .vbyte 8, TOC[TC0] 65; BIT64-NEXT: .vbyte 8, 0 66; COMMON-NEXT: .csect ..text..[PR] 67; COMMON-NEXT: .foo_ref_weak: 68 69; COMMON: .globl main[DS] # -- Begin function main 70; COMMON-NEXT: .globl .main 71; COMMON-NEXT: .align 4 72; COMMON-NEXT: .csect main[DS] 73; BIT32-NEXT: .vbyte 4, .main # @main 74; BIT32-NEXT: .vbyte 4, TOC[TC0] 75; BIT32-NEXT: .vbyte 4, 0 76; BIT64-NEXT: .vbyte 8, .main # @main 77; BIT64-NEXT: .vbyte 8, TOC[TC0] 78; BIT64-NEXT: .vbyte 8, 0 79; COMMON-NEXT: .csect ..text..[PR] 80; COMMON-NEXT: .main: 81 82; COMMON: .csect .data[RW] 83; COMMON-NEXT: .globl foo_weak_p 84; BIT32-NEXT: .align 2 85; BIT64-NEXT: .align 3 86; COMMON-NEXT: foo_weak_p: 87; BIT32-NEXT: .vbyte 4, foo_ref_weak[DS] 88; BIT64-NEXT: .vbyte 8, foo_ref_weak[DS] 89; COMMON-NEXT: .weak b 90; COMMON-NEXT: .align 2 91; COMMON-NEXT: b: 92; COMMON-NEXT: .vbyte 4, 0 # 0x0 93; COMMON-NEXT: .toc 94; COMMON-NEXT: L..C0: 95; COMMON-NEXT: .tc foo_weak_p[TC],foo_weak_p 96; COMMON-NEXT: L..C1: 97; COMMON-NEXT: .tc b[TC],b 98 99 100; CHECKSYM: Symbols [ 101; CHECKSYM-NEXT: Symbol { 102; CHECKSYM-NEXT: Index: 0 103; CHECKSYM-NEXT: Name: .file 104; CHECKSYM-NEXT: Value (SymbolTableIndex): 0x0 105; CHECKSYM-NEXT: Section: N_DEBUG 106; CHECKSYM-NEXT: Source Language ID: TB_CPLUSPLUS (0x9) 107; CHECKSYM-NEXT: CPU Version ID: TCPU_COM (0x3) 108; CHECKSYM-NEXT: StorageClass: C_FILE (0x67) 109; CHECKSYM-NEXT: NumberOfAuxEntries: 2 110; CHECKSYM: Symbol { 111; CHECKSYM-NEXT: Index: [[#Index:]] 112; CHECKSYM-NEXT: Name: 113; CHECKSYM-NEXT: Value (RelocatableAddress): 0x0 114; CHECKSYM-NEXT: Section: .text 115; CHECKSYM-NEXT: Type: 0x0 116; CHECKSYM-NEXT: StorageClass: C_HIDEXT (0x6B) 117; CHECKSYM-NEXT: NumberOfAuxEntries: 1 118; CHECKSYM-NEXT: CSECT Auxiliary Entry { 119; CHECKSYM-NEXT: Index: [[#Index+1]] 120; CHECKSYM-NEXT: SectionLen: 136 121; CHECKSYM-NEXT: ParameterHashIndex: 0x0 122; CHECKSYM-NEXT: TypeChkSectNum: 0x0 123; CHECKSYM-NEXT: SymbolAlignmentLog2: 5 124; CHECKSYM-NEXT: SymbolType: XTY_SD (0x1) 125; CHECKSYM-NEXT: StorageMappingClass: XMC_PR (0x0) 126; CHECKSYM32-NEXT: StabInfoIndex: 0x0 127; CHECKSYM32-NEXT: StabSectNum: 0x0 128; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 129; CHECKSYM-NEXT: } 130; CHECKSYM-NEXT: } 131; CHECKSYM-NEXT: Symbol { 132; CHECKSYM-NEXT: Index: [[#Index+2]] 133; CHECKSYM-NEXT: Name: .foo_weak 134; CHECKSYM-NEXT: Value (RelocatableAddress): 0x0 135; CHECKSYM-NEXT: Section: .text 136; CHECKSYM-NEXT: Type: 0x0 137; CHECKSYM-NEXT: StorageClass: C_WEAKEXT (0x6F) 138; CHECKSYM-NEXT: NumberOfAuxEntries: 1 139; CHECKSYM-NEXT: CSECT Auxiliary Entry { 140; CHECKSYM-NEXT: Index: [[#Index+3]] 141; CHECKSYM-NEXT: ContainingCsectSymbolIndex: [[#Index]] 142; CHECKSYM-NEXT: ParameterHashIndex: 0x0 143; CHECKSYM-NEXT: TypeChkSectNum: 0x0 144; CHECKSYM-NEXT: SymbolAlignmentLog2: 0 145; CHECKSYM-NEXT: SymbolType: XTY_LD (0x2) 146; CHECKSYM-NEXT: StorageMappingClass: XMC_PR (0x0) 147; CHECKSYM32-NEXT: StabInfoIndex: 0x0 148; CHECKSYM32-NEXT: StabSectNum: 0x0 149; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 150; CHECKSYM-NEXT: } 151; CHECKSYM-NEXT: } 152; CHECKSYM-NEXT: Symbol { 153; CHECKSYM-NEXT: Index: [[#Index+4]] 154; CHECKSYM-NEXT: Name: .foo_ref_weak 155; CHECKSYM-NEXT: Value (RelocatableAddress): 0x20 156; CHECKSYM-NEXT: Section: .text 157; CHECKSYM-NEXT: Type: 0x0 158; CHECKSYM-NEXT: StorageClass: C_WEAKEXT (0x6F) 159; CHECKSYM-NEXT: NumberOfAuxEntries: 1 160; CHECKSYM-NEXT: CSECT Auxiliary Entry { 161; CHECKSYM-NEXT: Index: [[#Index+5]] 162; CHECKSYM-NEXT: ContainingCsectSymbolIndex: [[#Index]] 163; CHECKSYM-NEXT: ParameterHashIndex: 0x0 164; CHECKSYM-NEXT: TypeChkSectNum: 0x0 165; CHECKSYM-NEXT: SymbolAlignmentLog2: 0 166; CHECKSYM-NEXT: SymbolType: XTY_LD (0x2) 167; CHECKSYM-NEXT: StorageMappingClass: XMC_PR (0x0) 168; CHECKSYM32-NEXT: StabInfoIndex: 0x0 169; CHECKSYM32-NEXT: StabSectNum: 0x0 170; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 171; CHECKSYM-NEXT: } 172; CHECKSYM-NEXT: } 173; CHECKSYM-NEXT: Symbol { 174; CHECKSYM-NEXT: Index: [[#Index+6]] 175; CHECKSYM-NEXT: Name: .main 176; CHECKSYM-NEXT: Value (RelocatableAddress): 0x30 177; CHECKSYM-NEXT: Section: .text 178; CHECKSYM-NEXT: Type: 0x0 179; CHECKSYM-NEXT: StorageClass: C_EXT (0x2) 180; CHECKSYM-NEXT: NumberOfAuxEntries: 1 181; CHECKSYM-NEXT: CSECT Auxiliary Entry { 182; CHECKSYM-NEXT: Index: [[#Index+7]] 183; CHECKSYM-NEXT: ContainingCsectSymbolIndex: [[#Index]] 184; CHECKSYM-NEXT: ParameterHashIndex: 0x0 185; CHECKSYM-NEXT: TypeChkSectNum: 0x0 186; CHECKSYM-NEXT: SymbolAlignmentLog2: 0 187; CHECKSYM-NEXT: SymbolType: XTY_LD (0x2) 188; CHECKSYM-NEXT: StorageMappingClass: XMC_PR (0x0) 189; CHECKSYM32-NEXT: StabInfoIndex: 0x0 190; CHECKSYM32-NEXT: StabSectNum: 0x0 191; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 192; CHECKSYM-NEXT: } 193; CHECKSYM-NEXT: } 194; CHECKSYM-NEXT: Symbol { 195; CHECKSYM-NEXT: Index: [[#Index+8]] 196; CHECKSYM-NEXT: Name: .data 197; CHECKSYM-NEXT: Value (RelocatableAddress): 0x88 198; CHECKSYM-NEXT: Section: .data 199; CHECKSYM-NEXT: Type: 0x0 200; CHECKSYM-NEXT: StorageClass: C_HIDEXT (0x6B) 201; CHECKSYM-NEXT: NumberOfAuxEntries: 1 202; CHECKSYM-NEXT: CSECT Auxiliary Entry { 203; CHECKSYM-NEXT: Index: [[#Index+9]] 204; CHECKSYM32-NEXT: SectionLen: 8 205; CHECKSYM64-NEXT: SectionLen: 12 206; CHECKSYM-NEXT: ParameterHashIndex: 0x0 207; CHECKSYM-NEXT: TypeChkSectNum: 0x0 208; CHECKSYM32-NEXT: SymbolAlignmentLog2: 2 209; CHECKSYM64-NEXT: SymbolAlignmentLog2: 3 210; CHECKSYM-NEXT: SymbolType: XTY_SD (0x1) 211; CHECKSYM-NEXT: StorageMappingClass: XMC_RW (0x5) 212; CHECKSYM32-NEXT: StabInfoIndex: 0x0 213; CHECKSYM32-NEXT: StabSectNum: 0x0 214; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 215; CHECKSYM-NEXT: } 216; CHECKSYM-NEXT: } 217; CHECKSYM-NEXT: Symbol { 218; CHECKSYM-NEXT: Index: [[#Index+10]] 219; CHECKSYM-NEXT: Name: foo_weak_p 220; CHECKSYM-NEXT: Value (RelocatableAddress): 0x88 221; CHECKSYM-NEXT: Section: .data 222; CHECKSYM-NEXT: Type: 0x0 223; CHECKSYM-NEXT: StorageClass: C_EXT (0x2) 224; CHECKSYM-NEXT: NumberOfAuxEntries: 1 225; CHECKSYM-NEXT: CSECT Auxiliary Entry { 226; CHECKSYM-NEXT: Index: [[#Index+11]] 227; CHECKSYM-NEXT: ContainingCsectSymbolIndex: [[#Index+8]] 228; CHECKSYM-NEXT: ParameterHashIndex: 0x0 229; CHECKSYM-NEXT: TypeChkSectNum: 0x0 230; CHECKSYM-NEXT: SymbolAlignmentLog2: 0 231; CHECKSYM-NEXT: SymbolType: XTY_LD (0x2) 232; CHECKSYM-NEXT: StorageMappingClass: XMC_RW (0x5) 233; CHECKSYM32-NEXT: StabInfoIndex: 0x0 234; CHECKSYM32-NEXT: StabSectNum: 0x0 235; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 236; CHECKSYM-NEXT: } 237; CHECKSYM-NEXT: } 238; CHECKSYM-NEXT: Symbol { 239; CHECKSYM-NEXT: Index: [[#Index+12]] 240; CHECKSYM-NEXT: Name: b 241; CHECKSYM32-NEXT: Value (RelocatableAddress): 0x8C 242; CHECKSYM64-NEXT: Value (RelocatableAddress): 0x90 243; CHECKSYM-NEXT: Section: .data 244; CHECKSYM-NEXT: Type: 0x0 245; CHECKSYM-NEXT: StorageClass: C_WEAKEXT (0x6F) 246; CHECKSYM-NEXT: NumberOfAuxEntries: 1 247; CHECKSYM-NEXT: CSECT Auxiliary Entry { 248; CHECKSYM-NEXT: Index: [[#Index+13]] 249; CHECKSYM-NEXT: ContainingCsectSymbolIndex: [[#Index+8]] 250; CHECKSYM-NEXT: ParameterHashIndex: 0x0 251; CHECKSYM-NEXT: TypeChkSectNum: 0x0 252; CHECKSYM-NEXT: SymbolAlignmentLog2: 0 253; CHECKSYM-NEXT: SymbolType: XTY_LD (0x2) 254; CHECKSYM-NEXT: StorageMappingClass: XMC_RW (0x5) 255; CHECKSYM32-NEXT: StabInfoIndex: 0x0 256; CHECKSYM32-NEXT: StabSectNum: 0x0 257; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 258; CHECKSYM-NEXT: } 259; CHECKSYM-NEXT: } 260; CHECKSYM-NEXT: Symbol { 261; CHECKSYM-NEXT: Index: [[#Index+14]] 262; CHECKSYM-NEXT: Name: foo_weak 263; CHECKSYM32-NEXT: Value (RelocatableAddress): 0x90 264; CHECKSYM64-NEXT: Value (RelocatableAddress): 0x98 265; CHECKSYM-NEXT: Section: .data 266; CHECKSYM-NEXT: Type: 0x0 267; CHECKSYM-NEXT: StorageClass: C_WEAKEXT (0x6F) 268; CHECKSYM-NEXT: NumberOfAuxEntries: 1 269; CHECKSYM-NEXT: CSECT Auxiliary Entry { 270; CHECKSYM-NEXT: Index: [[#Index+15]] 271; CHECKSYM32-NEXT: SectionLen: 12 272; CHECKSYM64-NEXT: SectionLen: 24 273; CHECKSYM-NEXT: ParameterHashIndex: 0x0 274; CHECKSYM-NEXT: TypeChkSectNum: 0x0 275; CHECKSYM32-NEXT: SymbolAlignmentLog2: 2 276; CHECKSYM64-NEXT: SymbolAlignmentLog2: 3 277; CHECKSYM-NEXT: SymbolType: XTY_SD (0x1) 278; CHECKSYM-NEXT: StorageMappingClass: XMC_DS (0xA) 279; CHECKSYM32-NEXT: StabInfoIndex: 0x0 280; CHECKSYM32-NEXT: StabSectNum: 0x0 281; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 282; CHECKSYM-NEXT: } 283; CHECKSYM-NEXT: } 284; CHECKSYM-NEXT: Symbol { 285; CHECKSYM-NEXT: Index: [[#Index+16]] 286; CHECKSYM-NEXT: Name: foo_ref_weak 287; CHECKSYM32-NEXT: Value (RelocatableAddress): 0x9C 288; CHECKSYM64-NEXT: Value (RelocatableAddress): 0xB0 289; CHECKSYM-NEXT: Section: .data 290; CHECKSYM-NEXT: Type: 0x0 291; CHECKSYM-NEXT: StorageClass: C_WEAKEXT (0x6F) 292; CHECKSYM-NEXT: NumberOfAuxEntries: 1 293; CHECKSYM-NEXT: CSECT Auxiliary Entry { 294; CHECKSYM-NEXT: Index: [[#Index+17]] 295; CHECKSYM32-NEXT: SectionLen: 12 296; CHECKSYM64-NEXT: SectionLen: 24 297; CHECKSYM-NEXT: ParameterHashIndex: 0x0 298; CHECKSYM-NEXT: TypeChkSectNum: 0x0 299; CHECKSYM32-NEXT: SymbolAlignmentLog2: 2 300; CHECKSYM64-NEXT: SymbolAlignmentLog2: 3 301; CHECKSYM-NEXT: SymbolType: XTY_SD (0x1) 302; CHECKSYM-NEXT: StorageMappingClass: XMC_DS (0xA) 303; CHECKSYM32-NEXT: StabInfoIndex: 0x0 304; CHECKSYM32-NEXT: StabSectNum: 0x0 305; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 306; CHECKSYM-NEXT: } 307; CHECKSYM-NEXT: } 308; CHECKSYM-NEXT: Symbol { 309; CHECKSYM-NEXT: Index: [[#Index+18]] 310; CHECKSYM-NEXT: Name: main 311; CHECKSYM32-NEXT: Value (RelocatableAddress): 0xA8 312; CHECKSYM64-NEXT: Value (RelocatableAddress): 0xC8 313; CHECKSYM-NEXT: Section: .data 314; CHECKSYM-NEXT: Type: 0x0 315; CHECKSYM-NEXT: StorageClass: C_EXT (0x2) 316; CHECKSYM-NEXT: NumberOfAuxEntries: 1 317; CHECKSYM-NEXT: CSECT Auxiliary Entry { 318; CHECKSYM-NEXT: Index: [[#Index+19]] 319; CHECKSYM32-NEXT: SectionLen: 12 320; CHECKSYM64-NEXT: SectionLen: 24 321; CHECKSYM-NEXT: ParameterHashIndex: 0x0 322; CHECKSYM-NEXT: TypeChkSectNum: 0x0 323; CHECKSYM32-NEXT: SymbolAlignmentLog2: 2 324; CHECKSYM64-NEXT: SymbolAlignmentLog2: 3 325; CHECKSYM-NEXT: SymbolType: XTY_SD (0x1) 326; CHECKSYM-NEXT: StorageMappingClass: XMC_DS (0xA) 327; CHECKSYM32-NEXT: StabInfoIndex: 0x0 328; CHECKSYM32-NEXT: StabSectNum: 0x0 329; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 330; CHECKSYM-NEXT: } 331; CHECKSYM-NEXT: } 332; CHECKSYM-NEXT: Symbol { 333; CHECKSYM-NEXT: Index: [[#Index+20]] 334; CHECKSYM-NEXT: Name: TOC 335; CHECKSYM32-NEXT: Value (RelocatableAddress): 0xB4 336; CHECKSYM64-NEXT: Value (RelocatableAddress): 0xE0 337; CHECKSYM-NEXT: Section: .data 338; CHECKSYM-NEXT: Type: 0x0 339; CHECKSYM-NEXT: StorageClass: C_HIDEXT (0x6B) 340; CHECKSYM-NEXT: NumberOfAuxEntries: 1 341; CHECKSYM-NEXT: CSECT Auxiliary Entry { 342; CHECKSYM-NEXT: Index: [[#Index+21]] 343; CHECKSYM-NEXT: SectionLen: 0 344; CHECKSYM-NEXT: ParameterHashIndex: 0x0 345; CHECKSYM-NEXT: TypeChkSectNum: 0x0 346; CHECKSYM-NEXT: SymbolAlignmentLog2: 2 347; CHECKSYM-NEXT: SymbolType: XTY_SD (0x1) 348; CHECKSYM-NEXT: StorageMappingClass: XMC_TC0 (0xF) 349; CHECKSYM32-NEXT: StabInfoIndex: 0x0 350; CHECKSYM32-NEXT: StabSectNum: 0x0 351; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 352; CHECKSYM-NEXT: } 353; CHECKSYM-NEXT: } 354; CHECKSYM-NEXT: Symbol { 355; CHECKSYM-NEXT: Index: [[#Index+22]] 356; CHECKSYM-NEXT: Name: foo_weak_p 357; CHECKSYM32-NEXT: Value (RelocatableAddress): 0xB4 358; CHECKSYM64-NEXT: Value (RelocatableAddress): 0xE0 359; CHECKSYM-NEXT: Section: .data 360; CHECKSYM-NEXT: Type: 0x0 361; CHECKSYM-NEXT: StorageClass: C_HIDEXT (0x6B) 362; CHECKSYM-NEXT: NumberOfAuxEntries: 1 363; CHECKSYM-NEXT: CSECT Auxiliary Entry { 364; CHECKSYM-NEXT: Index: [[#Index+23]] 365; CHECKSYM32-NEXT: SectionLen: 4 366; CHECKSYM64-NEXT: SectionLen: 8 367; CHECKSYM-NEXT: ParameterHashIndex: 0x0 368; CHECKSYM-NEXT: TypeChkSectNum: 0x0 369; CHECKSYM32-NEXT: SymbolAlignmentLog2: 2 370; CHECKSYM64-NEXT: SymbolAlignmentLog2: 3 371; CHECKSYM-NEXT: SymbolType: XTY_SD (0x1) 372; CHECKSYM-NEXT: StorageMappingClass: XMC_TC (0x3) 373; CHECKSYM32-NEXT: StabInfoIndex: 0x0 374; CHECKSYM32-NEXT: StabSectNum: 0x0 375; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 376; CHECKSYM-NEXT: } 377; CHECKSYM-NEXT: } 378; CHECKSYM-NEXT: Symbol { 379; CHECKSYM-NEXT: Index: [[#Index+24]] 380; CHECKSYM-NEXT: Name: b 381; CHECKSYM32-NEXT: Value (RelocatableAddress): 0xB8 382; CHECKSYM64-NEXT: Value (RelocatableAddress): 0xE8 383; CHECKSYM-NEXT: Section: .data 384; CHECKSYM-NEXT: Type: 0x0 385; CHECKSYM-NEXT: StorageClass: C_HIDEXT (0x6B) 386; CHECKSYM-NEXT: NumberOfAuxEntries: 1 387; CHECKSYM-NEXT: CSECT Auxiliary Entry { 388; CHECKSYM-NEXT: Index: [[#Index+25]] 389; CHECKSYM32-NEXT: SectionLen: 4 390; CHECKSYM64-NEXT: SectionLen: 8 391; CHECKSYM-NEXT: ParameterHashIndex: 0x0 392; CHECKSYM-NEXT: TypeChkSectNum: 0x0 393; CHECKSYM32-NEXT: SymbolAlignmentLog2: 2 394; CHECKSYM64-NEXT: SymbolAlignmentLog2: 3 395; CHECKSYM-NEXT: SymbolType: XTY_SD (0x1) 396; CHECKSYM-NEXT: StorageMappingClass: XMC_TC (0x3) 397; CHECKSYM32-NEXT: StabInfoIndex: 0x0 398; CHECKSYM32-NEXT: StabSectNum: 0x0 399; CHECKSYM64-NEXT: Auxiliary Type: AUX_CSECT (0xFB) 400; CHECKSYM-NEXT: } 401; CHECKSYM-NEXT: } 402; CHECKSYM-NEXT: ] 403