1; RUN: llc -mtriple powerpc-ibm-aix-xcoff -mcpu=ppc -verify-machineinstrs < %s | FileCheck %s 2; RUN: llc -mtriple powerpc64-ibm-aix-xcoff -mcpu=ppc -verify-machineinstrs < %s | FileCheck %s 3 4@llvm.global_ctors = appending global [5 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 0, ptr @cf1, ptr null }, { i32, ptr, ptr } { i32 21, ptr @cf2, ptr null }, { i32, ptr, ptr } { i32 81, ptr @cf3, ptr null }, { i32, ptr, ptr } { i32 1125, ptr @cf4, ptr null }, { i32, ptr, ptr } { i32 64512, ptr @cf5, ptr null }] 5@llvm.global_dtors = appending global [5 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 20, ptr @df1, ptr null }, { i32, ptr, ptr } { i32 80, ptr @df2, ptr null }, { i32, ptr, ptr } { i32 1124, ptr @df3, ptr null }, { i32, ptr, ptr } { i32 64511, ptr @df4, ptr null }, { i32, ptr, ptr } { i32 65535, ptr @df5, ptr null }] 6 7define i32 @cf1(i32 %a) { 8 ret i32 %a 9} 10 11define void @cf2() { 12 ret void 13} 14 15define void @cf3() { 16 ret void 17} 18 19define void @cf4() { 20 ret void 21} 22 23define void @cf5() { 24 ret void 25} 26 27define i32 @df1(i32 %a) { 28 ret i32 %a 29} 30 31define void @df2() { 32 ret void 33} 34 35define void @df3() { 36 ret void 37} 38 39define void @df4() { 40 ret void 41} 42 43define void @df5() { 44 ret void 45} 46 47; CHECK: .globl cf1[DS] 48; CHECK: .globl .cf1 49; CHECK: .align 2 50; CHECK: .csect cf1[DS] 51; CHECK: __sinit00000000_clang_f6a1bc9396775a64c6249effda300afe_0: # @cf1 52; CHECK: .cf1: 53; CHECK: .__sinit00000000_clang_f6a1bc9396775a64c6249effda300afe_0: 54 55; CHECK: .globl cf2[DS] 56; CHECK: .globl .cf2 57; CHECK: .align 2 58; CHECK: .csect cf2[DS] 59; CHECK: __sinit00000024_clang_f6a1bc9396775a64c6249effda300afe_1: # @cf2 60; CHECK: .cf2: 61; CHECK: .__sinit00000024_clang_f6a1bc9396775a64c6249effda300afe_1: 62 63; CHECK: .globl cf3[DS] 64; CHECK: .globl .cf3 65; CHECK: .align 2 66; CHECK: .csect cf3[DS] 67; CHECK: __sinit000003ec_clang_f6a1bc9396775a64c6249effda300afe_2: # @cf3 68; CHECK: .cf3: 69; CHECK: .__sinit000003ec_clang_f6a1bc9396775a64c6249effda300afe_2: 70 71; CHECK: .globl cf4[DS] 72; CHECK: .globl .cf4 73; CHECK: .align 2 74; CHECK: .csect cf4[DS] 75; CHECK: __sinit00008c55_clang_f6a1bc9396775a64c6249effda300afe_3: # @cf4 76; CHECK: .cf4: 77; CHECK: .__sinit00008c55_clang_f6a1bc9396775a64c6249effda300afe_3: 78 79; CHECK: .globl cf5[DS] 80; CHECK: .globl .cf5 81; CHECK: .align 2 82; CHECK: .csect cf5[DS] 83; CHECK: __sinit7ffffc01_clang_f6a1bc9396775a64c6249effda300afe_4: # @cf5 84; CHECK: .cf5: 85; CHECK: .__sinit7ffffc01_clang_f6a1bc9396775a64c6249effda300afe_4: 86 87; CHECK: .globl df1[DS] 88; CHECK: .globl .df1 89; CHECK: .align 2 90; CHECK: .csect df1[DS] 91; CHECK: __sterm00000014_clang_f6a1bc9396775a64c6249effda300afe_0: # @df1 92; CHECK: .df1: 93; CHECK: .__sterm00000014_clang_f6a1bc9396775a64c6249effda300afe_0: 94 95; CHECK: .globl df2[DS] 96; CHECK: .globl .df2 97; CHECK: .align 2 98; CHECK: .csect df2[DS] 99; CHECK: __sterm000003d4_clang_f6a1bc9396775a64c6249effda300afe_1: # @df2 100; CHECK: .df2: 101; CHECK: .__sterm000003d4_clang_f6a1bc9396775a64c6249effda300afe_1: 102 103; CHECK: .globl df3[DS] 104; CHECK: .globl .df3 105; CHECK: .align 2 106; CHECK: .csect df3[DS] 107; CHECK: __sterm000007ff_clang_f6a1bc9396775a64c6249effda300afe_2: # @df3 108; CHECK: .df3: 109; CHECK: .__sterm000007ff_clang_f6a1bc9396775a64c6249effda300afe_2: 110 111; CHECK: .globl df4[DS] 112; CHECK: .globl .df4 113; CHECK: .align 2 114; CHECK: .csect df4[DS] 115; CHECK: __sterm7fff2211_clang_f6a1bc9396775a64c6249effda300afe_3: # @df4 116; CHECK: .df4: 117; CHECK: .__sterm7fff2211_clang_f6a1bc9396775a64c6249effda300afe_3: 118 119; CHECK: .globl df5[DS] 120; CHECK: .globl .df5 121; CHECK: .align 2 122; CHECK: .csect df5[DS] 123; CHECK: __sterm80000000_clang_f6a1bc9396775a64c6249effda300afe_4: # @df5 124; CHECK: .df5: 125; CHECK: .__sterm80000000_clang_f6a1bc9396775a64c6249effda300afe_4: 126 127; CHECK: .globl __sinit00000000_clang_f6a1bc9396775a64c6249effda300afe_0 128; CHECK: .globl .__sinit00000000_clang_f6a1bc9396775a64c6249effda300afe_0 129; CHECK: .globl __sinit00000024_clang_f6a1bc9396775a64c6249effda300afe_1 130; CHECK: .globl .__sinit00000024_clang_f6a1bc9396775a64c6249effda300afe_1 131; CHECK: .globl __sinit000003ec_clang_f6a1bc9396775a64c6249effda300afe_2 132; CHECK: .globl .__sinit000003ec_clang_f6a1bc9396775a64c6249effda300afe_2 133; CHECK: .globl __sinit00008c55_clang_f6a1bc9396775a64c6249effda300afe_3 134; CHECK: .globl .__sinit00008c55_clang_f6a1bc9396775a64c6249effda300afe_3 135; CHECK: .globl __sinit7ffffc01_clang_f6a1bc9396775a64c6249effda300afe_4 136; CHECK: .globl .__sinit7ffffc01_clang_f6a1bc9396775a64c6249effda300afe_4 137; CHECK: .globl __sterm00000014_clang_f6a1bc9396775a64c6249effda300afe_0 138; CHECK: .globl .__sterm00000014_clang_f6a1bc9396775a64c6249effda300afe_0 139; CHECK: .globl __sterm000003d4_clang_f6a1bc9396775a64c6249effda300afe_1 140; CHECK: .globl .__sterm000003d4_clang_f6a1bc9396775a64c6249effda300afe_1 141; CHECK: .globl __sterm000007ff_clang_f6a1bc9396775a64c6249effda300afe_2 142; CHECK: .globl .__sterm000007ff_clang_f6a1bc9396775a64c6249effda300afe_2 143; CHECK: .globl __sterm7fff2211_clang_f6a1bc9396775a64c6249effda300afe_3 144; CHECK: .globl .__sterm7fff2211_clang_f6a1bc9396775a64c6249effda300afe_3 145; CHECK: .globl __sterm80000000_clang_f6a1bc9396775a64c6249effda300afe_4 146; CHECK: .globl .__sterm80000000_clang_f6a1bc9396775a64c6249effda300afe_4 147