xref: /llvm-project/llvm/test/Transforms/LoopVectorize/scev-invalidation.ll (revision 4718b4011f1d3038c73e2594e4651243f4a221e5)
1*4718b401SYingwei Zheng; RUN: opt < %s -passes="require<scalar-evolution>,print<scalar-evolution>,loop-vectorize" --verify-scev -force-vector-interleave=2 -force-vector-width=8 -S | FileCheck %s
2*4718b401SYingwei Zheng
3*4718b401SYingwei Zheng; CHECK-LABEL: @main(
4*4718b401SYingwei Zheng; CHECK: vector.body
5*4718b401SYingwei Zhengdefine i32 @main(i32 %.pre) {
6*4718b401SYingwei Zhengentry:
7*4718b401SYingwei Zheng  br label %for.body
8*4718b401SYingwei Zheng
9*4718b401SYingwei Zhengfor.body:
10*4718b401SYingwei Zheng  %g.019 = phi i16 [ 0, %entry ], [ %dec7, %for.body ]
11*4718b401SYingwei Zheng  %and = and i32 %.pre, 40
12*4718b401SYingwei Zheng  %0 = sub i32 0, %and
13*4718b401SYingwei Zheng  %dec7 = add i16 %g.019, 1
14*4718b401SYingwei Zheng  %cmp.not = icmp eq i16 %dec7, 0
15*4718b401SYingwei Zheng  br i1 %cmp.not, label %for.inc16, label %for.body
16*4718b401SYingwei Zheng
17*4718b401SYingwei Zhengfor.inc16:
18*4718b401SYingwei Zheng  %1 = phi i32 [ %inc, %for.inc16 ], [ 0, %for.body ]
19*4718b401SYingwei Zheng  %inc = add i32 %1, 1
20*4718b401SYingwei Zheng  %add12 = add i32 %0, %1
21*4718b401SYingwei Zheng  br label %for.inc16
22*4718b401SYingwei Zheng}
23