summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/Thumb2
diff options
context:
space:
mode:
authorDiana Picus <diana.picus@linaro.org>2016-08-14 02:10:18 +0000
committerDiana Picus <diana.picus@linaro.org>2016-08-14 02:10:18 +0000
commit68be1eb885dd7cc47f534d5608cb9ddff5d722c3 (patch)
tree5c72a35880db33e152224a63165e7b4bd312b052 /llvm/test/CodeGen/Thumb2
parent35ccf53e753fab6b1b0221502cd4fcee1de6a2e9 (diff)
downloadbcm5719-llvm-68be1eb885dd7cc47f534d5608cb9ddff5d722c3.tar.gz
bcm5719-llvm-68be1eb885dd7cc47f534d5608cb9ddff5d722c3.zip
Revert "CodeGen: If Convert blocks that would form a diamond when tail-merged."
This reverts commit r278287. This commit broke the clang-cmake-thumbv7-a15-full-sh bot. See https://llvm.org/bugs/show_bug.cgi?id=28949 llvm-svn: 278621
Diffstat (limited to 'llvm/test/CodeGen/Thumb2')
-rw-r--r--llvm/test/CodeGen/Thumb2/thumb2-ifcvt1.ll47
1 files changed, 4 insertions, 43 deletions
diff --git a/llvm/test/CodeGen/Thumb2/thumb2-ifcvt1.ll b/llvm/test/CodeGen/Thumb2/thumb2-ifcvt1.ll
index a78b0c13426..eb48ffb7d80 100644
--- a/llvm/test/CodeGen/Thumb2/thumb2-ifcvt1.ll
+++ b/llvm/test/CodeGen/Thumb2/thumb2-ifcvt1.ll
@@ -1,7 +1,6 @@
; RUN: llc < %s -mtriple=thumbv7-apple-darwin | FileCheck %s
; RUN: llc < %s -mtriple=thumbv7-apple-darwin -arm-default-it | FileCheck %s
-; RUN: llc < %s -mtriple=thumbv8 -arm-no-restrict-it | FileCheck %s
-; RUN: llc < %s -mtriple=thumbv8 -arm-no-restrict-it -enable-tail-merge=0 | FileCheck %s
+; RUN: llc < %s -mtriple=thumbv8 -arm-no-restrict-it |FileCheck %s
define i32 @t1(i32 %a, i32 %b, i32 %c, i32 %d) nounwind {
; CHECK-LABEL: t1:
; CHECK: ittt ne
@@ -26,9 +25,9 @@ cond_next:
define i32 @t2(i32 %a, i32 %b) nounwind {
entry:
; CHECK-LABEL: t2:
-; CHECK: ite {{gt|le}}
-; CHECK-DAG: suble
-; CHECK-DAG: subgt
+; CHECK: ite gt
+; CHECK: subgt
+; CHECK: suble
%tmp1434 = icmp eq i32 %a, %b ; <i1> [#uses=1]
br i1 %tmp1434, label %bb17, label %bb.outer
@@ -61,44 +60,6 @@ bb17: ; preds = %cond_false, %cond_true, %entry
ret i32 %a_addr.026.1
}
-define i32 @t2_nomerge(i32 %a, i32 %b) nounwind {
-entry:
-; CHECK-LABEL: t2_nomerge:
-; CHECK-NOT: ite {{gt|le}}
-; CHECK-NOT: suble
-; CHECK-NOT: subgt
- %tmp1434 = icmp eq i32 %a, %b ; <i1> [#uses=1]
- br i1 %tmp1434, label %bb17, label %bb.outer
-
-bb.outer: ; preds = %cond_false, %entry
- %b_addr.021.0.ph = phi i32 [ %b, %entry ], [ %tmp10, %cond_false ] ; <i32> [#uses=5]
- %a_addr.026.0.ph = phi i32 [ %a, %entry ], [ %a_addr.026.0, %cond_false ] ; <i32> [#uses=1]
- br label %bb
-
-bb: ; preds = %cond_true, %bb.outer
- %indvar = phi i32 [ 0, %bb.outer ], [ %indvar.next, %cond_true ] ; <i32> [#uses=2]
- %tmp. = sub i32 0, %b_addr.021.0.ph ; <i32> [#uses=1]
- %tmp.40 = mul i32 %indvar, %tmp. ; <i32> [#uses=1]
- %a_addr.026.0 = add i32 %tmp.40, %a_addr.026.0.ph ; <i32> [#uses=6]
- %tmp3 = icmp sgt i32 %a_addr.026.0, %b_addr.021.0.ph ; <i1> [#uses=1]
- br i1 %tmp3, label %cond_true, label %cond_false
-
-cond_true: ; preds = %bb
- %tmp7 = sub i32 %a_addr.026.0, %b_addr.021.0.ph ; <i32> [#uses=2]
- %tmp1437 = icmp eq i32 %tmp7, %b_addr.021.0.ph ; <i1> [#uses=1]
- %indvar.next = add i32 %indvar, 1 ; <i32> [#uses=1]
- br i1 %tmp1437, label %bb17, label %bb
-
-cond_false: ; preds = %bb
- %tmp10 = sub i32 %b_addr.021.0.ph, %a_addr.026.0 ; <i32> [#uses=2]
- %tmp14 = icmp eq i32 %b_addr.021.0.ph, %tmp10 ; <i1> [#uses=1]
- br i1 %tmp14, label %bb17, label %bb.outer
-
-bb17: ; preds = %cond_false, %cond_true, %entry
- %a_addr.026.1 = phi i32 [ %a, %entry ], [ %tmp7, %cond_true ], [ %a_addr.026.0, %cond_false ] ; <i32> [#uses=1]
- ret i32 %a_addr.026.1
-}
-
@x = external global i32* ; <i32**> [#uses=1]
define void @foo(i32 %a) nounwind {
OpenPOWER on IntegriCloud