Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / Transforms / JumpThreading / PR33357-lvi-recursion.ll
blob76ee63b37734cc8b0a31e796fd2c93efff7a9629
1 ; RUN: opt -S -passes=jump-threading,verify -o - %s | FileCheck %s
2 @a = external global i16, align 1
4 ; CHECK-LABEL: f
5 ; CHECK: bb6:
6 ; CHECK: bb2:
7 ; CHECK: bb3:
8 ; CHECK-NOT: bb0:
9 ; CHECK-NOT: bb1:
10 ; CHECK-NOT: bb4:
11 ; CHECK-NOT: bb5:
12 define void @f(i32 %p1) {
13 bb0:
14   %0 = icmp eq i32 %p1, 0
15   br i1 undef, label %bb6, label %bb1
17 bb1:
18   br label %bb2
20 bb2:
21   %1 = phi i1 [ %0, %bb1 ], [ %2, %bb4 ]
22   %2 = and i1 %1, undef
23   br i1 %2, label %bb3, label %bb4
25 bb3:
26   store i16 undef, ptr @a, align 1
27   br label %bb4
29 bb4:
30   br i1 %0, label %bb2, label %bb5
32 bb5:
33   unreachable
35 bb6:
36   ret void