|
19 | 19 |
|
20 | 20 | define dso_local void @f() local_unnamed_addr #0 { |
21 | 21 | entry: |
22 | | - br label %for.cond1.preheader |
| 22 | + br label %outer.header |
23 | 23 |
|
24 | | -for.cond1.preheader: |
25 | | - %indvars.iv17 = phi i64 [ 0, %entry ], [ %indvars.iv.next18, %for.cond.cleanup3 ] |
26 | | - br label %for.body4 |
| 24 | +outer.header: |
| 25 | + %i = phi i64 [ 0, %entry ], [ %i.next, %inner.header ] |
| 26 | + br label %inner.body |
27 | 27 |
|
28 | | -for.cond.cleanup: |
29 | | - ret void |
30 | | - |
31 | | -for.cond.cleanup3: |
32 | | - %indvars.iv.next18 = add nuw nsw i64 %indvars.iv17, 1 |
33 | | - %exitcond20.not = icmp eq i64 %indvars.iv.next18, 1024 |
34 | | - br i1 %exitcond20.not, label %for.cond.cleanup, label %for.cond1.preheader |
| 28 | +inner.header: |
| 29 | + %i.next = add nuw nsw i64 %i, 1 |
| 30 | + %exitcond20.not = icmp eq i64 %i.next, 1024 |
| 31 | + br i1 %exitcond20.not, label %exit, label %outer.header |
35 | 32 |
|
36 | | -for.body4: |
37 | | - %indvars.iv = phi i64 [ 0, %for.cond1.preheader ], [ %indvars.iv.next, %for.body4 ] |
38 | | - %arrayidx6 = getelementptr inbounds nuw [1024 x [1024 x i32]], ptr @A, i64 0, i64 %indvars.iv17, i64 %indvars.iv |
| 33 | +inner.body: |
| 34 | + %j = phi i64 [ 0, %outer.header ], [ %j.next, %inner.body ] |
| 35 | + %arrayidx6 = getelementptr inbounds nuw [1024 x [1024 x i32]], ptr @A, i64 0, i64 %i, i64 %j |
39 | 36 | store i32 42, ptr %arrayidx6, align 4 |
40 | | - %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 |
41 | | - %exitcond.not = icmp eq i64 %indvars.iv.next, 1024 |
42 | | - br i1 %exitcond.not, label %for.cond.cleanup3, label %for.body4 |
| 37 | + %j.next = add nuw nsw i64 %j, 1 |
| 38 | + %exitcond.not = icmp eq i64 %j.next, 1024 |
| 39 | + br i1 %exitcond.not, label %inner.header, label %inner.body |
| 40 | + |
| 41 | +exit: |
| 42 | + ret void |
43 | 43 | } |
0 commit comments