IR: Don't constant fold GEP bitcasts between different address spaces
[oota-llvm.git] / test / Other / 2004-08-16-PackedSelect.ll
index 5bbf20caa5f19f6d0459eee955b1cef977843d71..c1d6214dc63d48ce923f0318902d7c3d3501e44c 100644 (file)
@@ -1,15 +1,13 @@
-; RUN: llvm-upgrade < %s | llvm-as | llvm-dis
+; RUN: llvm-as < %s | llvm-dis
 
-%foo = uninitialized global <4 x float>;
-%bar = uninitialized global <4 x float>;
+@foo = external global <4 x float>              ; <<4 x float>*> [#uses=1]
+@bar = external global <4 x float>              ; <<4 x float>*> [#uses=1]
 
-implementation   ; Functions:
+define void @main() {
+        %t0 = load <4 x float>* @foo            ; <<4 x float>> [#uses=3]
+        %t1 = fadd <4 x float> %t0, %t0          ; <<4 x float>> [#uses=1]
+        %t2 = select i1 true, <4 x float> %t0, <4 x float> %t1          ; <<4 x float>> [#uses=1]
+        store <4 x float> %t2, <4 x float>* @bar
+        ret void
+}
 
-void %main()
-{
-       %t0 = load <4 x float>* %foo
-       %t1 = add <4 x float> %t0, %t0
-        %t2 = select bool true, <4 x float> %t0, <4 x float> %t1
-       store <4 x float> %t2, <4 x float>* %bar  
-       ret void
-}
\ No newline at end of file