diff options
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/Transforms/JumpThreading/bb-unreachable-from-entry.ll | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/llvm/test/Transforms/JumpThreading/bb-unreachable-from-entry.ll b/llvm/test/Transforms/JumpThreading/bb-unreachable-from-entry.ll new file mode 100644 index 00000000000..5900350f540 --- /dev/null +++ b/llvm/test/Transforms/JumpThreading/bb-unreachable-from-entry.ll @@ -0,0 +1,26 @@ +; RUN: opt -S < %s -jump-threading | FileCheck %s +; CHECK-LABEL: @foo +; CHECK-NEXT: exit2: +; CHECK-NEXT: ret void +define void @foo() { +entry: + br label %bb1 + +entry2: + br label %bb1 + +bb1: + %a0 = phi i32 [ undef, %entry2 ], [ 0, %entry ] + %b = icmp ne i32 %a0, 0 + br i1 %b, label %bb2, label %exit2 + +bb2: + br label %exit1 + +exit1: + %a1 = phi i32 [ %a0, %bb2 ] + ret void + +exit2: + ret void +} |

