Rewrite test/ExecutionEngine tests to use FileCheck instead of grep
[oota-llvm.git] / test / Transforms / GlobalOpt / heap-sra-phi.ll
index 2eba944cfda2567c688d01475e6f5a34c9741f46..123ad851f717f5c5bcd199731b75f2845f70e408 100644 (file)
@@ -1,19 +1,21 @@
-; RUN: opt < %s -globalopt -S | grep {tmp.f1 = phi i32. }
-; RUN: opt < %s -globalopt -S | grep {tmp.f0 = phi i32. }
+; RUN: opt < %s -globalopt -S | grep "tmp.f1 = phi i32. "
+; RUN: opt < %s -globalopt -S | grep "tmp.f0 = phi i32. "
+target datalayout = "E-p:64:64:64-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128"
 
-target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
-target triple = "i386-apple-darwin7"
        %struct.foo = type { i32, i32 }
 @X = internal global %struct.foo* null         ; <%struct.foo**> [#uses=2]
 
 define void @bar(i32 %Size) nounwind noinline {
 entry:
-       %tmp = malloc [1000000 x %struct.foo]           ; <[1000000 x %struct.foo]*> [#uses=1]
+       %malloccall = tail call i8* @malloc(i64 8000000) ; <i8*> [#uses=1]
+       %tmp = bitcast i8* %malloccall to [1000000 x %struct.foo]* ; <[1000000 x %struct.foo]*> [#uses=1]
        %.sub = getelementptr [1000000 x %struct.foo]* %tmp, i32 0, i32 0               ; <%struct.foo*> [#uses=1]
        store %struct.foo* %.sub, %struct.foo** @X, align 4
        ret void
 }
 
+declare noalias i8* @malloc(i64)
+
 define i32 @baz() nounwind readonly noinline {
 bb1.thread:
        %tmpLD1 = load %struct.foo** @X, align 4                ; <%struct.foo*> [#uses=1]