summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/SimplifyCFG/pr33605.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/Transforms/SimplifyCFG/pr33605.ll')
-rw-r--r--llvm/test/Transforms/SimplifyCFG/pr33605.ll64
1 files changed, 0 insertions, 64 deletions
diff --git a/llvm/test/Transforms/SimplifyCFG/pr33605.ll b/llvm/test/Transforms/SimplifyCFG/pr33605.ll
deleted file mode 100644
index 963b1599126..00000000000
--- a/llvm/test/Transforms/SimplifyCFG/pr33605.ll
+++ /dev/null
@@ -1,64 +0,0 @@
-; RUN: opt < %s -simplifycfg -S | FileCheck %s
-
-; Skip simplifying unconditional branches from empty blocks in simplifyCFG,
-; when it can destroy canonical loop structure.
-
-; void foo();
-; bool test(int a, int b, int *c) {
-; bool changed = false;
-; for (unsigned int i = 2; i--;) {
-; int r = a | b;
-; if ( r != c[i]) {
-; c[i] = r;
-; foo();
-; changed = true;
-; }
-; }
-; return changed;
-; }
-
-; CHECK-LABEL: @test(
-; CHECK: for.cond:
-; CHECK-NEXT: %i.0 = phi i32 [ 2, %entry ], [ %dec, %if.end ]
-; CHECK: for.body:
-; CHECK: br i1 %cmp, label %if.end, label %if.then
-; CHECK-NOT: br i1 %cmp, label %for.cond, label %if.then
-; CHECK: if.then:
-; CHECK: br label %if.end
-; CHECK-NOT: br label %for.cond
-; CHECK: if.end:
-; CHECK br label %for.cond
-define i1 @test(i32 %a, i32 %b, i32* %c) {
-entry:
- br label %for.cond
-
-for.cond: ; preds = %if.end, %entry
- %i.0 = phi i32 [ 2, %entry ], [ %dec, %if.end ]
- %changed.0.off0 = phi i1 [ false, %entry ], [ %changed.1.off0, %if.end ]
- %dec = add nsw i32 %i.0, -1
- %tobool = icmp eq i32 %i.0, 0
- br i1 %tobool, label %for.cond.cleanup, label %for.body
-
-for.cond.cleanup: ; preds = %for.cond
- %changed.0.off0.lcssa = phi i1 [ %changed.0.off0, %for.cond ]
- ret i1 %changed.0.off0.lcssa
-
-for.body: ; preds = %for.cond
- %or = or i32 %a, %b
- %idxprom = sext i32 %dec to i64
- %arrayidx = getelementptr inbounds i32, i32* %c, i64 %idxprom
- %0 = load i32, i32* %arrayidx, align 4
- %cmp = icmp eq i32 %or, %0
- br i1 %cmp, label %if.end, label %if.then
-
-if.then: ; preds = %for.body
- store i32 %or, i32* %arrayidx, align 4
- call void @foo()
- br label %if.end
-
-if.end: ; preds = %for.body, %if.then
- %changed.1.off0 = phi i1 [ true, %if.then ], [ %changed.0.off0, %for.body ]
- br label %for.cond
-}
-
-declare void @foo()
OpenPOWER on IntegriCloud