; This file is used by testlink1.ll, so it doesn't actually do anything itself | |
; | |
; RUN: true | |
%intlist = type { %intlist*, i32 } | |
%Ty1 = type { %Ty2* } | |
%Ty2 = type opaque | |
@GVTy1 = global %Ty1* null | |
@GVTy2 = external global %Ty2* | |
@MyVar = global i32 4 | |
@MyIntList = external global %intlist | |
@AConst = constant i32 1234 | |
;; Intern in both testlink[12].ll | |
@Intern1 = internal constant i32 52 | |
;; Intern in one but not in other | |
@Intern2 = constant i32 12345 | |
@MyIntListPtr = constant { %intlist* } { %intlist* @MyIntList } | |
@MyVarPtr = linkonce global { i32* } { i32* @MyVar } | |
@0 = constant i32 412 | |
; Provides definition of Struct1 and of S1GV. | |
%Struct1 = type { i32 } | |
@S1GV = global %Struct1* null | |
define i32 @foo(i32 %blah) { | |
store i32 %blah, i32* @MyVar | |
%idx = getelementptr %intlist* @MyIntList, i64 0, i32 1 | |
store i32 12, i32* %idx | |
%ack = load i32* @0 | |
%fzo = add i32 %ack, %blah | |
ret i32 %fzo | |
} | |
declare void @unimp(float, double) | |
define internal void @testintern() { | |
ret void | |
} | |
define void @Testintern() { | |
ret void | |
} | |
define internal void @testIntern() { | |
ret void | |
} | |