Vectors with different number of elements of the same element type can have
[oota-llvm.git] / test / Transforms / ScalarRepl / 2003-05-29-ArrayFail.ll
index fb6b1dad4ef7c6ddc74c8e312de639bbc46fe1d9..7116199d021f1d168c55419b4be0ccc3ea4e4eb2 100644 (file)
@@ -1,11 +1,13 @@
-; RUN: llvm-upgrade < %s | llvm-as | opt -scalarrepl | llvm-dis | grep alloca | grep '4 x'
+; RUN: opt < %s -scalarrepl -instcombine -S | not grep alloca
+target datalayout = "E-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64"
 
-; Test that an array is not incorrectly deconstructed...
+; Test that an array is not incorrectly deconstructed.
 
-int %test() {
-  %X = alloca [4 x int]
-  %Y = getelementptr [4 x int]* %X, long 0, long 0
-  %Z = getelementptr int* %Y, long 1           ; Must preserve arrayness!
-  %A = load int* %Z
-  ret int %A
+define i32 @test() nounwind {
+       %X = alloca [4 x i32]           ; <[4 x i32]*> [#uses=1]
+       %Y = getelementptr [4 x i32]* %X, i64 0, i64 0          ; <i32*> [#uses=1]
+        ; Must preserve arrayness!
+       %Z = getelementptr i32* %Y, i64 1               ; <i32*> [#uses=1]
+       %A = load i32* %Z               ; <i32> [#uses=1]
+       ret i32 %A
 }