1; RUN: opt -S -licm -simple-loop-unswitch < %s | FileCheck %s
2
3; This test checks for a crash.  See PR32587.
4
5@global = external global i32
6
7declare i32 @f_1(i8, i32 returned)
8
9define i32 @f_0() {
10; CHECK-LABEL: @f_0(
11bb:
12  br label %bb1
13
14bb1:                                              ; preds = %bb3, %bb
15  %tmp = load i32, i32* @global
16  %tmp2 = select i1 false, i16 1, i16 0
17  br label %bb3
18
19bb3:                                              ; preds = %bb3, %bb1
20  %tmp4 = phi i8 [ 0, %bb1 ], [ %tmp6, %bb3 ]
21  %tmp5 = icmp eq i16 %tmp2, 0
22  %tmp6 = select i1 %tmp5, i8 %tmp4, i8 1
23  %tmp7 = tail call i32 @f_1(i8 %tmp6, i32 1)
24  br i1 false, label %bb1, label %bb3
25}
26