aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2009-11-09 00:44:44 +0000
committerOwen Anderson <resistor@mac.com>2009-11-09 00:44:44 +0000
commitb05a1d116fe547336f5397e277487a0fdfadb363 (patch)
treea10f188c93ac974200da2696f0802657a9f6b223 /test
parente7e63fe9650fc01043c96e2bf8a1ecc19e49c5b7 (diff)
downloadexternal_llvm-b05a1d116fe547336f5397e277487a0fdfadb363.zip
external_llvm-b05a1d116fe547336f5397e277487a0fdfadb363.tar.gz
external_llvm-b05a1d116fe547336f5397e277487a0fdfadb363.tar.bz2
Revert my previous patch to ABCD and fix things the right way. There are two problems addressed
here: 1) We need to avoid processing sigma nodes as phi nodes for constraint generation. 2) We need to generate constraints for comparisons against constants properly. This includes our first working ABCD test! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86498 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/Transforms/ABCD/basic.ll27
-rw-r--r--test/Transforms/ABCD/dg.exp3
2 files changed, 30 insertions, 0 deletions
diff --git a/test/Transforms/ABCD/basic.ll b/test/Transforms/ABCD/basic.ll
new file mode 100644
index 0000000..f2ce1b9
--- /dev/null
+++ b/test/Transforms/ABCD/basic.ll
@@ -0,0 +1,27 @@
+; RUN: opt < %s -abcd -S | FileCheck %s
+
+define void @test() {
+; CHECK: @test
+; CHECK-NOT: br i1 %tmp95
+; CHECK: ret void
+entry:
+ br label %bb19
+
+bb:
+ br label %bb1
+
+bb1:
+ %tmp7 = icmp sgt i32 %tmp94, 1
+ br i1 %tmp7, label %bb.i.i, label %return
+
+bb.i.i:
+ br label %return
+
+bb19:
+ %tmp94 = ashr i32 undef, 3
+ %tmp95 = icmp sgt i32 %tmp94, 16
+ br i1 %tmp95, label %bb, label %return
+
+return:
+ ret void
+}
diff --git a/test/Transforms/ABCD/dg.exp b/test/Transforms/ABCD/dg.exp
new file mode 100644
index 0000000..f200589
--- /dev/null
+++ b/test/Transforms/ABCD/dg.exp
@@ -0,0 +1,3 @@
+load_lib llvm.exp
+
+RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,c,cpp}]]