[llvm-commits] [llvm] r139037 - in /llvm/trunk/test/Transforms/LoopUnroll: 2011-08-08-PhiUpdate.ll 2011-08-09-IVSimplify.ll

Andrew Trick atrick at apple.com
Fri Sep 2 14:21:04 PDT 2011


Author: atrick
Date: Fri Sep  2 16:21:03 2011
New Revision: 139037

URL: http://llvm.org/viewvc/llvm-project?rev=139037&view=rev
Log:
Test case update for unroll-scev.

Modified:
    llvm/trunk/test/Transforms/LoopUnroll/2011-08-08-PhiUpdate.ll
    llvm/trunk/test/Transforms/LoopUnroll/2011-08-09-IVSimplify.ll

Modified: llvm/trunk/test/Transforms/LoopUnroll/2011-08-08-PhiUpdate.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopUnroll/2011-08-08-PhiUpdate.ll?rev=139037&r1=139036&r2=139037&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/LoopUnroll/2011-08-08-PhiUpdate.ll (original)
+++ llvm/trunk/test/Transforms/LoopUnroll/2011-08-08-PhiUpdate.ll Fri Sep  2 16:21:03 2011
@@ -1,4 +1,4 @@
-; RUN: opt < %s -loop-unroll -S -unroll-count=4 -disable-unroll-scev | FileCheck %s
+; RUN: opt < %s -loop-unroll -S -unroll-count=4 | FileCheck %s
 ; Test phi update after partial unroll.
 
 declare i1 @check() nounwind
@@ -73,13 +73,15 @@
 ; CHECK: exit.3:
 define i32 @test3() nounwind uwtable ssp align 2 {
 entry:
-  br i1 undef, label %return, label %if.end
+  %cond1 = call zeroext i1 @check()
+  br i1 %cond1, label %return, label %if.end
 
 if.end:                                           ; preds = %entry
   br label %do.body
 
 do.body:                                          ; preds = %do.cond, %if.end
-  br i1 undef, label %exit, label %do.cond
+  %cond2 = call zeroext i1 @check()
+  br i1 %cond2, label %exit, label %do.cond
 
 exit:                  ; preds = %do.body
   %tmp7.i = load i32* undef, align 8
@@ -89,7 +91,8 @@
   br i1 undef, label %return, label %do.cond
 
 do.cond:                                          ; preds = %land.lhs.true, %exit, %do.body
-  br i1 undef, label %do.end, label %do.body
+  %cond3 = call zeroext i1 @check()
+  br i1 %cond3, label %do.end, label %do.body
 
 do.end:                                           ; preds = %do.cond
   br label %return

Modified: llvm/trunk/test/Transforms/LoopUnroll/2011-08-09-IVSimplify.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopUnroll/2011-08-09-IVSimplify.ll?rev=139037&r1=139036&r2=139037&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/LoopUnroll/2011-08-09-IVSimplify.ll (original)
+++ llvm/trunk/test/Transforms/LoopUnroll/2011-08-09-IVSimplify.ll Fri Sep  2 16:21:03 2011
@@ -1,18 +1,20 @@
-; RUN: opt -S < %s -loop-unroll -unroll-count=4 -disable-iv-rewrite -disable-unroll-scev | FileCheck %s
+; RUN: opt -S < %s -loop-unroll -unroll-count=4 -disable-iv-rewrite | FileCheck %s
 ;
 ; Test induction variable simplify after loop unrolling. It should
 ; expose nice opportunities for GVN.
+;
+; CHECK-NOT: while.body also ensures that loop unrolling (with SCEV)
+; removes unrolled loop exits given that 128 is a multiple of 4.
 
 target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f80:128:128-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32"
 
 ; PR10534: LoopUnroll not keeping canonical induction variable...
-; CHECK: while.body.1:
+; CHECK: while.body:
+; CHECK-NOT: while.body.1:
 ; CHECK: %shr.1 = lshr i32 %bit_addr.addr.01, 5
 ; CHECK: %arrayidx.1 = getelementptr inbounds i32* %bitmap, i32 %shr.1
-; CHECK: while.body.2:
 ; CHECK: %shr.2 = lshr i32 %bit_addr.addr.01, 5
 ; CHECK: %arrayidx.2 = getelementptr inbounds i32* %bitmap, i32 %shr.2
-; CHECK: while.body.3:
 ; CHECK: %shr.3 = lshr i32 %bit_addr.addr.01, 5
 ; CHECK: %arrayidx.3 = getelementptr inbounds i32* %bitmap, i32 %shr.3
 define void @FlipBit(i32* nocapture %bitmap, i32 %bit_addr, i32 %nbits) nounwind {





More information about the llvm-commits mailing list