Revert "[InstCombine] Support gep nuw in icmp folds" (#118698)
[llvm-project.git] / llvm / test / Analysis / ScalarEvolution / pr3909.ll
blobaf04d3b7ecc051110f29eb67d3c43ec2c9f51e7d
1 ; RUN: opt < %s -passes=indvars -disable-output
2 ; PR 3909
5         %0 = type { i32, ptr }          ; type %0
6         %1 = type { i32, ptr }          ; type %1
8 define x86_stdcallcc i32 @_Dmain(%0 %unnamed) {
9 entry:
10         br label %whilebody
12 whilebody:              ; preds = %endwhile5, %entry
13         %i.0 = phi i64 [ 0, %entry ], [ %tmp11, %endwhile5 ]            ; <i64> [#uses=1]
14         %m.0 = phi i64 [ 0, %entry ], [ %tmp11, %endwhile5 ]            ; <i64> [#uses=2]
15         %tmp2 = mul i64 %m.0, %m.0              ; <i64> [#uses=1]
16         br label %whilecond3
18 whilecond3:             ; preds = %whilebody4, %whilebody
19         %j.0 = phi i64 [ %tmp2, %whilebody ], [ %tmp9, %whilebody4 ]            ; <i64> [#uses=2]
20         %tmp7 = icmp ne i64 %j.0, 0             ; <i1> [#uses=1]
21         br i1 %tmp7, label %whilebody4, label %endwhile5
23 whilebody4:             ; preds = %whilecond3
24         %tmp9 = add i64 %j.0, 1         ; <i64> [#uses=1]
25         br label %whilecond3
27 endwhile5:              ; preds = %whilecond3
28         %tmp11 = add i64 %i.0, 1                ; <i64> [#uses=2]
29         br label %whilebody