X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FCodeGen%2FX86%2Flicm-nested.ll;h=42e6d12ec1e0104a54b45741f65c8504b5af92b1;hb=283573e08181967e792eb22e45c73046724004ae;hp=c3f991d7a9b03e5b725aba8a4493c47f613f9840;hpb=b75e5d96dd2a883b727abd8e966f93b09a01b30e;p=oota-llvm.git diff --git a/test/CodeGen/X86/licm-nested.ll b/test/CodeGen/X86/licm-nested.ll index c3f991d7a9b..42e6d12ec1e 100644 --- a/test/CodeGen/X86/licm-nested.ll +++ b/test/CodeGen/X86/licm-nested.ll @@ -1,4 +1,5 @@ -; RUN: llc -mtriple=x86_64-apple-darwin -march=x86-64 < %s -o /dev/null -stats -info-output-file - | grep "hoisted out of loops" | grep 3 +; REQUIRES: asserts +; RUN: llc -mtriple=x86_64-apple-darwin -march=x86-64 < %s -o /dev/null -stats -info-output-file - | grep "hoisted out of loops" | grep 4 ; MachineLICM should be able to hoist the symbolic addresses out of ; the inner loops. @@ -12,8 +13,8 @@ entry: br i1 %cmp, label %while.cond.preheader, label %bb.nph53 while.cond.preheader: ; preds = %entry - %arrayidx = getelementptr inbounds i8** %argv, i64 1 ; [#uses=1] - %tmp2 = load i8** %arrayidx ; [#uses=1] + %arrayidx = getelementptr inbounds i8*, i8** %argv, i64 1 ; [#uses=1] + %tmp2 = load i8*, i8** %arrayidx ; [#uses=1] %call = tail call i32 @atoi(i8* %tmp2) nounwind ; [#uses=2] %tobool51 = icmp eq i32 %call, 0 ; [#uses=1] br i1 %tobool51, label %while.end, label %bb.nph53 @@ -34,7 +35,7 @@ bb.nph: ; preds = %while.cond.loopexit for.body: ; preds = %for.body, %bb.nph %indvar = phi i64 [ 0, %bb.nph ], [ %indvar.next, %for.body ] ; [#uses=2] %tmp = add i64 %indvar, 2 ; [#uses=1] - %arrayidx10 = getelementptr [8193 x i8]* @main.flags, i64 0, i64 %tmp ; [#uses=1] + %arrayidx10 = getelementptr [8193 x i8], [8193 x i8]* @main.flags, i64 0, i64 %tmp ; [#uses=1] store i8 1, i8* %arrayidx10 %indvar.next = add i64 %indvar, 1 ; [#uses=2] %exitcond = icmp eq i64 %indvar.next, 8191 ; [#uses=1] @@ -48,8 +49,8 @@ for.body15: ; preds = %for.body, %for.inc3 %tmp71 = add i64 %tmp70, 6 ; [#uses=1] %tmp73 = shl i64 %indvar57, 1 ; [#uses=1] %add = add i64 %tmp73, 4 ; [#uses=2] - %arrayidx17 = getelementptr [8193 x i8]* @main.flags, i64 0, i64 %tmp68 ; [#uses=1] - %tmp18 = load i8* %arrayidx17 ; [#uses=1] + %arrayidx17 = getelementptr [8193 x i8], [8193 x i8]* @main.flags, i64 0, i64 %tmp68 ; [#uses=1] + %tmp18 = load i8, i8* %arrayidx17 ; [#uses=1] %tobool19 = icmp eq i8 %tmp18, 0 ; [#uses=1] br i1 %tobool19, label %for.inc35, label %if.then @@ -61,7 +62,7 @@ for.body25: ; preds = %if.then, %for.body2 %indvar55 = phi i64 [ %indvar.next56, %for.body25 ], [ 0, %if.then ] ; [#uses=2] %tmp60 = mul i64 %tmp68, %indvar55 ; [#uses=2] %tmp75 = add i64 %add, %tmp60 ; [#uses=1] - %arrayidx27 = getelementptr [8193 x i8]* @main.flags, i64 0, i64 %tmp75 ; [#uses=1] + %arrayidx27 = getelementptr [8193 x i8], [8193 x i8]* @main.flags, i64 0, i64 %tmp75 ; [#uses=1] store i8 0, i8* %arrayidx27 %add31 = add i64 %tmp71, %tmp60 ; [#uses=1] %cmp24 = icmp slt i64 %add31, 8193 ; [#uses=1] @@ -80,7 +81,7 @@ for.inc35: ; preds = %for.body15, %for.en while.end: ; preds = %while.cond.loopexit, %while.cond.preheader %count.0.lcssa = phi i32 [ 0, %while.cond.preheader ], [ %count.1, %while.cond.loopexit ] ; [#uses=1] - %call40 = tail call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([11 x i8]* @.str, i64 0, i64 0), i32 %count.0.lcssa) nounwind ; [#uses=0] + %call40 = tail call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str, i64 0, i64 0), i32 %count.0.lcssa) nounwind ; [#uses=0] ret i32 0 }