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