/llvm-project/llvm/test/Analysis/ScalarEvolution/ |
H A D | overflow-intrinsics-trip-count.ll | 14 ; CHECK-NEXT: Loop %for.body: backedge-taken count is i16 35 15 ; CHECK-NEXT: Loop %for.body: constant max backedge-taken count is i16 35 16 ; CHECK-NEXT: Loop %for.body: symbolic max backedge-taken count is i16 35 17 ; CHECK-NEXT: Loop %for.body: Trip multiple is 36 20 br i1 %arg, label %for.end, label %for.body.preheader 22 for.body.preheader: ; preds = %entry 23 br label %for.body 25 for.body: ; preds = %for.body.preheader, %for.body [all...] |
H A D | trip-count-implied-addrec.ll | 15 ; CHECK-NEXT: Loop %for.body: backedge-taken count is %n 16 ; CHECK-NEXT: Loop %for.body: constant max backedge-taken count is i16 -1 17 ; CHECK-NEXT: Loop %for.body: symbolic max backedge-taken count is %n 18 ; CHECK-NEXT: Loop %for.body: Trip multiple is 1 21 br label %for.body 23 for.body: ; preds = %entry, %for.body 24 %iv = phi i8 [ %iv.next, %for.body ], [ 0, %entry ] 28 br i1 %cmp, label %for.body, label %for.end 30 for.end: ; preds = %for.body, [all...] |
H A D | trip-count-negative-stride.ll | 15 ; CHECK-NEXT: Loop %for.body: Unpredictable backedge-taken count. 16 ; CHECK-NEXT: Loop %for.body: Unpredictable constant max backedge-taken count. 17 ; CHECK-NEXT: Loop %for.body: Unpredictable symbolic max backedge-taken count. 20 br label %for.body 22 for.body: ; preds = %entry, %for.body 23 %i.05 = phi i8 [ %add, %for.body ], [ 0, %entry ] 26 br i1 %cmp, label %for.body, label %for.end 28 for.end: ; preds = %for.body, %entry 37 ; CHECK-NEXT: Loop %for.body: Unpredictable backedge-taken count. 38 ; CHECK-NEXT: Loop %for.body: Unpredictable constant max backedge-taken count. [all …]
|
H A D | ne-overflow.ll | 13 ; CHECK-NEXT: Loop %for.body: backedge-taken count is ((-2 + %N) /u 2) 14 ; CHECK-NEXT: Loop %for.body: constant max backedge-taken count is i32 2147483647 15 ; CHECK-NEXT: Loop %for.body: symbolic max backedge-taken count is ((-2 + %N) /u 2) 16 ; CHECK-NEXT: Loop %for.body: Trip multiple is 1 19 br label %for.body 21 for.body: 22 %iv = phi i32 [ %iv.next, %for.body ], [ 0, %entry ] 25 br i1 %cmp, label %for.body, label %for.cond.cleanup 34 ; CHECK-NEXT: Loop %for.body: backedge-taken count is (%N /u 2) 35 ; CHECK-NEXT: Loop %for.body [all...] |
H A D | finite-trip-count.ll | 12 ; CHECK-NEXT: Loop %for.body: backedge-taken count is (0 smax (1 + %len)) 13 ; CHECK-NEXT: Loop %for.body: constant max backedge-taken count is i32 2147483647 14 ; CHECK-NEXT: Loop %for.body: symbolic max backedge-taken count is (0 smax (1 + %len)) 15 ; CHECK-NEXT: Loop %for.body: Trip multiple is 1 18 br label %for.body 20 for.body: 21 %iv = phi i32 [ %inc, %for.body ], [ 0, %entry ] 25 br i1 %cmp, label %for.body, label %for.end 34 ; CHECK-NEXT: Loop %for.body: backedge-taken count is (-1 + (1 smax (1 + %len)))<nsw> 35 ; CHECK-NEXT: Loop %for.body [all...] |
H A D | huge-trip-multiple.ll | 12 ; CHECK-NEXT: %i.02 = phi i64 [ 0, %entry ], [ %add, %for.body ] 13 …: --> {0,+,1}<nuw><nsw><%for.body> U: [0,4294967295) S: [0,4294967295) Exits: 4294967294 LoopDi… 15 …: --> {1,+,1}<nuw><nsw><%for.body> U: [1,4294967296) S: [1,4294967296) Exits: 4294967295 LoopDi… 17 ; CHECK-NEXT: Loop %for.body: backedge-taken count is i64 4294967294 18 ; CHECK-NEXT: Loop %for.body: constant max backedge-taken count is i64 4294967294 19 ; CHECK-NEXT: Loop %for.body: symbolic max backedge-taken count is i64 4294967294 20 ; CHECK-NEXT: Loop %for.body: Trip multiple is 4294967295 23 br label %for.body 25 for.cond.cleanup: ; preds = %for.body 28 for.body: ; preds = %entry, %for.body [all …]
|
H A D | trip-count-unknown-stride.ll | 17 ; CHECK-NEXT: Loop %for.body: backedge-taken count is ((-1 + (%n smax %s)) /u %s) 18 ; CHECK-NEXT: Loop %for.body: constant max backedge-taken count is i32 -1 19 ; CHECK-NEXT: Loop %for.body: symbolic max backedge-taken count is ((-1 + (%n smax %s)) /u %s) 20 ; CHECK-NEXT: Loop %for.body: Trip multiple is 1 24 br i1 %cmp4, label %for.body, label %for.end 26 for.body: ; preds = %entry, %for.body 27 %i.05 = phi i32 [ %add, %for.body ], [ 0, %entry ] 34 br i1 %cmp, label %for.body, label %for.end 36 for.end: ; preds = %for.body, %entry 50 ; CHECK-NEXT: Loop %for.body: backedge-taken count is ((((-1 * (1 umin ((-1 * %s) + (%n smax %s)))… [all …]
|
H A D | trip-multiple-guard-info.ll | 11 ; CHECK-NEXT: %i.010 = phi i32 [ 0, %entry ], [ %inc, %for.body ] 12 … --> {0,+,1}<nuw><nsw><%for.body> U: [0,-2147483648) S: [0,-2147483648) Exits: (-1 + %num) LoopD… 14 …XT: --> {1,+,1}<nuw><nsw><%for.body> U: [1,-2147483648) S: [1,-2147483648) Exits: %num LoopDisp… 16 ; CHECK-NEXT: Loop %for.body: backedge-taken count is (-1 + %num) 17 ; CHECK-NEXT: Loop %for.body: constant max backedge-taken count is i32 -2 18 ; CHECK-NEXT: Loop %for.body: symbolic max backedge-taken count is (-1 + %num) 19 ; CHECK-NEXT: Loop %for.body: Trip multiple is 4 27 br label %for.body 29 for.body: 30 %i.010 = phi i32 [ 0, %entry ], [ %inc, %for.body ] [all …]
|
H A D | trip-multiple.ll | 22 ; CHECK-NEXT: %i.05 = phi i32 [ %inc, %for.body ], [ 0, %entry ] 23 ; CHECK-NEXT: --> {0,+,1}<nuw><%for.body> U: [0,-1) S: [0,-1) Exits: (-1 + %num) LoopDisposition… 25 ; CHECK-NEXT: --> {1,+,1}<nuw><%for.body> U: [1,0) S: [1,0) Exits: %num LoopDispositions: { %for… 27 ; CHECK-NEXT: Loop %for.body: backedge-taken count is (-1 + %num) 28 ; CHECK-NEXT: Loop %for.body: constant max backedge-taken count is i32 -2 29 ; CHECK-NEXT: Loop %for.body: symbolic max backedge-taken count is (-1 + %num) 30 ; CHECK-NEXT: Loop %for.body: Trip multiple is 3 37 br i1 %or.cond, label %for.body, label %if.end 39 for.body: ; preds = %entry, %for.body 40 %i.05 = phi i32 [ %inc, %for.body ], [ 0, %entry ] [all …]
|
H A D | lt-overflow.ll | 10 ; CHECK: Loop %for.body: backedge-taken count is ((-1 + (2 umax %N)) /u 2) 12 ; CHECK: Loop %for.body: backedge-taken count is ((1 + %N) /u 2) 14 ; CHECK: Loop %for.body: Unpredictable backedge-taken count. 16 ; CHECK: Loop %for.body: Unpredictable backedge-taken count. 18 ; CHECK: Loop %for.body: Unpredictable backedge-taken count. 20 ; CHECK: Loop %for.body: backedge-taken count is ((-1 + (1024 umax %N)) /u 1024) 22 ; CHECK: Loop %for.body: Unpredictable backedge-taken count. 24 ; CHECK: Loop %for.body: Unpredictable backedge-taken count. 26 ; CHECK: Loop %for.body: Unpredictable backedge-taken count. 28 ; CHECK: Loop %for.body: <multiple exits> Unpredictable backedge-taken count. [all …]
|
/llvm-project/llvm/test/CodeGen/PowerPC/ |
H A D | ctrloop-le.ll | 11 br i1 %cmp3, label %for.body.lr.ph, label %for.end 13 for.body.lr.ph: ; preds = %entry 14 br label %for.body 16 for.body: ; preds = %for.body.lr.ph, %for.body 17 %i.04 = phi i32 [ 28395, %for.body.lr.ph ], [ %inc, %for.body ] 26 br i1 %cmp, label %for.body, label %for.end 28 for.end: ; preds = %for.body, %entry 40 br i1 %cmp3, label %for.body.lr.ph, label %for.end 42 for.body.lr.ph: ; preds = %entry 43 br label %for.body [all …]
|
H A D | ctrloop-ne.ll | 11 br i1 %cmp3, label %for.body.lr.ph, label %for.end 13 for.body.lr.ph: ; preds = %entry 14 br label %for.body 16 for.body: ; preds = %for.body.lr.ph, %for.body 17 %i.04 = phi i32 [ 32623, %for.body.lr.ph ], [ %inc, %for.body ] 26 br i1 %cmp, label %for.body, label %for.end 28 for.end: ; preds = %for.body, %entry 40 br i1 %cmp3, label %for.body.lr.ph, label %for.end 42 for.body.lr.ph: ; preds = %entry 43 br label %for.body [all …]
|
H A D | ctrloop-lt.ll | 11 br i1 %cmp3, label %for.body.lr.ph, label %for.end 13 for.body.lr.ph: ; preds = %entry 14 br label %for.body 16 for.body: ; preds = %for.body.lr.ph, %for.body 17 %i.04 = phi i32 [ 8531, %for.body.lr.ph ], [ %inc, %for.body ] 26 br i1 %cmp, label %for.body, label %for.end 28 for.end: ; preds = %for.body, %entry 40 br i1 %cmp3, label %for.body.lr.ph, label %for.end 42 for.body.lr.ph: ; preds = %entry 43 br label %for.body [all …]
|
/llvm-project/llvm/test/Transforms/LoopVectorize/AArch64/ |
H A D | nontemporal-load-store.ll | 6 ; CHECK-NOT: vector.body: 10 br label %for.body 12 for.body: ; preds = %entry, %for.body 13 %i = phi i32 [ 0, %entry ], [ %add, %for.body ] 14 %ddst.addr = phi ptr [ %ddst, %entry ], [ %incdec.ptr, %for.body ] 19 br i1 %cmp, label %for.body, label %for.cond.cleanup 21 for.cond.cleanup: ; preds = %for.body 27 ; CHECK-LABEL: vector.body: 32 br label %for.body 34 for.body: ; preds = %entry, %for.body [all …]
|
/llvm-project/llvm/test/Transforms/LoopVectorize/ARM/ |
H A D | tail-folding-allowed.ll | 15 br i1 %cmp8, label %for.body.preheader, label %for.cond.cleanup 17 for.body.preheader: ; preds = %entry 18 br label %for.body 20 for.cond.cleanup.loopexit: ; preds = %for.body 26 for.body: ; preds = %for.body.preheader, %for.body 27 %i.09 = phi i32 [ %inc, %for.body ], [ 0, %for.body.preheader ] 37 br i1 %exitcond.not, label %for.cond.cleanup.loopexit, label %for.body 42 ; CHECK: vector.body: 44 ; CHECK: br i1 %{{.*}}, label {{.*}}, label %vector.body 47 br i1 %cmp6, label %while.end, label %while.body.preheader [all …]
|
H A D | arm-ieee-vectorize.ll | 22 br i1 %cmp5, label %for.end, label %for.body.preheader 24 for.body.preheader: ; preds = %entry 25 br label %for.body 27 for.body: ; preds = %for.body.preheader, %for.body 28 %i.06 = phi i32 [ %inc, %for.body ], [ 0, %for.body.preheader ] 38 br i1 %exitcond, label %for.end.loopexit, label %for.body 40 for.end.loopexit: ; preds = %for.body [all...] |
H A D | tail-folding-counting-down.ll | 18 ; COMMON: vector.body: 27 br i1 %cmp5, label %while.body.preheader, label %while.end 29 while.body.preheader: 30 br label %while.body 32 while.body: 33 %N.addr.09 = phi i32 [ %dec, %while.body ], [ %N, %while.body.preheader ] 34 %c.addr.08 = phi ptr [ %incdec.ptr4, %while.body ], [ %c, %while.body.preheader ] 35 %b.addr.07 = phi ptr [ %incdec.ptr1, %while.body ], [ %b, %while.body.preheader ] 36 %a.addr.06 = phi ptr [ %incdec.ptr, %while.body ], [ %a, %while.body.preheader ] 46 br i1 %cmp, label %while.body, label %while.end.loopexit [all …]
|
/llvm-project/llvm/test/Transforms/LoopVectorize/ |
H A D | iv-select-cmp.ll | 187 br label %for.body 189 for.body: ; preds = %entry, %for.body 190 %iv = phi i64 [ %inc, %for.body ], [ 0, %entry ] 191 %rdx = phi i64 [ %cond, %for.body ], [ 3, %entry ] 198 br i1 %exitcond.not, label %exit, label %for.body 200 exit: ; preds = %for.body 385 br label %for.body 387 for.body: ; preds = %entry, %for.body [all...] |
H A D | iv-select-cmp-trunc.ll | 221 br i1 %cmp.sgt, label %for.body.preheader, label %exit 223 for.body.preheader: ; preds = %entry 225 br label %for.body 227 for.body: ; preds = %for.body.preheader, %for.body 228 %iv = phi i64 [ 0, %for.body.preheader ], [ %inc, %for.body ] 229 %rdx = phi i32 [ 331, %for.body.preheader ], [ %spec.select, %for.body ] [all...] |
/llvm-project/polly/test/CodeGen/ |
H A D | loop-invariant-load-type-mismatch.ll | 13 br label %for.body 20 br i1 false, label %for.body, label %for.end.65 22 for.body: ; preds = %for.cond.loopexit, %entry.split 24 br i1 true, label %for.body.3.lr.ph, label %for.cond.30.preheader 26 for.body.3.lr.ph: ; preds = %for.body 27 br label %for.body.3 32 …header: ; preds = %for.cond.1.for.cond.30.preheader_crit_edge, %for.body 33 br i1 true, label %for.body.32.lr.ph, label %for.cond.loopexit 35 for.body.32.lr.ph: ; preds = %for.cond.30.preheader 36 br label %for.body.32 [all …]
|
/llvm-project/llvm/test/Transforms/HardwareLoops/ARM/ |
H A D | do-rem.ll | 10 ; CHECK: br i1 [[TEST1]], label %while.body.preheader, label %while.end 12 ; CHECK: while.body.preheader: 13 ; CHECK-NEXT: br label %while.body 15 ; CHECK: while.body: 16 …ECK: [[REM:%[^ ]+]] = phi i32 [ [[TEST0]], %while.body.preheader ], [ [[LOOP_DEC:%[^ ]+]], %while.… 19 ; CHECK: br i1 [[CMP]], label %while.body, label %while.end.loopexit 24 br i1 %cmp7, label %while.end, label %while.body.preheader 26 while.body.preheader: 27 br label %while.body 29 while.body: [all …]
|
/llvm-project/llvm/test/CodeGen/Hexagon/ |
H A D | hwloop-lt.ll | 9 br i1 %cmp3, label %for.body.lr.ph, label %for.end 11 for.body.lr.ph: 12 br label %for.body 14 for.body: 15 %i.04 = phi i32 [ 8531, %for.body.lr.ph ], [ %inc, %for.body ] 24 br i1 %cmp, label %for.body, label %for.end 36 br i1 %cmp3, label %for.body.lr.ph, label %for.end 38 for.body.lr.ph: 39 br label %for.body [all...] |
/llvm-project/llvm/test/CodeGen/Thumb2/LowOverheadLoops/ |
H A D | branch-targets.ll | 15 br label %for.body.preheader 17 for.body.preheader: 23 for.body: 39 %lsr.iv9 = phi ptr [ %scevgep8, %for.body.preheader ], [ %scevgep10, %for.body ] 40 %lsr.iv5 = phi ptr [ %scevgep4, %for.body.preheader ], [ %scevgep6, %for.body ] 41 %lsr.iv1 = phi ptr [ %scevgep, %for.body.preheader ], [ %scevgep2, %for.body ] 42 %count = phi i32 [ %start, %for.body.preheader ], [ %count.next, %for.body ] 43 br label %for.body 59 br label %for.body.preheader 61 for.body.preheader: [all …]
|
/llvm-project/llvm/test/Analysis/DependenceAnalysis/ |
H A D | SymbolicSIV.ll | 30 br i1 %cmp1, label %for.end, label %for.body.preheader 32 for.body.preheader: ; preds = %entry 33 br label %for.body 35 for.body: ; preds = %for.body.preheader, %for.body 36 %i.03 = phi i64 [ %inc, %for.body ], [ 0, %for.body.preheader ] 37 %B.addr.02 = phi ptr [ %incdec.ptr, %for.body ], [ %B, %for.body [all...] |
/llvm-project/llvm/test/Transforms/HardwareLoops/ |
H A D | loop-guards.ll | 11 ; CHECK: br i1 %t1, label %do.body.preheader 12 ; CHECK: do.body.preheader: 15 ; CHECK: br label %do.body 18 br i1 %t1, label %do.body, label %if.end 20 do.body: ; preds = %do.body, %entry 21 %b.addr.0 = phi ptr [ %incdec.ptr, %do.body ], [ %b, %entry ] 22 %a.addr.0 = phi ptr [ %incdec.ptr1, %do.body ], [ %a, %entry ] 23 %i.0 = phi i32 [ %inc, %do.body ], [ 1, %entry ] 30 br i1 %cmp, label %do.body, label %if.end 32 if.end: ; preds = %do.body, %entry [all …]
|