xref: /aosp_15_r20/external/llvm/test/Transforms/IndVarSimplify/verify-scev.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -S -indvars -verify-scev
2*9880d681SAndroid Build Coastguard Workertarget datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
3*9880d681SAndroid Build Coastguard Workertarget triple = "x86_64-apple-macosx10.8.0"
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Workerdefine void @test1() nounwind uwtable ssp {
6*9880d681SAndroid Build Coastguard Workerentry:
7*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end, label %for.body
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Workerfor.body:                                         ; preds = %for.body, %entry
10*9880d681SAndroid Build Coastguard Worker  br i1 false, label %for.end, label %for.body
11*9880d681SAndroid Build Coastguard Worker
12*9880d681SAndroid Build Coastguard Workerfor.end:                                          ; preds = %for.body, %entry
13*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end11, label %for.body3
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Workerfor.body3:                                        ; preds = %for.end
16*9880d681SAndroid Build Coastguard Worker  unreachable
17*9880d681SAndroid Build Coastguard Worker
18*9880d681SAndroid Build Coastguard Workerfor.end11:                                        ; preds = %for.end
19*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.body, label %while.end
20*9880d681SAndroid Build Coastguard Worker
21*9880d681SAndroid Build Coastguard Workerwhile.body:                                       ; preds = %for.end11
22*9880d681SAndroid Build Coastguard Worker  unreachable
23*9880d681SAndroid Build Coastguard Worker
24*9880d681SAndroid Build Coastguard Workerwhile.end:                                        ; preds = %for.end11
25*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end115, label %for.cond109
26*9880d681SAndroid Build Coastguard Worker
27*9880d681SAndroid Build Coastguard Workerfor.cond109:                                      ; preds = %while.end
28*9880d681SAndroid Build Coastguard Worker  unreachable
29*9880d681SAndroid Build Coastguard Worker
30*9880d681SAndroid Build Coastguard Workerif.end115:                                        ; preds = %while.end
31*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.body119.lr.ph.lr.ph, label %for.cond612
32*9880d681SAndroid Build Coastguard Worker
33*9880d681SAndroid Build Coastguard Workerwhile.body119.lr.ph.lr.ph:                        ; preds = %if.end115
34*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond612, label %if.end123.us
35*9880d681SAndroid Build Coastguard Worker
36*9880d681SAndroid Build Coastguard Workerif.end123.us:                                     ; preds = %while.body119.lr.ph.lr.ph
37*9880d681SAndroid Build Coastguard Worker  br label %for.cond132.us
38*9880d681SAndroid Build Coastguard Worker
39*9880d681SAndroid Build Coastguard Workerfor.cond132.us:                                   ; preds = %for.cond132.us, %if.end123.us
40*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.then136.us, label %for.cond132.us
41*9880d681SAndroid Build Coastguard Worker
42*9880d681SAndroid Build Coastguard Workerif.then136.us:                                    ; preds = %for.cond132.us
43*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.end220, label %while.body211
44*9880d681SAndroid Build Coastguard Worker
45*9880d681SAndroid Build Coastguard Workerwhile.body211:                                    ; preds = %while.body211, %if.then136.us
46*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.end220, label %while.body211
47*9880d681SAndroid Build Coastguard Worker
48*9880d681SAndroid Build Coastguard Workerwhile.end220:                                     ; preds = %while.body211, %if.then136.us
49*9880d681SAndroid Build Coastguard Worker  br label %for.cond246.outer
50*9880d681SAndroid Build Coastguard Worker
51*9880d681SAndroid Build Coastguard Workerfor.cond246.outer:                                ; preds = %for.inc558, %for.cond394.preheader, %if.then274, %for.cond404.preheader, %while.end220
52*9880d681SAndroid Build Coastguard Worker  br label %for.cond246
53*9880d681SAndroid Build Coastguard Worker
54*9880d681SAndroid Build Coastguard Workerfor.cond246:                                      ; preds = %for.cond372.loopexit, %for.cond246.outer
55*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end562, label %if.end250
56*9880d681SAndroid Build Coastguard Worker
57*9880d681SAndroid Build Coastguard Workerif.end250:                                        ; preds = %for.cond246
58*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end256, label %for.end562
59*9880d681SAndroid Build Coastguard Worker
60*9880d681SAndroid Build Coastguard Workerif.end256:                                        ; preds = %if.end250
61*9880d681SAndroid Build Coastguard Worker  %cmp272 = icmp eq i32 undef, undef
62*9880d681SAndroid Build Coastguard Worker  br i1 %cmp272, label %if.then274, label %for.cond404.preheader
63*9880d681SAndroid Build Coastguard Worker
64*9880d681SAndroid Build Coastguard Workerfor.cond404.preheader:                            ; preds = %if.end256
65*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond246.outer, label %for.body409.lr.ph
66*9880d681SAndroid Build Coastguard Worker
67*9880d681SAndroid Build Coastguard Workerfor.body409.lr.ph:                                ; preds = %for.cond404.preheader
68*9880d681SAndroid Build Coastguard Worker  br label %for.body409
69*9880d681SAndroid Build Coastguard Worker
70*9880d681SAndroid Build Coastguard Workerif.then274:                                       ; preds = %if.end256
71*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond246.outer, label %if.end309
72*9880d681SAndroid Build Coastguard Worker
73*9880d681SAndroid Build Coastguard Workerif.end309:                                        ; preds = %if.then274
74*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond372.loopexit, label %for.body361
75*9880d681SAndroid Build Coastguard Worker
76*9880d681SAndroid Build Coastguard Workerfor.body361:                                      ; preds = %for.body361, %if.end309
77*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond372.loopexit, label %for.body361
78*9880d681SAndroid Build Coastguard Worker
79*9880d681SAndroid Build Coastguard Workerfor.cond372.loopexit:                             ; preds = %for.body361, %if.end309
80*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond394.preheader, label %for.cond246
81*9880d681SAndroid Build Coastguard Worker
82*9880d681SAndroid Build Coastguard Workerfor.cond394.preheader:                            ; preds = %for.cond372.loopexit
83*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond246.outer, label %for.body397
84*9880d681SAndroid Build Coastguard Worker
85*9880d681SAndroid Build Coastguard Workerfor.body397:                                      ; preds = %for.cond394.preheader
86*9880d681SAndroid Build Coastguard Worker  unreachable
87*9880d681SAndroid Build Coastguard Worker
88*9880d681SAndroid Build Coastguard Workerfor.body409:                                      ; preds = %for.inc558, %for.body409.lr.ph
89*9880d681SAndroid Build Coastguard Worker  %k.029 = phi i32 [ 1, %for.body409.lr.ph ], [ %inc559, %for.inc558 ]
90*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.then412, label %if.else433
91*9880d681SAndroid Build Coastguard Worker
92*9880d681SAndroid Build Coastguard Workerif.then412:                                       ; preds = %for.body409
93*9880d681SAndroid Build Coastguard Worker  br label %if.end440
94*9880d681SAndroid Build Coastguard Worker
95*9880d681SAndroid Build Coastguard Workerif.else433:                                       ; preds = %for.body409
96*9880d681SAndroid Build Coastguard Worker  br label %if.end440
97*9880d681SAndroid Build Coastguard Worker
98*9880d681SAndroid Build Coastguard Workerif.end440:                                        ; preds = %if.else433, %if.then412
99*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.inc558, label %if.end461
100*9880d681SAndroid Build Coastguard Worker
101*9880d681SAndroid Build Coastguard Workerif.end461:                                        ; preds = %if.end440
102*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond528.loopexit, label %for.body517
103*9880d681SAndroid Build Coastguard Worker
104*9880d681SAndroid Build Coastguard Workerfor.body517:                                      ; preds = %for.body517, %if.end461
105*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond528.loopexit, label %for.body517
106*9880d681SAndroid Build Coastguard Worker
107*9880d681SAndroid Build Coastguard Workerfor.cond528.loopexit:                             ; preds = %for.body517, %if.end461
108*9880d681SAndroid Build Coastguard Worker  br label %for.inc558
109*9880d681SAndroid Build Coastguard Worker
110*9880d681SAndroid Build Coastguard Workerfor.inc558:                                       ; preds = %for.cond528.loopexit, %if.end440
111*9880d681SAndroid Build Coastguard Worker  %inc559 = add nsw i32 %k.029, 1
112*9880d681SAndroid Build Coastguard Worker  %cmp407 = icmp sgt i32 %inc559, undef
113*9880d681SAndroid Build Coastguard Worker  br i1 %cmp407, label %for.cond246.outer, label %for.body409
114*9880d681SAndroid Build Coastguard Worker
115*9880d681SAndroid Build Coastguard Workerfor.end562:                                       ; preds = %if.end250, %for.cond246
116*9880d681SAndroid Build Coastguard Worker  unreachable
117*9880d681SAndroid Build Coastguard Worker
118*9880d681SAndroid Build Coastguard Workerfor.cond612:                                      ; preds = %while.body119.lr.ph.lr.ph, %if.end115
119*9880d681SAndroid Build Coastguard Worker  unreachable
120*9880d681SAndroid Build Coastguard Worker}
121*9880d681SAndroid Build Coastguard Worker
122*9880d681SAndroid Build Coastguard Workerdefine void @test2() nounwind uwtable ssp {
123*9880d681SAndroid Build Coastguard Workerentry:
124*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end, label %for.body
125*9880d681SAndroid Build Coastguard Worker
126*9880d681SAndroid Build Coastguard Workerfor.body:                                         ; preds = %for.body, %entry
127*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end, label %for.body
128*9880d681SAndroid Build Coastguard Worker
129*9880d681SAndroid Build Coastguard Workerfor.end:                                          ; preds = %for.body, %entry
130*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end11, label %for.body3
131*9880d681SAndroid Build Coastguard Worker
132*9880d681SAndroid Build Coastguard Workerfor.body3:                                        ; preds = %for.end
133*9880d681SAndroid Build Coastguard Worker  unreachable
134*9880d681SAndroid Build Coastguard Worker
135*9880d681SAndroid Build Coastguard Workerfor.end11:                                        ; preds = %for.end
136*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.body, label %while.end
137*9880d681SAndroid Build Coastguard Worker
138*9880d681SAndroid Build Coastguard Workerwhile.body:                                       ; preds = %for.end11
139*9880d681SAndroid Build Coastguard Worker  unreachable
140*9880d681SAndroid Build Coastguard Worker
141*9880d681SAndroid Build Coastguard Workerwhile.end:                                        ; preds = %for.end11
142*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end115, label %for.cond109
143*9880d681SAndroid Build Coastguard Worker
144*9880d681SAndroid Build Coastguard Workerfor.cond109:                                      ; preds = %while.end
145*9880d681SAndroid Build Coastguard Worker  unreachable
146*9880d681SAndroid Build Coastguard Worker
147*9880d681SAndroid Build Coastguard Workerif.end115:                                        ; preds = %while.end
148*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.body119.lr.ph.lr.ph, label %for.cond612
149*9880d681SAndroid Build Coastguard Worker
150*9880d681SAndroid Build Coastguard Workerwhile.body119.lr.ph.lr.ph:                        ; preds = %if.end115
151*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond612, label %if.end123.us
152*9880d681SAndroid Build Coastguard Worker
153*9880d681SAndroid Build Coastguard Workerif.end123.us:                                     ; preds = %while.body119.lr.ph.lr.ph
154*9880d681SAndroid Build Coastguard Worker  br label %for.cond132.us
155*9880d681SAndroid Build Coastguard Worker
156*9880d681SAndroid Build Coastguard Workerfor.cond132.us:                                   ; preds = %for.cond132.us, %if.end123.us
157*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.then136.us, label %for.cond132.us
158*9880d681SAndroid Build Coastguard Worker
159*9880d681SAndroid Build Coastguard Workerif.then136.us:                                    ; preds = %for.cond132.us
160*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.end220, label %while.body211
161*9880d681SAndroid Build Coastguard Worker
162*9880d681SAndroid Build Coastguard Workerwhile.body211:                                    ; preds = %while.body211, %if.then136.us
163*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.end220, label %while.body211
164*9880d681SAndroid Build Coastguard Worker
165*9880d681SAndroid Build Coastguard Workerwhile.end220:                                     ; preds = %while.body211, %if.then136.us
166*9880d681SAndroid Build Coastguard Worker  br label %for.cond246.outer
167*9880d681SAndroid Build Coastguard Worker
168*9880d681SAndroid Build Coastguard Workerfor.cond246.outer:                                ; preds = %for.inc558, %for.cond394.preheader, %if.then274, %for.cond404.preheader, %while.end220
169*9880d681SAndroid Build Coastguard Worker  br label %for.cond246
170*9880d681SAndroid Build Coastguard Worker
171*9880d681SAndroid Build Coastguard Workerfor.cond246:                                      ; preds = %for.cond372.loopexit, %for.cond246.outer
172*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end562, label %if.end250
173*9880d681SAndroid Build Coastguard Worker
174*9880d681SAndroid Build Coastguard Workerif.end250:                                        ; preds = %for.cond246
175*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end256, label %for.end562
176*9880d681SAndroid Build Coastguard Worker
177*9880d681SAndroid Build Coastguard Workerif.end256:                                        ; preds = %if.end250
178*9880d681SAndroid Build Coastguard Worker  %0 = load i32, i32* undef, align 4
179*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.then274, label %for.cond404.preheader
180*9880d681SAndroid Build Coastguard Worker
181*9880d681SAndroid Build Coastguard Workerfor.cond404.preheader:                            ; preds = %if.end256
182*9880d681SAndroid Build Coastguard Worker  %add406 = add i32 0, %0
183*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond246.outer, label %for.body409.lr.ph
184*9880d681SAndroid Build Coastguard Worker
185*9880d681SAndroid Build Coastguard Workerfor.body409.lr.ph:                                ; preds = %for.cond404.preheader
186*9880d681SAndroid Build Coastguard Worker  br label %for.body409
187*9880d681SAndroid Build Coastguard Worker
188*9880d681SAndroid Build Coastguard Workerif.then274:                                       ; preds = %if.end256
189*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond246.outer, label %if.end309
190*9880d681SAndroid Build Coastguard Worker
191*9880d681SAndroid Build Coastguard Workerif.end309:                                        ; preds = %if.then274
192*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond372.loopexit, label %for.body361
193*9880d681SAndroid Build Coastguard Worker
194*9880d681SAndroid Build Coastguard Workerfor.body361:                                      ; preds = %for.body361, %if.end309
195*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond372.loopexit, label %for.body361
196*9880d681SAndroid Build Coastguard Worker
197*9880d681SAndroid Build Coastguard Workerfor.cond372.loopexit:                             ; preds = %for.body361, %if.end309
198*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond394.preheader, label %for.cond246
199*9880d681SAndroid Build Coastguard Worker
200*9880d681SAndroid Build Coastguard Workerfor.cond394.preheader:                            ; preds = %for.cond372.loopexit
201*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond246.outer, label %for.body397
202*9880d681SAndroid Build Coastguard Worker
203*9880d681SAndroid Build Coastguard Workerfor.body397:                                      ; preds = %for.cond394.preheader
204*9880d681SAndroid Build Coastguard Worker  unreachable
205*9880d681SAndroid Build Coastguard Worker
206*9880d681SAndroid Build Coastguard Workerfor.body409:                                      ; preds = %for.inc558, %for.body409.lr.ph
207*9880d681SAndroid Build Coastguard Worker  %k.029 = phi i32 [ 1, %for.body409.lr.ph ], [ %inc559, %for.inc558 ]
208*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.then412, label %if.else433
209*9880d681SAndroid Build Coastguard Worker
210*9880d681SAndroid Build Coastguard Workerif.then412:                                       ; preds = %for.body409
211*9880d681SAndroid Build Coastguard Worker  br label %if.end440
212*9880d681SAndroid Build Coastguard Worker
213*9880d681SAndroid Build Coastguard Workerif.else433:                                       ; preds = %for.body409
214*9880d681SAndroid Build Coastguard Worker  br label %if.end440
215*9880d681SAndroid Build Coastguard Worker
216*9880d681SAndroid Build Coastguard Workerif.end440:                                        ; preds = %if.else433, %if.then412
217*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.inc558, label %if.end461
218*9880d681SAndroid Build Coastguard Worker
219*9880d681SAndroid Build Coastguard Workerif.end461:                                        ; preds = %if.end440
220*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond528.loopexit, label %for.body517
221*9880d681SAndroid Build Coastguard Worker
222*9880d681SAndroid Build Coastguard Workerfor.body517:                                      ; preds = %for.body517, %if.end461
223*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond528.loopexit, label %for.body517
224*9880d681SAndroid Build Coastguard Worker
225*9880d681SAndroid Build Coastguard Workerfor.cond528.loopexit:                             ; preds = %for.body517, %if.end461
226*9880d681SAndroid Build Coastguard Worker  br label %for.inc558
227*9880d681SAndroid Build Coastguard Worker
228*9880d681SAndroid Build Coastguard Workerfor.inc558:                                       ; preds = %for.cond528.loopexit, %if.end440
229*9880d681SAndroid Build Coastguard Worker  %inc559 = add nsw i32 %k.029, 1
230*9880d681SAndroid Build Coastguard Worker  %cmp407 = icmp sgt i32 %inc559, %add406
231*9880d681SAndroid Build Coastguard Worker  br i1 %cmp407, label %for.cond246.outer, label %for.body409
232*9880d681SAndroid Build Coastguard Worker
233*9880d681SAndroid Build Coastguard Workerfor.end562:                                       ; preds = %if.end250, %for.cond246
234*9880d681SAndroid Build Coastguard Worker  unreachable
235*9880d681SAndroid Build Coastguard Worker
236*9880d681SAndroid Build Coastguard Workerfor.cond612:                                      ; preds = %while.body119.lr.ph.lr.ph, %if.end115
237*9880d681SAndroid Build Coastguard Worker  unreachable
238*9880d681SAndroid Build Coastguard Worker}
239*9880d681SAndroid Build Coastguard Worker
240*9880d681SAndroid Build Coastguard Workerdefine void @test3() nounwind uwtable ssp {
241*9880d681SAndroid Build Coastguard Workerentry:
242*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end, label %for.body
243*9880d681SAndroid Build Coastguard Worker
244*9880d681SAndroid Build Coastguard Workerfor.body:                                         ; preds = %for.body, %entry
245*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end, label %for.body
246*9880d681SAndroid Build Coastguard Worker
247*9880d681SAndroid Build Coastguard Workerfor.end:                                          ; preds = %for.body, %entry
248*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end11, label %for.body3
249*9880d681SAndroid Build Coastguard Worker
250*9880d681SAndroid Build Coastguard Workerfor.body3:                                        ; preds = %for.end
251*9880d681SAndroid Build Coastguard Worker  unreachable
252*9880d681SAndroid Build Coastguard Worker
253*9880d681SAndroid Build Coastguard Workerfor.end11:                                        ; preds = %for.end
254*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.body, label %while.end
255*9880d681SAndroid Build Coastguard Worker
256*9880d681SAndroid Build Coastguard Workerwhile.body:                                       ; preds = %for.end11
257*9880d681SAndroid Build Coastguard Worker  unreachable
258*9880d681SAndroid Build Coastguard Worker
259*9880d681SAndroid Build Coastguard Workerwhile.end:                                        ; preds = %for.end11
260*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end115, label %for.cond109
261*9880d681SAndroid Build Coastguard Worker
262*9880d681SAndroid Build Coastguard Workerfor.cond109:                                      ; preds = %while.end
263*9880d681SAndroid Build Coastguard Worker  unreachable
264*9880d681SAndroid Build Coastguard Worker
265*9880d681SAndroid Build Coastguard Workerif.end115:                                        ; preds = %while.end
266*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.body119.lr.ph.lr.ph, label %for.cond612
267*9880d681SAndroid Build Coastguard Worker
268*9880d681SAndroid Build Coastguard Workerwhile.body119.lr.ph.lr.ph:                        ; preds = %if.end115
269*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond612, label %if.end123.us
270*9880d681SAndroid Build Coastguard Worker
271*9880d681SAndroid Build Coastguard Workerif.end123.us:                                     ; preds = %while.body119.lr.ph.lr.ph
272*9880d681SAndroid Build Coastguard Worker  br label %for.cond132.us
273*9880d681SAndroid Build Coastguard Worker
274*9880d681SAndroid Build Coastguard Workerfor.cond132.us:                                   ; preds = %for.cond132.us, %if.end123.us
275*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.then136.us, label %for.cond132.us
276*9880d681SAndroid Build Coastguard Worker
277*9880d681SAndroid Build Coastguard Workerif.then136.us:                                    ; preds = %for.cond132.us
278*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.end220, label %while.body211
279*9880d681SAndroid Build Coastguard Worker
280*9880d681SAndroid Build Coastguard Workerwhile.body211:                                    ; preds = %while.body211, %if.then136.us
281*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %while.end220, label %while.body211
282*9880d681SAndroid Build Coastguard Worker
283*9880d681SAndroid Build Coastguard Workerwhile.end220:                                     ; preds = %while.body211, %if.then136.us
284*9880d681SAndroid Build Coastguard Worker  br label %for.cond246.outer
285*9880d681SAndroid Build Coastguard Worker
286*9880d681SAndroid Build Coastguard Workerfor.cond246.outer:                                ; preds = %for.inc558, %for.cond394.preheader, %if.then274, %for.cond404.preheader, %while.end220
287*9880d681SAndroid Build Coastguard Worker  br label %for.cond246
288*9880d681SAndroid Build Coastguard Worker
289*9880d681SAndroid Build Coastguard Workerfor.cond246:                                      ; preds = %for.cond372.loopexit, %for.cond246.outer
290*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end562, label %if.end250
291*9880d681SAndroid Build Coastguard Worker
292*9880d681SAndroid Build Coastguard Workerif.end250:                                        ; preds = %for.cond246
293*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end256, label %for.end562
294*9880d681SAndroid Build Coastguard Worker
295*9880d681SAndroid Build Coastguard Workerif.end256:                                        ; preds = %if.end250
296*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.then274, label %for.cond404.preheader
297*9880d681SAndroid Build Coastguard Worker
298*9880d681SAndroid Build Coastguard Workerfor.cond404.preheader:                            ; preds = %if.end256
299*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond246.outer, label %for.body409.lr.ph
300*9880d681SAndroid Build Coastguard Worker
301*9880d681SAndroid Build Coastguard Workerfor.body409.lr.ph:                                ; preds = %for.cond404.preheader
302*9880d681SAndroid Build Coastguard Worker  br label %for.body409
303*9880d681SAndroid Build Coastguard Worker
304*9880d681SAndroid Build Coastguard Workerif.then274:                                       ; preds = %if.end256
305*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond246.outer, label %if.end309
306*9880d681SAndroid Build Coastguard Worker
307*9880d681SAndroid Build Coastguard Workerif.end309:                                        ; preds = %if.then274
308*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond372.loopexit, label %for.body361
309*9880d681SAndroid Build Coastguard Worker
310*9880d681SAndroid Build Coastguard Workerfor.body361:                                      ; preds = %for.body361, %if.end309
311*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond372.loopexit, label %for.body361
312*9880d681SAndroid Build Coastguard Worker
313*9880d681SAndroid Build Coastguard Workerfor.cond372.loopexit:                             ; preds = %for.body361, %if.end309
314*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond394.preheader, label %for.cond246
315*9880d681SAndroid Build Coastguard Worker
316*9880d681SAndroid Build Coastguard Workerfor.cond394.preheader:                            ; preds = %for.cond372.loopexit
317*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond246.outer, label %for.body397
318*9880d681SAndroid Build Coastguard Worker
319*9880d681SAndroid Build Coastguard Workerfor.body397:                                      ; preds = %for.cond394.preheader
320*9880d681SAndroid Build Coastguard Worker  unreachable
321*9880d681SAndroid Build Coastguard Worker
322*9880d681SAndroid Build Coastguard Workerfor.body409:                                      ; preds = %for.inc558, %for.body409.lr.ph
323*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.then412, label %if.else433
324*9880d681SAndroid Build Coastguard Worker
325*9880d681SAndroid Build Coastguard Workerif.then412:                                       ; preds = %for.body409
326*9880d681SAndroid Build Coastguard Worker  br label %if.end440
327*9880d681SAndroid Build Coastguard Worker
328*9880d681SAndroid Build Coastguard Workerif.else433:                                       ; preds = %for.body409
329*9880d681SAndroid Build Coastguard Worker  br label %if.end440
330*9880d681SAndroid Build Coastguard Worker
331*9880d681SAndroid Build Coastguard Workerif.end440:                                        ; preds = %if.else433, %if.then412
332*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.inc558, label %if.end461
333*9880d681SAndroid Build Coastguard Worker
334*9880d681SAndroid Build Coastguard Workerif.end461:                                        ; preds = %if.end440
335*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond528.loopexit, label %for.body517
336*9880d681SAndroid Build Coastguard Worker
337*9880d681SAndroid Build Coastguard Workerfor.body517:                                      ; preds = %for.body517, %if.end461
338*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond528.loopexit, label %for.body517
339*9880d681SAndroid Build Coastguard Worker
340*9880d681SAndroid Build Coastguard Workerfor.cond528.loopexit:                             ; preds = %for.body517, %if.end461
341*9880d681SAndroid Build Coastguard Worker  br label %for.inc558
342*9880d681SAndroid Build Coastguard Worker
343*9880d681SAndroid Build Coastguard Workerfor.inc558:                                       ; preds = %for.cond528.loopexit, %if.end440
344*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond246.outer, label %for.body409
345*9880d681SAndroid Build Coastguard Worker
346*9880d681SAndroid Build Coastguard Workerfor.end562:                                       ; preds = %if.end250, %for.cond246
347*9880d681SAndroid Build Coastguard Worker  unreachable
348*9880d681SAndroid Build Coastguard Worker
349*9880d681SAndroid Build Coastguard Workerfor.cond612:                                      ; preds = %while.body119.lr.ph.lr.ph, %if.end115
350*9880d681SAndroid Build Coastguard Worker  unreachable
351*9880d681SAndroid Build Coastguard Worker}
352*9880d681SAndroid Build Coastguard Worker
353*9880d681SAndroid Build Coastguard Workerdefine void @test4() nounwind uwtable ssp {
354*9880d681SAndroid Build Coastguard Workerentry:
355*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end8, label %if.else
356*9880d681SAndroid Build Coastguard Worker
357*9880d681SAndroid Build Coastguard Workerif.else:                                          ; preds = %entry
358*9880d681SAndroid Build Coastguard Worker  br label %if.end8
359*9880d681SAndroid Build Coastguard Worker
360*9880d681SAndroid Build Coastguard Workerif.end8:                                          ; preds = %if.else, %entry
361*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end26, label %if.else22
362*9880d681SAndroid Build Coastguard Worker
363*9880d681SAndroid Build Coastguard Workerif.else22:                                        ; preds = %if.end8
364*9880d681SAndroid Build Coastguard Worker  br label %if.end26
365*9880d681SAndroid Build Coastguard Worker
366*9880d681SAndroid Build Coastguard Workerif.end26:                                         ; preds = %if.else22, %if.end8
367*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end35, label %if.else31
368*9880d681SAndroid Build Coastguard Worker
369*9880d681SAndroid Build Coastguard Workerif.else31:                                        ; preds = %if.end26
370*9880d681SAndroid Build Coastguard Worker  br label %if.end35
371*9880d681SAndroid Build Coastguard Worker
372*9880d681SAndroid Build Coastguard Workerif.end35:                                         ; preds = %if.else31, %if.end26
373*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.end226, label %for.body.lr.ph
374*9880d681SAndroid Build Coastguard Worker
375*9880d681SAndroid Build Coastguard Workerfor.body.lr.ph:                                   ; preds = %if.end35
376*9880d681SAndroid Build Coastguard Worker  br label %for.body48
377*9880d681SAndroid Build Coastguard Worker
378*9880d681SAndroid Build Coastguard Workerfor.body48:                                       ; preds = %for.inc221, %for.body.lr.ph
379*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.inc221, label %for.body65.lr.ph
380*9880d681SAndroid Build Coastguard Worker
381*9880d681SAndroid Build Coastguard Workerfor.body65.lr.ph:                                 ; preds = %for.body48
382*9880d681SAndroid Build Coastguard Worker  %0 = load i32, i32* undef, align 4
383*9880d681SAndroid Build Coastguard Worker  %1 = sext i32 %0 to i64
384*9880d681SAndroid Build Coastguard Worker  br label %for.body65.us
385*9880d681SAndroid Build Coastguard Worker
386*9880d681SAndroid Build Coastguard Workerfor.body65.us:                                    ; preds = %for.inc219.us, %for.body65.lr.ph
387*9880d681SAndroid Build Coastguard Worker  %indvars.iv = phi i64 [ %indvars.iv.next, %for.inc219.us ], [ 1, %for.body65.lr.ph ]
388*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.inc219.us, label %if.end72.us
389*9880d681SAndroid Build Coastguard Worker
390*9880d681SAndroid Build Coastguard Workerif.end72.us:                                      ; preds = %for.body65.us
391*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end93.us, label %if.then76.us
392*9880d681SAndroid Build Coastguard Worker
393*9880d681SAndroid Build Coastguard Workerif.then76.us:                                     ; preds = %if.end72.us
394*9880d681SAndroid Build Coastguard Worker  br label %if.end93.us
395*9880d681SAndroid Build Coastguard Worker
396*9880d681SAndroid Build Coastguard Workerif.end93.us:                                      ; preds = %if.then76.us, %if.end72.us
397*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %if.end110.us, label %for.inc219.us
398*9880d681SAndroid Build Coastguard Worker
399*9880d681SAndroid Build Coastguard Workerif.end110.us:                                     ; preds = %if.end93.us
400*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.inc219.us, label %for.body142.us
401*9880d681SAndroid Build Coastguard Worker
402*9880d681SAndroid Build Coastguard Workerfor.body142.us:                                   ; preds = %for.cond139.loopexit.us, %if.end110.us
403*9880d681SAndroid Build Coastguard Worker  br label %for.cond152.us
404*9880d681SAndroid Build Coastguard Worker
405*9880d681SAndroid Build Coastguard Workerfor.cond152.us:                                   ; preds = %for.cond152.us, %for.body142.us
406*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.cond139.loopexit.us, label %for.cond152.us
407*9880d681SAndroid Build Coastguard Worker
408*9880d681SAndroid Build Coastguard Workerfor.inc219.us:                                    ; preds = %for.cond139.loopexit.us, %if.end110.us, %if.end93.us, %for.body65.us
409*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
410*9880d681SAndroid Build Coastguard Worker  %cmp64.us = icmp sgt i64 %indvars.iv.next, %1
411*9880d681SAndroid Build Coastguard Worker  br i1 %cmp64.us, label %for.inc221, label %for.body65.us
412*9880d681SAndroid Build Coastguard Worker
413*9880d681SAndroid Build Coastguard Workerfor.cond139.loopexit.us:                          ; preds = %for.cond152.us
414*9880d681SAndroid Build Coastguard Worker  br i1 undef, label %for.inc219.us, label %for.body142.us
415*9880d681SAndroid Build Coastguard Worker
416*9880d681SAndroid Build Coastguard Workerfor.inc221:                                       ; preds = %for.inc219.us, %for.body48
417*9880d681SAndroid Build Coastguard Worker  br label %for.body48
418*9880d681SAndroid Build Coastguard Worker
419*9880d681SAndroid Build Coastguard Workerfor.end226:                                       ; preds = %if.end35
420*9880d681SAndroid Build Coastguard Worker  ret void
421*9880d681SAndroid Build Coastguard Worker}
422