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
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
+}