1; RUN: llvm-as < %s | llvm-dis > %t1.ll
2; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
3; RUN: diff %t1.ll %t2.ll
4
5@MyVar = external global i32            ; <i32*> [#uses=1]
6@MyIntList = external global { i32*, i32 }               ; <{ \2*, i32 }*> [#uses=1]
7external global i32             ; <i32*>:0 [#uses=0]
8@AConst = constant i32 123              ; <i32*> [#uses=0]
9@AString = constant [4 x i8] c"test"            ; <[4 x i8]*> [#uses=0]
10@ZeroInit = global { [100 x i32], [40 x float] } zeroinitializer                ; <{ [100 x i32], [40 x float] }*> [#uses=0]
11
12define i32 @foo(i32 %blah) {
13        store i32 5, i32* @MyVar
14        %idx = getelementptr { i32*, i32 }* @MyIntList, i64 0, i32 1             ; <i32*> [#uses=1]
15        store i32 12, i32* %idx
16        ret i32 %blah
17}
18
19hidden dllexport global i32 42
20dllexport global i32 42
21