1*cee313d2SEric Christopher; RUN: opt -S -loop-vectorize < %s 2*cee313d2SEric Christopher 3*cee313d2SEric Christopher; PR15384 4*cee313d2SEric Christopherdefine void @test1(i32 %arg) { 5*cee313d2SEric Christopherbb: 6*cee313d2SEric Christopher br label %bb1 7*cee313d2SEric Christopher 8*cee313d2SEric Christopherbb1: ; preds = %bb5, %bb 9*cee313d2SEric Christopher %tmp = phi i32 [ 1, %bb ], [ %tmp7, %bb5 ] 10*cee313d2SEric Christopher %tmp2 = phi i32 [ %arg, %bb ], [ %tmp9, %bb5 ] 11*cee313d2SEric Christopher br i1 true, label %bb5, label %bb3 12*cee313d2SEric Christopher 13*cee313d2SEric Christopherbb3: ; preds = %bb1 14*cee313d2SEric Christopher br label %bb4 15*cee313d2SEric Christopher 16*cee313d2SEric Christopherbb4: ; preds = %bb3 17*cee313d2SEric Christopher br label %bb5 18*cee313d2SEric Christopher 19*cee313d2SEric Christopherbb5: ; preds = %bb4, %bb1 20*cee313d2SEric Christopher %tmp6 = phi i32 [ 0, %bb4 ], [ %tmp, %bb1 ] 21*cee313d2SEric Christopher %tmp7 = phi i32 [ 0, %bb4 ], [ %tmp, %bb1 ] 22*cee313d2SEric Christopher %tmp8 = phi i32 [ 0, %bb4 ], [ %tmp, %bb1 ] 23*cee313d2SEric Christopher %tmp9 = add nsw i32 %tmp2, 1 24*cee313d2SEric Christopher %tmp10 = icmp eq i32 %tmp9, 0 25*cee313d2SEric Christopher br i1 %tmp10, label %bb11, label %bb1 26*cee313d2SEric Christopher 27*cee313d2SEric Christopherbb11: ; preds = %bb5 28*cee313d2SEric Christopher ret void 29*cee313d2SEric Christopher} 30*cee313d2SEric Christopher 31*cee313d2SEric Christopher; PR15748 32*cee313d2SEric Christopherdefine void @test2() { 33*cee313d2SEric Christopherbb: 34*cee313d2SEric Christopher br label %bb1 35*cee313d2SEric Christopher 36*cee313d2SEric Christopherbb1: ; preds = %bb1, %bb 37*cee313d2SEric Christopher %tmp = phi i32 [ 0, %bb ], [ %tmp5, %bb1 ] 38*cee313d2SEric Christopher %tmp2 = phi i32 [ 0, %bb ], [ 1, %bb1 ] 39*cee313d2SEric Christopher %tmp3 = phi i32 [ 0, %bb ], [ %tmp4, %bb1 ] 40*cee313d2SEric Christopher %tmp4 = or i32 %tmp2, %tmp3 41*cee313d2SEric Christopher %tmp5 = add nsw i32 %tmp, 1 42*cee313d2SEric Christopher %tmp6 = icmp eq i32 %tmp5, 0 43*cee313d2SEric Christopher br i1 %tmp6, label %bb7, label %bb1 44*cee313d2SEric Christopher 45*cee313d2SEric Christopherbb7: ; preds = %bb1 46*cee313d2SEric Christopher ret void 47*cee313d2SEric Christopher} 48