summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/CodeExtractor/unreachable-block.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/Transforms/CodeExtractor/unreachable-block.ll')
-rw-r--r--llvm/test/Transforms/CodeExtractor/unreachable-block.ll36
1 files changed, 36 insertions, 0 deletions
diff --git a/llvm/test/Transforms/CodeExtractor/unreachable-block.ll b/llvm/test/Transforms/CodeExtractor/unreachable-block.ll
new file mode 100644
index 00000000000..7ce65f529a6
--- /dev/null
+++ b/llvm/test/Transforms/CodeExtractor/unreachable-block.ll
@@ -0,0 +1,36 @@
+; RUN: opt -S -partial-inliner %s | FileCheck %s
+
+; CHECK-LABEL: define void @dipsy(
+; CHECK-NEXT: call void @tinkywinky.1.ontrue()
+; CHECK-NEXT: call void @patatuccio()
+; CHECK-NEXT: ret void
+; CHECK-NEXT: }
+
+; CHECK-LABEL: define internal void @tinkywinky.1.ontrue() {
+; CHECK-NEXT: newFuncRoot:
+; CHECK-NEXT: br label %ontrue
+; CHECK: onfalse{{.*}}:
+; CHECK-NEXT: ret void
+; CHECK: ontrue:
+; CHECK-NEXT: call void @patatino()
+; CHECK-NEXT: br label %onfalse{{.*}}
+; CHECK-NEXT: }
+
+declare void @patatino()
+declare void @patatuccio()
+
+define fastcc void @tinkywinky() {
+ br i1 true, label %ontrue, label %onfalse
+ontrue:
+ call void @patatino()
+ br label %onfalse
+onfalse:
+ call void @patatuccio()
+ ret void
+cantreachme:
+ ret void
+}
+define void @dipsy() {
+ call fastcc void @tinkywinky()
+ ret void
+}
OpenPOWER on IntegriCloud