From 95d5c34d3e18ff0ec1e5aa0570ee1286cb2fb7ec Mon Sep 17 00:00:00 2001 From: Owen Anderson Date: Tue, 12 Jun 2007 00:49:33 +0000 Subject: [PATCH] Add a GVN-PRE basic regression test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37549 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Transforms/GVNPRE/basic.ll | 38 +++++++++++++++++++++++++++++++++ test/Transforms/GVNPRE/dg.exp | 3 +++ 2 files changed, 41 insertions(+) create mode 100644 test/Transforms/GVNPRE/basic.ll create mode 100644 test/Transforms/GVNPRE/dg.exp diff --git a/test/Transforms/GVNPRE/basic.ll b/test/Transforms/GVNPRE/basic.ll new file mode 100644 index 00000000000..e03231bb834 --- /dev/null +++ b/test/Transforms/GVNPRE/basic.ll @@ -0,0 +1,38 @@ +; RUN: llvm-as | opt -gvnpre | llvm-dis | not grep {%t3 =} +; RUN: llvm-as | opt -gvnpre | llvm-dis | not grep {%t9 =} + +define i32 @main() { +block1: + %t1 = bitcast i32 0 to i32 ; [#uses=5] + br label %block2 + +block2: ; preds = %block6, %block1 + %t2 = phi i32 [ %t1, %block1 ], [ %t3, %block6 ] ; [#uses=3] + %t3 = add i32 %t2, 1 ; [#uses=5] + br i1 false, label %block3, label %block7 + +block3: ; preds = %block2 + br i1 true, label %block4, label %block5 + +block4: ; preds = %block3 + %t4 = add i32 %t2, %t3 ; [#uses=1] + %t5 = bitcast i32 %t4 to i32 ; [#uses=1] + %t6 = add i32 %t1, %t5 ; [#uses=0] + br label %block6 + +block5: ; preds = %block3 + %t7 = add i32 %t3, 1 ; [#uses=1] + br label %block6 + +block6: ; preds = %block5, %block4 + %t8 = phi i32 [ %t1, %block4 ], [ %t7, %block5 ] ; [#uses=1] + %t9 = add i32 %t2, %t3 ; [#uses=2] + %t10 = add i32 %t9, %t8 ; [#uses=0] + %t11 = bitcast i32 12 to i32 ; [#uses=1] + %t12 = add i32 %t9, %t11 ; [#uses=1] + %t13 = add i32 %t12, %t3 ; [#uses=0] + br label %block2 + +block7: ; preds = %block2 + ret i32 %t1 +} diff --git a/test/Transforms/GVNPRE/dg.exp b/test/Transforms/GVNPRE/dg.exp new file mode 100644 index 00000000000..879685ca879 --- /dev/null +++ b/test/Transforms/GVNPRE/dg.exp @@ -0,0 +1,3 @@ +load_lib llvm.exp + +RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] -- 2.34.1