diff options
| author | Max Kazantsev <max.kazantsev@azul.com> | 2017-03-24 07:04:31 +0000 |
|---|---|---|
| committer | Max Kazantsev <max.kazantsev@azul.com> | 2017-03-24 07:04:31 +0000 |
| commit | 7696a7edf9dceab386cec496646e169b43eb490d (patch) | |
| tree | 61913af82d0eb726b393dc3650351b21fc2e989d /llvm/test | |
| parent | ffc30781f4a83632969ff26ad6fa41fcf39f1f35 (diff) | |
| download | bcm5719-llvm-7696a7edf9dceab386cec496646e169b43eb490d.tar.gz bcm5719-llvm-7696a7edf9dceab386cec496646e169b43eb490d.zip | |
Revert "[ScalarEvolution] Re-enable Predicate implication from operations"
This reverts commit rL298690
Causes failures on clang.
llvm-svn: 298693
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/Analysis/ScalarEvolution/implied-via-addition.ll | 27 | ||||
| -rw-r--r-- | llvm/test/Analysis/ScalarEvolution/implied-via-division.ll | 331 |
2 files changed, 0 insertions, 358 deletions
diff --git a/llvm/test/Analysis/ScalarEvolution/implied-via-addition.ll b/llvm/test/Analysis/ScalarEvolution/implied-via-addition.ll deleted file mode 100644 index 5565994c5e9..00000000000 --- a/llvm/test/Analysis/ScalarEvolution/implied-via-addition.ll +++ /dev/null @@ -1,27 +0,0 @@ -; RUN: opt -indvars -S < %s | FileCheck %s - -declare void @use(i1) - -declare void @llvm.experimental.guard(i1, ...) - -define void @test_01(i8 %t) { -; CHECK-LABEL: test_01 - entry: - %st = sext i8 %t to i16 - %cmp1 = icmp slt i16 %st, 42 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %loop - - loop: -; CHECK-LABEL: loop - %idx = phi i8 [ %t, %entry ], [ %idx.inc, %loop ] - %idx.inc = add i8 %idx, 1 - %c = icmp slt i8 %idx, 42 -; CHECK: call void @use(i1 true) - call void @use(i1 %c) - %be = icmp slt i8 %idx.inc, 42 - br i1 %be, label %loop, label %exit - - exit: - ret void -} diff --git a/llvm/test/Analysis/ScalarEvolution/implied-via-division.ll b/llvm/test/Analysis/ScalarEvolution/implied-via-division.ll deleted file mode 100644 index 43f4c04fa92..00000000000 --- a/llvm/test/Analysis/ScalarEvolution/implied-via-division.ll +++ /dev/null @@ -1,331 +0,0 @@ -; RUN: opt < %s -analyze -scalar-evolution | FileCheck %s - -declare void @llvm.experimental.guard(i1, ...) - -define void @test_1(i32 %n) nounwind { -; Prove that (n > 1) ===> (n / 2 > 0). -; CHECK: Determining loop execution counts for: @test_1 -; CHECK: Loop %header: backedge-taken count is (-1 + %n.div.2)<nsw> -entry: - %cmp1 = icmp sgt i32 %n, 1 - %n.div.2 = sdiv i32 %n, 2 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i32 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i32 %indvar, 1 - %exitcond = icmp sgt i32 %n.div.2, %indvar.next - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_1neg(i32 %n) nounwind { -; Prove that (n > 0) =\=> (n / 2 > 0). -; CHECK: Determining loop execution counts for: @test_1neg -; CHECK: Loop %header: backedge-taken count is (-1 + (1 smax %n.div.2))<nsw> -entry: - %cmp1 = icmp sgt i32 %n, 0 - %n.div.2 = sdiv i32 %n, 2 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i32 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i32 %indvar, 1 - %exitcond = icmp sgt i32 %n.div.2, %indvar.next - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_2(i32 %n) nounwind { -; Prove that (n >= 2) ===> (n / 2 > 0). -; CHECK: Determining loop execution counts for: @test_2 -; CHECK: Loop %header: backedge-taken count is (-1 + %n.div.2)<nsw> -entry: - %cmp1 = icmp sge i32 %n, 2 - %n.div.2 = sdiv i32 %n, 2 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i32 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i32 %indvar, 1 - %exitcond = icmp sgt i32 %n.div.2, %indvar.next - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_2neg(i32 %n) nounwind { -; Prove that (n >= 1) =\=> (n / 2 > 0). -; CHECK: Determining loop execution counts for: @test_2neg -; CHECK: Loop %header: backedge-taken count is (-1 + (1 smax %n.div.2))<nsw> -entry: - %cmp1 = icmp sge i32 %n, 1 - %n.div.2 = sdiv i32 %n, 2 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i32 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i32 %indvar, 1 - %exitcond = icmp sgt i32 %n.div.2, %indvar.next - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_3(i32 %n) nounwind { -; Prove that (n > -2) ===> (n / 2 >= 0). -; CHECK: Determining loop execution counts for: @test_3 -; CHECK: Loop %header: backedge-taken count is (1 + %n.div.2)<nsw> -entry: - %cmp1 = icmp sgt i32 %n, -2 - %n.div.2 = sdiv i32 %n, 2 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i32 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i32 %indvar, 1 - %exitcond = icmp sge i32 %n.div.2, %indvar - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_3neg(i32 %n) nounwind { -; Prove that (n > -3) =\=> (n / 2 >= 0). -; CHECK: Determining loop execution counts for: @test_3neg -; CHECK: Loop %header: backedge-taken count is (0 smax (1 + %n.div.2)<nsw>) -entry: - %cmp1 = icmp sgt i32 %n, -3 - %n.div.2 = sdiv i32 %n, 2 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i32 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i32 %indvar, 1 - %exitcond = icmp sge i32 %n.div.2, %indvar - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_4(i32 %n) nounwind { -; Prove that (n >= -1) ===> (n / 2 >= 0). -; CHECK: Determining loop execution counts for: @test_4 -; CHECK: Loop %header: backedge-taken count is (1 + %n.div.2)<nsw> -entry: - %cmp1 = icmp sge i32 %n, -1 - %n.div.2 = sdiv i32 %n, 2 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i32 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i32 %indvar, 1 - %exitcond = icmp sge i32 %n.div.2, %indvar - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_4neg(i32 %n) nounwind { -; Prove that (n >= -2) =\=> (n / 2 >= 0). -; CHECK: Determining loop execution counts for: @test_4neg -; CHECK: Loop %header: backedge-taken count is (0 smax (1 + %n.div.2)<nsw>) -entry: - %cmp1 = icmp sge i32 %n, -2 - %n.div.2 = sdiv i32 %n, 2 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i32 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i32 %indvar, 1 - %exitcond = icmp sge i32 %n.div.2, %indvar - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_ext_01(i32 %n) nounwind { -; Prove that (n > 1) ===> (n / 2 > 0). -; CHECK: Determining loop execution counts for: @test_ext_01 -; CHECK: Loop %header: backedge-taken count is (-1 + (sext i32 %n.div.2 to i64))<nsw> -entry: - %cmp1 = icmp sgt i32 %n, 1 - %n.div.2 = sdiv i32 %n, 2 - %n.div.2.ext = sext i32 %n.div.2 to i64 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i64 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i64 %indvar, 1 - %exitcond = icmp sgt i64 %n.div.2.ext, %indvar.next - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_ext_01neg(i32 %n) nounwind { -; Prove that (n > 0) =\=> (n / 2 > 0). -; CHECK: Determining loop execution counts for: @test_ext_01neg -; CHECK: Loop %header: backedge-taken count is (-1 + (1 smax (sext i32 %n.div.2 to i64)))<nsw> -entry: - %cmp1 = icmp sgt i32 %n, 0 - %n.div.2 = sdiv i32 %n, 2 - %n.div.2.ext = sext i32 %n.div.2 to i64 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i64 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i64 %indvar, 1 - %exitcond = icmp sgt i64 %n.div.2.ext, %indvar.next - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_ext_02(i32 %n) nounwind { -; Prove that (n >= 2) ===> (n / 2 > 0). -; CHECK: Determining loop execution counts for: @test_ext_02 -; CHECK: Loop %header: backedge-taken count is (-1 + (sext i32 %n.div.2 to i64))<nsw> -entry: - %cmp1 = icmp sge i32 %n, 2 - %n.div.2 = sdiv i32 %n, 2 - %n.div.2.ext = sext i32 %n.div.2 to i64 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i64 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i64 %indvar, 1 - %exitcond = icmp sgt i64 %n.div.2.ext, %indvar.next - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_ext_02neg(i32 %n) nounwind { -; Prove that (n >= 1) =\=> (n / 2 > 0). -; CHECK: Determining loop execution counts for: @test_ext_02neg -; CHECK: Loop %header: backedge-taken count is (-1 + (1 smax (sext i32 %n.div.2 to i64)))<nsw> -entry: - %cmp1 = icmp sge i32 %n, 1 - %n.div.2 = sdiv i32 %n, 2 - %n.div.2.ext = sext i32 %n.div.2 to i64 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i64 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i64 %indvar, 1 - %exitcond = icmp sgt i64 %n.div.2.ext, %indvar.next - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_ext_03(i32 %n) nounwind { -; Prove that (n > -2) ===> (n / 2 >= 0). -; CHECK: Determining loop execution counts for: @test_ext_03 -; CHECK: Loop %header: backedge-taken count is (1 + (sext i32 %n.div.2 to i64))<nsw> -entry: - %cmp1 = icmp sgt i32 %n, -2 - %n.div.2 = sdiv i32 %n, 2 - %n.div.2.ext = sext i32 %n.div.2 to i64 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i64 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i64 %indvar, 1 - %exitcond = icmp sge i64 %n.div.2.ext, %indvar - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_ext_03neg(i32 %n) nounwind { -; Prove that (n > -3) =\=> (n / 2 >= 0). -; CHECK: Determining loop execution counts for: @test_ext_03neg -; CHECK: Loop %header: backedge-taken count is (0 smax (1 + (sext i32 %n.div.2 to i64))<nsw>) -entry: - %cmp1 = icmp sgt i32 %n, -3 - %n.div.2 = sdiv i32 %n, 2 - %n.div.2.ext = sext i32 %n.div.2 to i64 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i64 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i64 %indvar, 1 - %exitcond = icmp sge i64 %n.div.2.ext, %indvar - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_ext_04(i32 %n) nounwind { -; Prove that (n >= -1) ===> (n / 2 >= 0). -; CHECK: Determining loop execution counts for: @test_ext_04 -; CHECK: Loop %header: backedge-taken count is (1 + (sext i32 %n.div.2 to i64))<nsw> -entry: - %cmp1 = icmp sge i32 %n, -1 - %n.div.2 = sdiv i32 %n, 2 - %n.div.2.ext = sext i32 %n.div.2 to i64 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i64 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i64 %indvar, 1 - %exitcond = icmp sge i64 %n.div.2.ext, %indvar - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} - -define void @test_ext_04neg(i32 %n) nounwind { -; Prove that (n >= -2) =\=> (n / 2 >= 0). -; CHECK: Determining loop execution counts for: @test_ext_04neg -; CHECK: Loop %header: backedge-taken count is (0 smax (1 + (sext i32 %n.div.2 to i64))<nsw>) -entry: - %cmp1 = icmp sge i32 %n, -2 - %n.div.2 = sdiv i32 %n, 2 - %n.div.2.ext = sext i32 %n.div.2 to i64 - call void(i1, ...) @llvm.experimental.guard(i1 %cmp1) [ "deopt"() ] - br label %header - -header: - %indvar = phi i64 [ %indvar.next, %header ], [ 0, %entry ] - %indvar.next = add i64 %indvar, 1 - %exitcond = icmp sge i64 %n.div.2.ext, %indvar - br i1 %exitcond, label %header, label %exit - -exit: - ret void -} |

