diff options
| author | Reid Spencer <rspencer@reidspencer.com> | 2007-01-17 07:59:14 +0000 |
|---|---|---|
| committer | Reid Spencer <rspencer@reidspencer.com> | 2007-01-17 07:59:14 +0000 |
| commit | 83b3d8267225d585678d5d3af9bba5735f4b415d (patch) | |
| tree | 9d6c2ad7bfd568186e83a39e6f03e1c0bf415715 /llvm/test/Transforms/LoopUnroll | |
| parent | 100602d7561ca5e245db6194bddae86357d203d4 (diff) | |
| download | bcm5719-llvm-83b3d8267225d585678d5d3af9bba5735f4b415d.tar.gz bcm5719-llvm-83b3d8267225d585678d5d3af9bba5735f4b415d.zip | |
Regression is gone, don't try to find it on clean target.
llvm-svn: 33296
Diffstat (limited to 'llvm/test/Transforms/LoopUnroll')
5 files changed, 68 insertions, 0 deletions
diff --git a/llvm/test/Transforms/LoopUnroll/.cvsignore b/llvm/test/Transforms/LoopUnroll/.cvsignore new file mode 100644 index 00000000000..7f2443f2f31 --- /dev/null +++ b/llvm/test/Transforms/LoopUnroll/.cvsignore @@ -0,0 +1,3 @@ +Output +*.log +*.sum diff --git a/llvm/test/Transforms/LoopUnroll/2004-05-13-DontUnrollTooMuch.ll b/llvm/test/Transforms/LoopUnroll/2004-05-13-DontUnrollTooMuch.ll new file mode 100644 index 00000000000..8c3e697c89a --- /dev/null +++ b/llvm/test/Transforms/LoopUnroll/2004-05-13-DontUnrollTooMuch.ll @@ -0,0 +1,15 @@ +; RUN: llvm-upgrade < %s | llvm-as | opt -loop-unroll -disable-output + +int %main() { +entry: + br label %no_exit + +no_exit: ; preds = %entry, %no_exit + %indvar = phi uint [ 0, %entry ], [ %indvar.next, %no_exit ] ; <uint> [#uses=1] + %indvar.next = add uint %indvar, 1 ; <uint> [#uses=2] + %exitcond = setne uint %indvar.next, 2147483648 ; <bool> [#uses=1] + br bool %exitcond, label %no_exit, label %loopexit + +loopexit: ; preds = %no_exit + ret int 0 +} diff --git a/llvm/test/Transforms/LoopUnroll/2005-03-06-BadLoopInfoUpdate.ll b/llvm/test/Transforms/LoopUnroll/2005-03-06-BadLoopInfoUpdate.ll new file mode 100644 index 00000000000..1681506acbd --- /dev/null +++ b/llvm/test/Transforms/LoopUnroll/2005-03-06-BadLoopInfoUpdate.ll @@ -0,0 +1,29 @@ +; RUN: llvm-upgrade < %s | llvm-as | opt -loop-unroll -loopsimplify -disable-output + +implementation ; Functions: + +void %print_board() { +entry: + br label %no_exit.1 + +no_exit.1: ; preds = %cond_false.2, %entry + br label %no_exit.2 + +no_exit.2: ; preds = %no_exit.2, %no_exit.1 + %indvar1 = phi uint [ 0, %no_exit.1 ], [ %indvar.next2, %no_exit.2 ] ; <uint> [#uses=1] + %indvar.next2 = add uint %indvar1, 1 ; <uint> [#uses=2] + %exitcond3 = setne uint %indvar.next2, 7 ; <bool> [#uses=1] + br bool %exitcond3, label %no_exit.2, label %loopexit.2 + +loopexit.2: ; preds = %no_exit.2 + br bool false, label %cond_true.2, label %cond_false.2 + +cond_true.2: ; preds = %loopexit.2 + ret void + +cond_false.2: ; preds = %loopexit.2 + br bool false, label %no_exit.1, label %loopexit.1 + +loopexit.1: ; preds = %cond_false.2 + ret void +} diff --git a/llvm/test/Transforms/LoopUnroll/2006-08-24-MultiBlockLoop.ll b/llvm/test/Transforms/LoopUnroll/2006-08-24-MultiBlockLoop.ll new file mode 100644 index 00000000000..c21ae484db0 --- /dev/null +++ b/llvm/test/Transforms/LoopUnroll/2006-08-24-MultiBlockLoop.ll @@ -0,0 +1,18 @@ +; RUN: llvm-upgrade < %s | llvm-as | opt -loop-unroll | llvm-dis | grep "bb72.2" + +void %vorbis_encode_noisebias_setup() { +entry: + br label %cond_true.outer + +cond_true.outer: + %indvar1.ph = phi uint [ 0, %entry ], [ %indvar.next2, %bb72 ] + br label %bb72 + +bb72: + %indvar.next2 = add uint %indvar1.ph, 1 + %exitcond3 = seteq uint %indvar.next2, 3 + br bool %exitcond3, label %cond_true138, label %cond_true.outer + +cond_true138: + ret void +} diff --git a/llvm/test/Transforms/LoopUnroll/dg.exp b/llvm/test/Transforms/LoopUnroll/dg.exp new file mode 100644 index 00000000000..142de8a6c8f --- /dev/null +++ b/llvm/test/Transforms/LoopUnroll/dg.exp @@ -0,0 +1,3 @@ +load_lib llvm-dg.exp + +llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] $objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext $llvmgcc_version |

