Lines Matching full:for
6 ;; Common check for all tests. None should be unroll and jammed
11 ; Tests for(i) { sum = A[i]; for(j) sum += B[j]; A[i+1] = sum; }
14 ; CHECK: %i.029 = phi i32 [ %add10, %for.latch ], [ 0, %for.preheader ]
15 ; CHECK: %j.026 = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
20 br i1 %or.cond, label %for.preheader, label %return
22 for.preheader:
23 br label %for.outer
25 for.outer:
26 %i.029 = phi i32 [ %add10, %for.latch ], [ 0, %for.preheader ]
27 %b.028 = phi i32 [ %inc8, %for.latch ], [ 1, %for.preheader ]
30 br label %for.inner
32 for.inner:
33 %j.026 = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
34 %sum1.025 = phi i32 [ %0, %for.outer ], [ %add, %for.inner ]
40 br i1 %exitcond, label %for.latch, label %for.inner
42 for.latch:
48 br i1 %exitcond30, label %return, label %for.outer
56 ; Tests an incompatible block layout (for.outer jumps past for.inner)
59 ; CHECK: %i.032 = phi i32 [ %add13, %for.latch ], [ 0, %for.preheader ]
60 ; CHECK: %j.030 = phi i32 [ %inc, %for.inner ], [ 0, %for.inner.preheader ]
65 br i1 %or.cond, label %for.preheader, label %for.end14
67 for.preheader:
68 br label %for.outer
70 for.outer:
71 %i.032 = phi i32 [ %add13, %for.latch ], [ 0, %for.preheader ]
75 br i1 %tobool, label %for.latch, label %for.inner
77 for.inner:
78 %j.030 = phi i32 [ %inc, %for.inner ], [ 0, %for.outer ]
79 %sum1.029 = phi i32 [ %sum1.1, %for.inner ], [ 0, %for.outer ]
88 br i1 %exitcond, label %for.latch, label %for.inner
90 for.latch:
91 %sum1.1.lcssa = phi i32 [ 0, %for.outer ], [ %sum1.1, %for.inner ]
96 br i1 %exitcond33, label %for.end14, label %for.outer
98 for.end14:
106 ; CHECK: %i.029 = phi i32 [ 0, %for.preheader ], [ %add12, %for.latch ]
107 ; CHECK: %j.027 = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
116 br i1 %cmp128, label %for.cond.cleanup, label %for.preheader
118 for.preheader:
120 br label %for.outer
122 for.cond.cleanup:
125 for.outer:
126 %i.029 = phi i32 [ 0, %for.preheader ], [ %add12, %for.latch ]
127 br label %for.inner
129 for.inner:
130 %j.027 = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
143 br i1 %exitcond, label %for.latch, label %for.inner
145 for.latch:
151 br i1 %exitcond31, label %for.cond.cleanup, label %for.outer
160 ; ie for(i = 0..n) for (j = 0..i) sum+=B[j]
162 ; CHECK: %indvars.iv = phi i32 [ %indvars.iv.next, %for.latch ], [ 1, %for.preheader ]
163 ; CHECK: %j.021 = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
168 br i1 %or.cond, label %for.preheader, label %for.end9
170 for.preheader:
171 br label %for.outer
173 for.outer:
174 %indvars.iv = phi i32 [ %indvars.iv.next, %for.latch ], [ 1, %for.preheader ]
175 br label %for.inner
177 for.inner:
178 %j.021 = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
179 %sum1.020 = phi i32 [ 0, %for.outer ], [ %add, %for.inner ]
185 br i1 %exitcond, label %for.latch, label %for.inner
187 for.latch:
192 br i1 %exitcond24, label %for.end9, label %for.outer
194 for.end9:
203 ; CHECK: %0 = phi i32 [ %f.promoted10, %entry ], [ 2, %for.latch ]
204 ; CHECK: %1 = phi i32 [ %0, %for.outer ], [ 2, %for.inner ]
207 br label %for.outer
209 for.outer:
210 %0 = phi i32 [ %f.promoted10, %entry ], [ 2, %for.latch ]
211 %d.018 = phi i16 [ 0, %entry ], [ %odd.lcssa, %for.latch ]
212 %inc5.sink9 = phi i32 [ 2, %entry ], [ %inc5, %for.latch ]
213 br label %for.inner
215 for.inner:
216 %1 = phi i32 [ %0, %for.outer ], [ 2, %for.inner ]
217 %inc.sink8 = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
220 br i1 %exitcond, label %for.inner, label %for.latch
222 for.latch:
223 %.lcssa = phi i32 [ %1, %for.inner ]
224 %odd.lcssa = phi i16 [ 1, %for.inner ]
227 br i1 %exitcond11, label %for.outer, label %for.end
229 for.end:
230 %.lcssa.lcssa = phi i32 [ %.lcssa, %for.latch ]
231 %inc.lcssa.lcssa = phi i32 [ 7, %for.latch ]
241 ; CHECK: %inc8.sink14.i = phi i16 [ 1, %entry ], [ %inc8.i, %for.cond.cleanup.i ]
242 ; CHECK: %c.013.i = phi i32 [ 0, %for.body.i ], [ %inc.i, %for.body6.i ]
246 br label %for.body.i
248 for.body.i:
249 %inc8.sink14.i = phi i16 [ 1, %entry ], [ %inc8.i, %for.cond.cleanup.i ]
251 br label %for.body6.i
253 for.cond.cleanup.i:
257 br i1 %cmp.i, label %for.body.i, label %test.exit
259 for.body6.i:
260 %c.013.i = phi i32 [ 0, %for.body.i ], [ %inc.i, %for.body6.i ]
263 br i1 %exitcond.i, label %for.cond.cleanup.i, label %for.body6.i
274 ; CHECK: %i.028 = phi i32 [ %add11, %for.cond3.for.cond.cleanup5_crit_edge ], [ 0, %for.body.prehea…
275 ; CHECK: %j.026 = phi i32 [ 0, %for.body ], [ %add9, %for.body6 ]
280 br i1 %or.cond, label %for.body.preheader, label %for.end12
282 for.body.preheader:
283 br label %for.body
285 for.body:
286 %i.028 = phi i32 [ %add11, %for.cond3.for.cond.cleanup5_crit_edge ], [ 0, %for.body.preheader ]
292 br label %for.body6
294 for.cond3.for.cond.cleanup5_crit_edge:
298 br i1 %exitcond29, label %for.end12, label %for.body
300 for.body6:
301 %0 = phi i32 [ 0, %for.body ], [ %add, %for.body6 ]
302 %j.026 = phi i32 [ 0, %for.body ], [ %add9, %for.body6 ]
308 br i1 %exitcond, label %for.cond3.for.cond.cleanup5_crit_edge, label %for.body6
310 for.end12:
318 ; CHECK: %i.036 = phi i32 [ %add15, %for.latch ], [ 0, %for.body ]
319 ; CHECK: %j.034 = phi i32 [ 0, %for.outer ], [ %add13, %for.inner ]
324 br i1 %or.cond, label %for.end18, label %for.body.preheader
326 for.body.preheader:
327 br label %for.body
329 for.body:
330 %x.037 = phi i32 [ %inc, %for.cond.cleanup4 ], [ 0, %for.body.preheader ]
331 br label %for.outer
333 for.cond.cleanup4:
336 br i1 %exitcond40, label %for.end18, label %for.body
338 for.outer:
339 %i.036 = phi i32 [ %add15, %for.latch ], [ 0, %for.body ]
345 br label %for.inner
347 for.latch:
351 br i1 %exitcond38, label %for.cond.cleanup4, label %for.outer
353 for.inner:
354 %0 = phi i32 [ 0, %for.outer ], [ %add, %for.inner ]
355 %j.034 = phi i32 [ 0, %for.outer ], [ %add13, %for.inner ]
361 br i1 %exitcond, label %for.latch, label %for.inner
363 for.end18:
371 ; CHECK: %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
372 ; CHECK: %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
377 br i1 %or.cond, label %for.outer.preheader, label %for.end
379 for.outer.preheader:
380 br label %for.outer
382 for.outer:
383 %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
384 br label %for.inner
386 for.inner:
387 %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
388 %sum1 = phi i32 [ 0, %for.outer ], [ %add, %for.inner ]
394 br i1 %exitcond, label %for.latch, label %for.inner
396 for.latch:
397 %add.lcssa = phi i32 [ %add, %for.inner ]
402 br i1 %exitcond25, label %for.end.loopexit, label %for.outer
404 for.end.loopexit:
405 br label %for.end
407 for.end:
416 ; CHECK: %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
417 ; CHECK: %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
422 br i1 %or.cond, label %for.outer.preheader, label %for.end
424 for.outer.preheader:
425 br label %for.outer
427 for.outer:
428 %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
429 br label %for.inner
431 for.inner:
432 %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
433 %sum1 = phi i32 [ 0, %for.outer ], [ %add, %for.inner ]
440 br i1 %exitcond, label %for.latch, label %for.inner
442 for.latch:
443 %add.lcssa = phi i32 [ %add, %for.inner ]
448 br i1 %exitcond25, label %for.end.loopexit, label %for.outer
450 for.end.loopexit:
451 br label %for.end
453 for.end:
461 ; CHECK: %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
462 ; CHECK: %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
467 br i1 %or.cond, label %for.outer.preheader, label %for.end
469 for.outer.preheader:
470 br label %for.outer
472 for.outer:
473 %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
474 br label %for.inner
476 for.inner:
477 %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
478 %sum1 = phi i32 [ 0, %for.outer ], [ %add, %for.inner ]
484 br i1 %exitcond, label %for.latch, label %for.inner
486 for.latch:
487 %add.lcssa = phi i32 [ %add, %for.inner ]
492 br i1 %exitcond25, label %for.end.loopexit, label %for.outer
494 for.end.loopexit:
495 br label %for.end
497 for.end:
505 ; CHECK: %i = phi i32 [ %add8, %for.latch3 ], [ 0, %for.outer.preheader ]
506 ; CHECK: %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
511 br i1 %or.cond, label %for.outer.preheader, label %for.end
513 for.outer.preheader:
514 br label %for.outer
516 for.outer:
517 %i = phi i32 [ %add8, %for.latch3 ], [ 0, %for.outer.preheader ]
518 br label %for.inner
520 for.inner:
521 %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
522 %sum1 = phi i32 [ 0, %for.outer ], [ %add, %for.inner ]
528 br i1 %exitcond, label %for.latch, label %for.inner
530 for.latch:
531 %add.lcssa = phi i32 [ %add, %for.inner ]
535 br i1 %cmpl, label %for.latch2, label %for.latch3
537 for.latch2:
538 br label %for.latch3
540 for.latch3:
543 br i1 %exitcond25, label %for.end.loopexit, label %for.outer
545 for.end.loopexit:
546 br label %for.end
548 for.end:
556 ; CHECK: %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
557 ; CHECK: %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
558 ; CHECK: %j2 = phi i32 [ %inc2, %for.inner2 ], [ 0, %for.inner2.preheader ]
563 br i1 %or.cond, label %for.outer.preheader, label %for.end
565 for.outer.preheader:
566 br label %for.outer
568 for.outer:
569 %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
570 br label %for.inner
572 for.inner:
573 %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
574 %sum1 = phi i32 [ 0, %for.outer ], [ %add, %for.inner ]
580 br i1 %exitcond, label %for.inner2, label %for.inner
582 for.inner2:
583 %j2 = phi i32 [ 0, %for.inner ], [ %inc2, %for.inner2 ]
584 %sum12 = phi i32 [ 0, %for.inner ], [ %add2, %for.inner2 ]
590 br i1 %exitcond2, label %for.latch, label %for.inner2
592 for.latch:
593 %add.lcssa = phi i32 [ %add, %for.inner2 ]
598 br i1 %exitcond25, label %for.end.loopexit, label %for.outer
600 for.end.loopexit:
601 br label %for.end
603 for.end:
611 ; CHECK: %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
612 ; CHECK: %j = phi i32 [ %inc, %for.inner ], [ 0, %for.inner.preheader ]
617 br i1 %or.cond, label %for.outer.preheader, label %for.end
619 for.outer.preheader:
620 br label %for.outer
622 for.outer:
623 %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
626 br i1 %exitcond23, label %for.end.loopexit, label %for.inner
628 for.inner:
629 %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
630 %sum1 = phi i32 [ 0, %for.outer ], [ %add, %for.inner ]
636 br i1 %exitcond, label %for.latch, label %for.inner
638 for.latch:
639 %add.lcssa = phi i32 [ %add, %for.inner ]
643 br i1 %exitcond25, label %for.end.loopexit, label %for.outer
645 for.end.loopexit:
646 br label %for.end
648 for.end:
656 ; CHECK: %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
657 ; CHECK: %j = phi i32 [ %inc, %for.inner ], [ 0, %for.inner.preheader ]
662 br i1 %or.cond, label %for.outer.preheader, label %for.end
664 for.outer.preheader:
665 br label %for.outer
667 for.outer:
668 %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
671 br i1 %exitcond25, label %for.end.loopexit, label %for.inner
673 for.inner:
674 %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
675 %sum1 = phi i32 [ 0, %for.outer ], [ %add, %for.inner ]
681 br i1 %exitcond, label %for.latch, label %for.inner
683 for.latch:
684 %add.lcssa = phi i32 [ %add, %for.inner ]
687 br label %for.outer
689 for.end.loopexit:
690 br label %for.end
692 for.end:
700 ; CHECK: %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
701 ; CHECK: %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
706 br i1 %or.cond, label %for.outer.preheader, label %for.end
708 for.outer.preheader:
709 br label %for.outer
711 for.outer:
712 %i = phi i32 [ %add8, %for.latch ], [ 0, %for.outer.preheader ]
713 %otherphi = phi i32 [ %other, %for.latch ], [ 0, %for.outer.preheader ]
714 br label %for.inner
716 for.inner:
717 %j = phi i32 [ 0, %for.outer ], [ %inc, %for.inner ]
718 %sum1 = phi i32 [ 0, %for.outer ], [ %add, %for.inner ]
724 br i1 %exitcond, label %for.latch, label %for.inner
726 for.latch:
727 %add.lcssa = phi i32 [ %add, %for.inner ]
735 br i1 %exitcond25, label %for.end.loopexit, label %for.outer
737 for.end.loopexit:
738 br label %for.end
740 for.end: