Lines Matching refs:outer

12 ; We cannot interchange this loop at the moment, because iv.outer.next is
13 ; produced in the outer loop latch and used in the loop exit block. If the inner
14 ; loop body is not executed, the outer loop latch won't be executed either
22 br i1 %cmp21, label %outer.ph, label %for.end16
24 outer.ph: ; preds = %entry
26 br label %outer.header
28 outer.header: ; preds = %outer.inc, %outer.ph
29 %iv.outer = phi i64 [ 1, %outer.ph ], [ %iv.outer.next, %outer.inc ]
30 br i1 %cmp218, label %for.body3, label %outer.inc
32 for.body3: ; preds = %for.body3, %outer.header
33 %iv.inner = phi i64 [ %iv.inner.next, %for.body3 ], [ 1, %outer.header ]
34 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @A, i64 0, i64 %iv.inner, i64 %iv.outer
36 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @C, i64 0, i64 %iv.inner, i64 %iv.outer
42 br i1 %exitcond, label %outer.inc, label %for.body3
44 outer.inc: ; preds = %for.body3, %outer.header
45 %iv.outer.next = add nsw i64 %iv.outer, 1
46 %cmp = icmp eq i64 %iv.outer.next, 100
47 br i1 %cmp, label %outer.header, label %for.exit
49 for.exit: ; preds = %outer.inc
50 %iv.outer.next.lcssa = phi i64 [ %iv.outer.next, %outer.inc ]
51 store i64 %iv.outer.next.lcssa, i64* @Y
63 br i1 %cmp21, label %outer.ph, label %for.end16
65 outer.ph: ; preds = %entry
67 br label %outer.header
69 outer.header: ; preds = %outer.inc, %outer.ph
70 %iv.outer = phi i64 [ 1, %outer.ph ], [ %iv.outer.next, %outer.inc ]
71 br i1 %cmp218, label %for.body3, label %outer.inc
73 for.body3: ; preds = %for.body3, %outer.header
74 %iv.inner = phi i64 [ %iv.inner.next, %for.body3 ], [ 1, %outer.header ]
75 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @A, i64 0, i64 %iv.inner, i64 %iv.outer
77 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @C, i64 0, i64 %iv.inner, i64 %iv.outer
83 br i1 %exitcond, label %outer.inc, label %for.body3
85 outer.inc: ; preds = %for.body3, %outer.header
86 %iv.inner.end = phi i64 [ 0, %outer.header ], [ %iv.inner.next, %for.body3 ]
87 %iv.outer.next = add nsw i64 %iv.outer, 1
88 %cmp = icmp eq i64 %iv.outer.next, 100
89 br i1 %cmp, label %outer.header, label %for.exit
91 for.exit: ; preds = %outer.inc
92 %iv.inner.end.lcssa = phi i64 [ %iv.inner.end, %outer.inc ]
104 br label %outer.header
106 outer.header: ; preds = %outer.inc, %entry
107 %iv.outer = phi i64 [ 1, %entry ], [ %iv.outer.next, %outer.inc ]
110 for.body3: ; preds = %for.body3, %outer.header
111 %iv.inner = phi i64 [ %iv.inner.next, %for.body3 ], [ 1, %outer.header ]
112 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @A, i64 0, i64 %iv.inner, i64 %iv.outer
114 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @C, i64 0, i64 %iv.inner, i64 %iv.outer
120 br i1 %exitcond, label %outer.inc, label %for.body3
122 outer.inc: ; preds = %for.body3
124 %iv.outer.next = add nsw i64 %iv.outer, 1
125 %cmp = icmp eq i64 %iv.outer.next, 100
126 br i1 %cmp, label %outer.header, label %for.exit
128 for.exit: ; preds = %outer.inc
129 %iv.inner.lcssa.lcssa = phi i64 [ %iv.inner.lcssa, %outer.inc ]
143 br label %outer.header
145 outer.header: ; preds = %outer.inc, %entry
146 %iv.outer = phi i64 [ 1, %entry ], [ %iv.outer.next, %outer.inc ]
147 %float.outer = phi float [ 1.000000e+00, %entry ], [ %float.outer.next, %outer.inc ]
150 for.body3: ; preds = %for.body3, %outer.header
151 %iv.inner = phi i64 [ %iv.inner.next, %for.body3 ], [ 1, %outer.header ]
152 %float.inner = phi float [ %float.inner.next, %for.body3 ], [ %float.outer, %outer.header ]
153 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @A, i64 0, i64 %iv.inner, i64 %iv.outer
155 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @C, i64 0, i64 %iv.inner, i64 %iv.outer
162 br i1 %exitcond, label %outer.inc, label %for.body3
164 outer.inc: ; preds = %for.body3
165 %float.outer.next = phi float [ %float.inner.next, %for.body3 ]
166 %iv.outer.next = add nsw i64 %iv.outer, 1
167 %cmp = icmp eq i64 %iv.outer.next, 100
168 br i1 %cmp, label %outer.header, label %for.exit
170 for.exit: ; preds = %outer.inc
171 %float.outer.lcssa = phi float [ %float.outer.next, %outer.inc ]
172 store float %float.outer.lcssa, float* @F
185 br label %outer.header
187 outer.header: ; preds = %outer.inc, %entry
188 %iv.outer = phi i64 [ 1, %entry ], [ %iv.outer.next, %outer.inc ]
191 for.body3: ; preds = %bb3, %outer.header
192 %iv.inner = phi i64 [ %iv.inner.next, %bb3 ], [ 1, %outer.header ]
196 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @A, i64 0, i64 %iv.inner, i64 %iv.outer
198 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @C, i64 0, i64 %iv.inner, i64 %iv.outer
208 br i1 %exitcond, label %outer.inc, label %for.body3
210 outer.inc: ; preds = %bb3
212 %iv.outer.next = add nsw i64 %iv.outer, 1
213 %cmp = icmp eq i64 %iv.outer.next, 100
214 br i1 %cmp, label %outer.header, label %for.exit
216 for.exit: ; preds = %outer.inc
217 %iv.inner.lcssa.lcssa = phi i64 [ %iv.inner.lcssa, %outer.inc ]
230 br label %outer.header
232 outer.header: ; preds = %outer.inc, %entry
233 %iv.outer = phi i64 [ 1, %entry ], [ %iv.outer.next, %outer.inc ]
234 br i1 undef, label %for.body3, label %outer.inc
236 for.body3: ; preds = %for.body3, %outer.header
237 %iv.inner = phi i64 [ %iv.inner.next, %for.body3 ], [ 1, %outer.header ]
238 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @A, i64 0, i64 %iv.inner, i64 %iv.outer
240 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @C, i64 0, i64 %iv.inner, i64 %iv.outer
246 br i1 %exitcond, label %outer.inc, label %for.body3
248 outer.inc: ; preds = %for.body3, %outer.header
249 %sv = phi i64 [ 0, %outer.header ], [ 1, %for.body3 ]
250 %iv.outer.next = add nsw i64 %iv.outer, 1
251 %cmp = icmp eq i64 %iv.outer.next, 100
252 br i1 %cmp, label %outer.header, label %for.exit
254 for.exit: ; preds = %outer.inc
255 %sv.lcssa = phi i64 [ %sv, %outer.inc ]
267 br label %outer.header
269 outer.header: ; preds = %outer.inc, %entry
270 %iv.outer = phi i64 [ 1, %entry ], [ %iv.outer.next, %outer.inc ]
273 for.body3: ; preds = %for.body3, %outer.header
274 %iv.inner = phi i64 [ %iv.inner.next, %for.body3 ], [ 1, %outer.header ]
275 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @A, i64 0, i64 %iv.inner, i64 %iv.outer
277 …ementptr inbounds [100 x [100 x i32]], [100 x [100 x i32]]* @C, i64 0, i64 %iv.inner, i64 %iv.outer
283 br i1 %exitcond, label %outer.bb, label %for.body3
285 outer.bb: ; preds = %for.body3
287 br label %outer.inc
289 outer.inc: ; preds = %outer.bb
290 %iv.outer.next = add nsw i64 %iv.outer, 1
291 %cmp = icmp eq i64 %iv.outer.next, 100
292 br i1 %cmp, label %outer.header, label %for.exit
294 for.exit: ; preds = %outer.inc
295 %iv.inner.lcssa.lcssa = phi i64 [ %iv.inner.lcssa, %outer.inc ]
303 ; Should not crash when the outer header branches to
304 ; both the inner loop and the outer latch, and there
330 %sum.outer.lcssa = phi i64 [ %indvars.iv23, %for1.inc ]
331 ret i64 %sum.outer.lcssa