1 ; This file is used by testlink1.ll, so it doesn't actually do anything itself 2 ; 3 ; RUN: true 4 5 %intlist = type { %intlist*, i32 } 6 7 8 %Ty1 = type { %Ty2* } 9 %Ty2 = type opaque 10 11 %VecSize = type { <10 x i32> } 12 13 @GVTy1 = global %Ty1* null 14 @GVTy2 = external global %Ty2* 15 16 17 @MyVar = global i32 4 18 @MyIntList = external global %intlist 19 @AConst = constant i32 1234 20 21 ;; Intern in both testlink[12].ll 22 @Intern1 = internal constant i32 52 23 24 ;; Intern in one but not in other 25 @Intern2 = constant i32 12345 26 27 @MyIntListPtr = constant { %intlist* } { %intlist* @MyIntList } 28 @MyVarPtr = linkonce global { i32* } { i32* @MyVar } 29 @0 = constant i32 412 30 31 ; Provides definition of Struct1 and of S1GV. 32 %Struct1 = type { i32 } 33 @S1GV = global %Struct1* null 34 35 define i32 @foo(i32 %blah) { 36 store i32 %blah, i32* @MyVar 37 %idx = getelementptr %intlist* @MyIntList, i64 0, i32 1 38 store i32 12, i32* %idx 39 %ack = load i32* @0 40 %fzo = add i32 %ack, %blah 41 ret i32 %fzo 42 } 43 44 declare void @unimp(float, double) 45 46 define internal void @testintern() { 47 ret void 48 } 49 50 define void @Testintern() { 51 ret void 52 } 53 54 define internal void @testIntern() { 55 ret void 56 } 57 58 declare void @VecSizeCrash1(%VecSize) 59