xref: /llvm-project/llvm/test/Analysis/ScalarEvolution/pr49856.ll (revision 50153213c80286c6c91da4612aaf234cc6438c63)
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