Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / Transforms / LCSSA / remove-phis.ll
blob67e9a035cad799542dfb5ff34dbdcd7be91901f3
1 ; RUN: opt < %s -passes=lcssa,verify -S -o /dev/null
3 ; This bugpoint reduced test case used to assert when removing unused PHI nodes.
4 ; Just verify that we do not assert/crash.
6 define void @test() {
7 entry:
8   br label %gazank
10 gazank:
11   %value = phi i16 [ 0, %entry ], [ undef, %gazonk ]
12   br i1 undef, label %gazink, label %qqq
14 gazink:
15   br i1 undef, label %gazonk, label %infinite.loop.pred
17 gazonk:
18   br i1 undef, label %exit1, label %gazank
20 qqq:
21   br i1 undef, label %www, label %exit2
23 www:
24   br i1 undef, label %qqq, label %foo.pred
26 foo.pred:
27   br label %foo
29 foo:
30   br i1 undef, label %bar, label %exit1.pred
32 bar:
33   br i1 undef, label %foo, label %exit2.pred
35 unreachable1:
36   br i1 undef, label %foo, label %exit2.pred
38 exit1.pred:
39   br label %exit1
41 exit1:
42   ret void
44 exit2.pred:
45   br label %exit2
47 exit2:
48   ret void
50 infinite.loop.pred:
51   br label %infinite.loop
53 infinite.loop:
54   %dead = phi i16 [ %value, %infinite.loop.pred ], [ 0, %infinite.loop ]
55   br label %infinite.loop