diff options
Diffstat (limited to 'test/Linker')
-rw-r--r-- | test/Linker/2003-11-18-TypeResolution.ll | 15 | ||||
-rw-r--r-- | test/Linker/2004-02-17-WeakStrongLinkage.ll | 6 | ||||
-rw-r--r-- | test/Linker/2004-05-07-TypeResolution1.ll | 68 | ||||
-rw-r--r-- | test/Linker/2004-05-07-TypeResolution2.ll | 22 | ||||
-rw-r--r-- | test/Linker/2005-02-12-ConstantGlobals.ll | 4 | ||||
-rw-r--r-- | test/Linker/2005-12-06-AppendingZeroLengthArrays.ll | 5 | ||||
-rw-r--r-- | test/Linker/2006-01-19-ConstantPacked.ll | 14 | ||||
-rw-r--r-- | test/Linker/AppendingLinkage.ll | 18 | ||||
-rw-r--r-- | test/Linker/AppendingLinkage2.ll | 8 | ||||
-rw-r--r-- | test/Linker/ConstantGlobals1.ll | 9 | ||||
-rw-r--r-- | test/Linker/ConstantGlobals2.ll | 9 | ||||
-rw-r--r-- | test/Linker/ConstantGlobals3.ll | 8 | ||||
-rw-r--r-- | test/Linker/LinkOnce.ll | 6 | ||||
-rw-r--r-- | test/Linker/testlink1.ll | 78 | ||||
-rw-r--r-- | test/Linker/testlink2.ll | 67 | ||||
-rw-r--r-- | test/Linker/weakextern.ll | 11 |
16 files changed, 162 insertions, 186 deletions
diff --git a/test/Linker/2003-11-18-TypeResolution.ll b/test/Linker/2003-11-18-TypeResolution.ll index ff22e31..d3152ed 100644 --- a/test/Linker/2003-11-18-TypeResolution.ll +++ b/test/Linker/2003-11-18-TypeResolution.ll @@ -4,19 +4,16 @@ ; little symbol table. This is causing llvm-link to die, at no fault of its ; own. -; RUN: llvm-upgrade %s | llvm-as > %t.out2.bc +; RUN: llvm-as < %s > %t.out2.bc ; RUN: echo "%T1 = type opaque @GVar = external global %T1*" | llvm-as > %t.out1.bc ; RUN: llvm-link %t.out1.bc %t.out2.bc - %T1 = type opaque - %T2 = type int +%T1 = type opaque +%T2 = type i32 +@GVar = global i32* null ; <i32**> [#uses=0] -%GVar = global %T2 * null - -implementation - -void %foo(%T2 * %X) { - %X = cast %T2* %X to %T1 * +define void @foo(i32* %X) { + %X.upgrd.1 = bitcast i32* %X to %T1* ; <%T1*> [#uses=0] ret void } diff --git a/test/Linker/2004-02-17-WeakStrongLinkage.ll b/test/Linker/2004-02-17-WeakStrongLinkage.ll index 4c6e8f8..0e970dd 100644 --- a/test/Linker/2004-02-17-WeakStrongLinkage.ll +++ b/test/Linker/2004-02-17-WeakStrongLinkage.ll @@ -1,7 +1,7 @@ -; RUN: llvm-upgrade < %s | llvm-as > %t.out2.bc -; RUN: echo "%me = global int* null" | llvm-upgrade | llvm-as > %t.out1.bc +; RUN: llvm-as < %s > %t.out2.bc +; RUN: echo "@me = global i32* null" | llvm-as > %t.out1.bc ; RUN: llvm-link %t.out1.bc %t.out2.bc -o /dev/null -f -%me = weak global int * null +@me = weak global i32* null ; <i32**> [#uses=0] diff --git a/test/Linker/2004-05-07-TypeResolution1.ll b/test/Linker/2004-05-07-TypeResolution1.ll index 1c90079..970a6d2 100644 --- a/test/Linker/2004-05-07-TypeResolution1.ll +++ b/test/Linker/2004-05-07-TypeResolution1.ll @@ -1,45 +1,35 @@ -; RUN: llvm-upgrade < %s | llvm-as -f -o %t1.bc -; RUN: llvm-upgrade < %p/2004-05-07-TypeResolution2.ll | \ -; RUN: llvm-as -o %t2.bc -f +; RUN: llvm-as < %s -f -o %t1.bc +; RUN: llvm-as < %p/2004-05-07-TypeResolution2.ll -o %t2.bc -f ; RUN: llvm-link -f -o %t3.bc %t1.bc %t2.bc -target endian = little -target pointersize = 32 - - %myint = type opaque +target datalayout = "e-p:32:32" + %myint = type opaque + %struct1 = type { i32, void (%struct2*)*, %myint*, i32 (i32*)* } %struct2 = type { %struct1 } - - %struct1 = type { int, void (%struct2*)*, %myint *, int (uint *)* } - - -%driver1 = global %struct1 zeroinitializer ; <%struct1*> [#uses=1] - -%m1 = external global [1 x sbyte] * ; <%struct.task_struct**> [#uses=0] -;%m1 = external global uint ; <%struct.task_struct**> [#uses=0] -%str1 = constant [1 x ubyte] zeroinitializer -%str2 = constant [2 x ubyte] zeroinitializer -%str3 = constant [3 x ubyte] zeroinitializer -%str4 = constant [4 x ubyte] zeroinitializer -%str5 = constant [5 x ubyte] zeroinitializer -%str6 = constant [6 x ubyte] zeroinitializer -%str7 = constant [7 x ubyte] zeroinitializer -%str8 = constant [8 x ubyte] zeroinitializer -%str9 = constant [9 x ubyte] zeroinitializer -%stra = constant [10 x ubyte] zeroinitializer -%strb = constant [11 x ubyte] zeroinitializer -%strc = constant [12 x ubyte] zeroinitializer -%strd = constant [13 x ubyte] zeroinitializer -%stre = constant [14 x ubyte] zeroinitializer -%strf = constant [15 x ubyte] zeroinitializer -%strg = constant [16 x ubyte] zeroinitializer -%strh = constant [17 x ubyte] zeroinitializer - -implementation ; Functions: - -declare void %func(%struct2*) - -void %tty_init() { +@driver1 = global %struct1 zeroinitializer ; <%struct1*> [#uses=1] +@m1 = external global [1 x i8]* ; <[1 x i8]**> [#uses=0] +@str1 = constant [1 x i8] zeroinitializer ; <[1 x i8]*> [#uses=0] +@str2 = constant [2 x i8] zeroinitializer ; <[2 x i8]*> [#uses=0] +@str3 = constant [3 x i8] zeroinitializer ; <[3 x i8]*> [#uses=0] +@str4 = constant [4 x i8] zeroinitializer ; <[4 x i8]*> [#uses=0] +@str5 = constant [5 x i8] zeroinitializer ; <[5 x i8]*> [#uses=0] +@str6 = constant [6 x i8] zeroinitializer ; <[6 x i8]*> [#uses=0] +@str7 = constant [7 x i8] zeroinitializer ; <[7 x i8]*> [#uses=0] +@str8 = constant [8 x i8] zeroinitializer ; <[8 x i8]*> [#uses=0] +@str9 = constant [9 x i8] zeroinitializer ; <[9 x i8]*> [#uses=0] +@stra = constant [10 x i8] zeroinitializer ; <[10 x i8]*> [#uses=0] +@strb = constant [11 x i8] zeroinitializer ; <[11 x i8]*> [#uses=0] +@strc = constant [12 x i8] zeroinitializer ; <[12 x i8]*> [#uses=0] +@strd = constant [13 x i8] zeroinitializer ; <[13 x i8]*> [#uses=0] +@stre = constant [14 x i8] zeroinitializer ; <[14 x i8]*> [#uses=0] +@strf = constant [15 x i8] zeroinitializer ; <[15 x i8]*> [#uses=0] +@strg = constant [16 x i8] zeroinitializer ; <[16 x i8]*> [#uses=0] +@strh = constant [17 x i8] zeroinitializer ; <[17 x i8]*> [#uses=0] + +declare void @func(%struct2*) + +define void @tty_init() { entry: - volatile store void (%struct2*)* %func, void (%struct2 *)** getelementptr (%struct1* %driver1, uint 0, uint 1) + volatile store void (%struct2*)* @func, void (%struct2*)** getelementptr (%struct1* @driver1, i64 0, i32 1) ret void } diff --git a/test/Linker/2004-05-07-TypeResolution2.ll b/test/Linker/2004-05-07-TypeResolution2.ll index 05be611..74fe39f 100644 --- a/test/Linker/2004-05-07-TypeResolution2.ll +++ b/test/Linker/2004-05-07-TypeResolution2.ll @@ -1,25 +1,15 @@ ; This file is used by testlink1.ll, so it doesn't actually do anything itself ; ; RUN: echo - -target endian = little -target pointersize = 32 - - %myint = type ushort +target datalayout = "e-p:32:32" + %myint = type i16 + %struct1 = type { i32, void (%struct2*)*, i16*, i32 (i32*)* } %struct2 = type { %struct1 } - %struct1 = type { int, void (%struct2*)*, %myint *, int (uint *)* } - -implementation ; Functions: -internal void %f1 (%struct1* %tty) { +define internal void @f1(%struct1* %tty) { loopentry.preheader: - - ; <void (%struct2*, ubyte)**> [#uses=1] - ; <void (%struct2*, ubyte)*> [#uses=0] - - %tmp.2.i.i = getelementptr %struct1* %tty, uint 0, uint 1 - %tmp.3.i.i = volatile load void (%struct2*)** %tmp.2.i.i - + %tmp.2.i.i = getelementptr %struct1* %tty, i64 0, i32 1 ; <void (%struct2*)**> [#uses=1] + %tmp.3.i.i = volatile load void (%struct2*)** %tmp.2.i.i ; <void (%struct2*)*> [#uses=0] ret void } diff --git a/test/Linker/2005-02-12-ConstantGlobals.ll b/test/Linker/2005-02-12-ConstantGlobals.ll index fbc0bc1..4077372 100644 --- a/test/Linker/2005-02-12-ConstantGlobals.ll +++ b/test/Linker/2005-02-12-ConstantGlobals.ll @@ -2,7 +2,7 @@ ; to be nonconst. ; RUN: echo {@X = global i32 7} | llvm-as > %t.2.bc -; RUN: llvm-upgrade < %s | llvm-as > %t.1.bc +; RUN: llvm-as < %s > %t.1.bc ; RUN: llvm-link %t.1.bc %t.2.bc | llvm-dis | grep {global i32 7} -@X = external constant i32 +@X = external constant i32 ; <i32*> [#uses=0] diff --git a/test/Linker/2005-12-06-AppendingZeroLengthArrays.ll b/test/Linker/2005-12-06-AppendingZeroLengthArrays.ll index 3e57bec..2637da1 100644 --- a/test/Linker/2005-12-06-AppendingZeroLengthArrays.ll +++ b/test/Linker/2005-12-06-AppendingZeroLengthArrays.ll @@ -1,9 +1,10 @@ ; RUN: echo { @G = appending global \[0 x i32\] zeroinitializer } | \ ; RUN: llvm-as > %t.out2.bc -; RUN: llvm-upgrade < %s | llvm-as > %t.out1.bc +; RUN: llvm-as < %s > %t.out1.bc ; RUN: llvm-link %t.out1.bc %t.out2.bc | llvm-dis | grep {@G =} ; When linked, the globals should be merged, and the result should still ; be named '@G'. -%G = appending global [1 x int] zeroinitializer +@G = appending global [1 x i32] zeroinitializer ; <[1 x i32]*> [#uses=0] + diff --git a/test/Linker/2006-01-19-ConstantPacked.ll b/test/Linker/2006-01-19-ConstantPacked.ll index 7b405f3..1cb4749 100644 --- a/test/Linker/2006-01-19-ConstantPacked.ll +++ b/test/Linker/2006-01-19-ConstantPacked.ll @@ -1,15 +1,13 @@ -; RUN: llvm-upgrade < %s | llvm-as -f -o %t1.bc +; RUN: llvm-as < %s -f -o %t1.bc ; RUN: llvm-link -f -o %t2.bc %t1.bc -target endian = big -target pointersize = 32 +target datalayout = "E-p:32:32" target triple = "powerpc-apple-darwin7.7.0" deplibs = [ "c", "crtend" ] -%source = global <4 x int> < int 0, int 1, int 2, int 3 > +@source = global <4 x i32> < i32 0, i32 1, i32 2, i32 3 > ; <<4 x i32>*> [#uses=0] -implementation ; Functions: - -int %main() { +define i32 @main() { entry: - ret int 0 + ret i32 0 } + diff --git a/test/Linker/AppendingLinkage.ll b/test/Linker/AppendingLinkage.ll index d59a374..da08ca0 100644 --- a/test/Linker/AppendingLinkage.ll +++ b/test/Linker/AppendingLinkage.ll @@ -1,15 +1,15 @@ ; Test that appending linkage works correctly. -; RUN: echo {%X = appending global \[1 x int\] \[int 8\] } | \ -; RUN: llvm-upgrade | llvm-as > %t.2.bc -; RUN: llvm-upgrade < %s | llvm-as > %t.1.bc +; RUN: echo {@X = appending global \[1 x i32\] \[i32 8\] } | \ +; RUN: llvm-as > %t.2.bc +; RUN: llvm-as < %s > %t.1.bc ; RUN: llvm-link %t.1.bc %t.2.bc | llvm-dis | grep 7 | grep 4 | grep 8 -%X = appending global [2 x int] [int 7, int 4] +@X = appending global [2 x i32] [ i32 7, i32 4 ] ; <[2 x i32]*> [#uses=2] +@Y = global i32* getelementptr ([2 x i32]* @X, i64 0, i64 0) ; <i32**> [#uses=0] -%Y = global int* getelementptr ([2 x int]* %X, long 0, long 0) - -void %foo(long %V) { - %Y = getelementptr [2 x int]* %X, long 0, long %V - ret void +define void @foo(i64 %V) { + %Y = getelementptr [2 x i32]* @X, i64 0, i64 %V ; <i32*> [#uses=0] + ret void } + diff --git a/test/Linker/AppendingLinkage2.ll b/test/Linker/AppendingLinkage2.ll index fc992e0..fddc494 100644 --- a/test/Linker/AppendingLinkage2.ll +++ b/test/Linker/AppendingLinkage2.ll @@ -1,8 +1,8 @@ ; Test that appending linkage works correctly when arrays are the same size. -; RUN: echo {%X = appending global \[1 x int\] \[int 8\] } | \ -; RUN: llvm-upgrade | llvm-as > %t.2.bc -; RUN: llvm-upgrade < %s | llvm-as > %t.1.bc +; RUN: echo {@X = appending global \[1 x i32\] \[i32 8\] } | \ +; RUN: llvm-as > %t.2.bc +; RUN: llvm-as < %s > %t.1.bc ; RUN: llvm-link %t.1.bc %t.2.bc | llvm-dis | grep 7 | grep 8 -%X = appending global [1 x int] [int 7] +@X = appending global [1 x i32] [ i32 7 ] ; <[1 x i32]*> [#uses=0] diff --git a/test/Linker/ConstantGlobals1.ll b/test/Linker/ConstantGlobals1.ll index a5a9ce9..5d42f4b 100644 --- a/test/Linker/ConstantGlobals1.ll +++ b/test/Linker/ConstantGlobals1.ll @@ -1,8 +1,9 @@ ; Test that appending linkage works correctly when arrays are the same size. -; RUN: echo {%X = constant \[1 x int\] \[int 8\] } | \ -; RUN: llvm-upgrade | llvm-as > %t.2.bc -; RUN: llvm-upgrade < %s | llvm-as > %t.1.bc +; RUN: echo {@X = constant \[1 x i32\] \[i32 8\] } | \ +; RUN: llvm-as > %t.2.bc +; RUN: llvm-as < %s > %t.1.bc ; RUN: llvm-link %t.1.bc %t.2.bc | llvm-dis | grep constant -%X = uninitialized global [1 x int] +@X = external global [1 x i32] ; <[1 x i32]*> [#uses=0] + diff --git a/test/Linker/ConstantGlobals2.ll b/test/Linker/ConstantGlobals2.ll index 612603d..9cd6bdb 100644 --- a/test/Linker/ConstantGlobals2.ll +++ b/test/Linker/ConstantGlobals2.ll @@ -1,8 +1,9 @@ ; Test that appending linkage works correctly when arrays are the same size. -; RUN: echo {%X = external global \[1 x int\] } | \ -; RUN: llvm-upgrade | llvm-as > %t.2.bc -; RUN: llvm-upgrade %s -o - | llvm-as > %t.1.bc +; RUN: echo {@X = external global \[1 x i32\] } | \ +; RUN: llvm-as > %t.2.bc +; RUN: llvm-as < %s > %t.1.bc ; RUN: llvm-link %t.1.bc %t.2.bc | llvm-dis | grep constant -%X = constant [1 x int] [ int 12 ] +@X = constant [1 x i32] [ i32 12 ] ; <[1 x i32]*> [#uses=0] + diff --git a/test/Linker/ConstantGlobals3.ll b/test/Linker/ConstantGlobals3.ll index 4435f2d..f9aa07d 100644 --- a/test/Linker/ConstantGlobals3.ll +++ b/test/Linker/ConstantGlobals3.ll @@ -1,8 +1,8 @@ ; Test that appending linkage works correctly when arrays are the same size. -; RUN: echo {%X = external constant \[1 x int\] } | \ -; RUN: llvm-upgrade | llvm-as > %t.2.bc -; RUN: llvm-upgrade %s | llvm-as > %t.1.bc +; RUN: echo {@X = external constant \[1 x i32\] } | \ +; RUN: llvm-as > %t.2.bc +; RUN: llvm-as < %s > %t.1.bc ; RUN: llvm-link %t.1.bc %t.2.bc | llvm-dis | grep constant -%X = uninitialized global [1 x int] +@X = external global [1 x i32] ; <[1 x i32]*> [#uses=0] diff --git a/test/Linker/LinkOnce.ll b/test/Linker/LinkOnce.ll index b1a0216..5befd77 100644 --- a/test/Linker/LinkOnce.ll +++ b/test/Linker/LinkOnce.ll @@ -1,8 +1,8 @@ ; This fails because the linker renames the non-opaque type not the opaque ; one... -; RUN: echo "%X = linkonce global int 8" | llvm-upgrade | llvm-as > %t.2.bc -; RUN: llvm-upgrade < %s | llvm-as > %t.1.bc +; RUN: echo "@X = linkonce global i32 8" | llvm-as > %t.2.bc +; RUN: llvm-as < %s > %t.1.bc ; RUN: llvm-link %t.1.bc %t.2.bc | llvm-dis -%X = linkonce global int 7 +@X = linkonce global i32 7 ; <i32*> [#uses=0] diff --git a/test/Linker/testlink1.ll b/test/Linker/testlink1.ll index df89d84..4a94025 100644 --- a/test/Linker/testlink1.ll +++ b/test/Linker/testlink1.ll @@ -1,48 +1,42 @@ -; RUN: llvm-upgrade < %s | llvm-as > %t.bc -; RUN: llvm-upgrade < %p/testlink2.ll | llvm-as > %t2.bc +; RUN: llvm-as < %s > %t.bc +; RUN: llvm-as < %p/testlink2.ll > %t2.bc ; RUN: llvm-link %t.bc %t2.bc -%MyVar = external global int -%MyIntList = global { \2 *, int } { { \2, int }* null, int 17 } - external global int ; int*:0 - -%Inte = global int 1 - -%AConst = linkonce constant int 123 - -%Intern1 = internal constant int 42 -%Intern2 = internal constant int 792 - -; Initialized to point to external %MyVar -%MyVarPtr = linkonce global { int * } { int * %MyVar } - -declare int "foo"(int %blah) ;; Declared in testlink2.ll - -declare void "print"(int %Value) - -implementation - -void "main"() -begin - %v1 = load int* %MyVar - call void %print(int %v1) ;; Should start out 4 - - %idx = getelementptr { \2 *, int }* %MyIntList, long 0, uint 1 - %v2 = load int* %idx - call void %print(int %v2) ;; Should start out 17 - - call int %foo(int 5) ;; Modify global variablesx - - %v3 = load int* %MyVar - call void %print(int %v3) ;; Should now be 5 - - %v4 = load int* %idx - call void %print(int %v4) ;; Should start out 12 +@MyVar = external global i32 ; <i32*> [#uses=3] +@MyIntList = global { \2*, i32 } { { \2*, i32 }* null, i32 17 } ; <{ \2*, i32 }*> [#uses=1] +external global i32 ; <i32*>:0 [#uses=0] +@Inte = global i32 1 ; <i32*> [#uses=0] +@AConst = linkonce constant i32 123 ; <i32*> [#uses=0] +@Intern1 = internal constant i32 42 ; <i32*> [#uses=0] +@Intern2 = internal constant i32 792 ; <i32*> [#uses=0] +@MyVarPtr = linkonce global { i32* } { i32* @MyVar } ; <{ i32* }*> [#uses=0] + +declare i32 @foo(i32) + +declare void @print(i32) + +define void @main() { + %v1 = load i32* @MyVar ; <i32> [#uses=1] + call void @print( i32 %v1 ) + %idx = getelementptr { \2*, i32 }* @MyIntList, i64 0, i32 1 ; <i32*> [#uses=2] + %v2 = load i32* %idx ; <i32> [#uses=1] + call void @print( i32 %v2 ) + call i32 @foo( i32 5 ) ; <i32>:1 [#uses=0] + %v3 = load i32* @MyVar ; <i32> [#uses=1] + call void @print( i32 %v3 ) + %v4 = load i32* %idx ; <i32> [#uses=1] + call void @print( i32 %v4 ) + ret void +} +define internal void @testintern() { ret void -end +} -internal void "testintern"() begin ret void end -internal void "Testintern"() begin ret void end - void "testIntern"() begin ret void end +define internal void @Testintern() { + ret void +} +define void @testIntern() { + ret void +} diff --git a/test/Linker/testlink2.ll b/test/Linker/testlink2.ll index 0f4468d..d243e3c 100644 --- a/test/Linker/testlink2.ll +++ b/test/Linker/testlink2.ll @@ -2,35 +2,40 @@ ; ; RUN: true -%MyVar = global int 4 -%MyIntList = external global { \2 *, int } - -%AConst = constant int 123 - -%Intern1 = internal constant int 52 ;; Intern in both testlink[12].ll -%Intern2 = constant int 12345 ;; Intern in one but not in other - -%MyIntListPtr = constant { {\2,int}* } { {\2,int}* %MyIntList } -%MyVarPtr = linkonce global { int * } { int * %MyVar } - -constant int 412 - -implementation - -int "foo"(int %blah) -begin - store int %blah, int *%MyVar - %idx = getelementptr { \2 *, int } * %MyIntList, long 0, uint 1 - store int 12, int* %idx - - %ack = load int * %0 ;; Load from the unnamed constant - %fzo = add int %ack, %blah - ret int %fzo -end - -declare void "unimp"(float, double) - -internal void "testintern"() begin ret void end - void "Testintern"() begin ret void end -internal void "testIntern"() begin ret void end +@MyVar = global i32 4 ; <i32*> [#uses=2] +@MyIntList = external global { \2*, i32 } ; <{ \2*, i32 }*> [#uses=2] +@AConst = constant i32 123 ; <i32*> [#uses=0] + +;; Intern in both testlink[12].ll +@Intern1 = internal constant i32 52 ; <i32*> [#uses=0] + +;; Intern in one but not in other +@Intern2 = constant i32 12345 ; <i32*> [#uses=0] + +@MyIntListPtr = constant { { \2*, i32 }* } { { \2*, i32 }* @MyIntList } ; <{ { \2*, i32 }* }*> [#uses=0] +@MyVarPtr = linkonce global { i32* } { i32* @MyVar } ; <{ i32* }*> [#uses=0] +constant i32 412 ; <i32*>:0 [#uses=1] + +define i32 @foo(i32 %blah) { + store i32 %blah, i32* @MyVar + %idx = getelementptr { \2*, i32 }* @MyIntList, i64 0, i32 1 ; <i32*> [#uses=1] + store i32 12, i32* %idx + %ack = load i32* @0 ; <i32> [#uses=1] + %fzo = add i32 %ack, %blah ; <i32> [#uses=1] + 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 +} diff --git a/test/Linker/weakextern.ll b/test/Linker/weakextern.ll index 60ca596..edb23bc 100644 --- a/test/Linker/weakextern.ll +++ b/test/Linker/weakextern.ll @@ -1,12 +1,11 @@ -; RUN: llvm-upgrade < %s | llvm-as > %t.bc -; RUN: llvm-upgrade < %p/testlink1.ll | llvm-as > %t2.bc +; RUN: llvm-as < %s > %t.bc +; RUN: llvm-as < %p/testlink1.ll > %t2.bc ; RUN: llvm-link %t.bc %t.bc %t2.bc -o %t1.bc -f ; RUN: llvm-dis < %t1.bc | grep {kallsyms_names = extern_weak} ; RUN: llvm-dis < %t1.bc | grep {MyVar = external global i32} ; RUN: llvm-dis < %t1.bc | grep {Inte = global i32} -%kallsyms_names = extern_weak global [0 x ubyte] -%MyVar = extern_weak global int -%Inte = extern_weak global int +@kallsyms_names = extern_weak global [0 x i8] ; <[0 x i8]*> [#uses=0] +@MyVar = extern_weak global i32 ; <i32*> [#uses=0] +@Inte = extern_weak global i32 ; <i32*> [#uses=0] -implementation |