Merge branch 'master' into msp430
[llvm/msp430.git] / test / Linker / testlink2.ll
blobd243e3c7d1a30e1931f0ef8561ac95c0e34c9c31
1 ; This file is used by testlink1.ll, so it doesn't actually do anything itself
3 ; RUN: true
5 @MyVar = global i32 4           ; <i32*> [#uses=2]
6 @MyIntList = external global { \2*, i32 }               ; <{ \2*, i32 }*> [#uses=2]
7 @AConst = constant i32 123              ; <i32*> [#uses=0]
9 ;; Intern in both testlink[12].ll
10 @Intern1 = internal constant i32 52             ; <i32*> [#uses=0]
12 ;; Intern in one but not in other
13 @Intern2 = constant i32 12345           ; <i32*> [#uses=0]
15 @MyIntListPtr = constant { { \2*, i32 }* } { { \2*, i32 }* @MyIntList }         ; <{ { \2*, i32 }* }*> [#uses=0]
16 @MyVarPtr = linkonce global { i32* } { i32* @MyVar }            ; <{ i32* }*> [#uses=0]
17 constant i32 412                ; <i32*>:0 [#uses=1]
19 define i32 @foo(i32 %blah) {
20         store i32 %blah, i32* @MyVar
21         %idx = getelementptr { \2*, i32 }* @MyIntList, i64 0, i32 1             ; <i32*> [#uses=1]
22         store i32 12, i32* %idx
23         %ack = load i32* @0             ; <i32> [#uses=1]
24         %fzo = add i32 %ack, %blah              ; <i32> [#uses=1]
25         ret i32 %fzo
28 declare void @unimp(float, double)
30 define internal void @testintern() {
31         ret void
34 define void @Testintern() {
35         ret void
38 define internal void @testIntern() {
39         ret void