1*fee33082SMax Kazantsev; NOTE: Assertions have been autogenerated by utils/update_analyze_test_checks.py 2*fee33082SMax Kazantsev; RUN: opt < %s -disable-output "-passes=print<scalar-evolution>" 2>&1 | FileCheck %s 3*fee33082SMax Kazantsev 4*fee33082SMax Kazantsevdefine void @test() { 5*fee33082SMax Kazantsev; CHECK-LABEL: 'test' 6*fee33082SMax Kazantsev; CHECK-NEXT: Classifying expressions for: @test 7*fee33082SMax Kazantsev; CHECK-NEXT: %tmp = phi i32 [ 2, %bb ], [ %tmp2, %bb3 ] 8*fee33082SMax Kazantsev; CHECK-NEXT: --> %tmp U: [1,-2147483648) S: [0,-2147483648) 9*fee33082SMax Kazantsev; CHECK-NEXT: %tmp2 = add nuw nsw i32 %tmp, 1 10*fee33082SMax Kazantsev; CHECK-NEXT: --> (1 + %tmp)<nuw> U: [1,-2147483647) S: [1,-2147483647) 11*fee33082SMax Kazantsev; CHECK-NEXT: Determining loop execution counts for: @test 12*fee33082SMax Kazantsev; 13*fee33082SMax Kazantsevbb: 14*fee33082SMax Kazantsev br label %bb1 15*fee33082SMax Kazantsev 16*fee33082SMax Kazantsevbb1: ; preds = %bb3, %bb 17*fee33082SMax Kazantsev %tmp = phi i32 [ 2, %bb ], [ %tmp2, %bb3 ] 18*fee33082SMax Kazantsev %tmp2 = add nuw nsw i32 %tmp, 1 19*fee33082SMax Kazantsev ret void 20*fee33082SMax Kazantsev 21*fee33082SMax Kazantsevbb3: ; No predecessors! 22*fee33082SMax Kazantsev br label %bb1 23*fee33082SMax Kazantsev} 24