1 ; RUN: opt %loadPolly -polly-stmt-granularity=bb -polly-print-scops -disable-output < %s | FileCheck %s
5 ; CHECK-NEXT: Domain :=
6 ; CHECK-NEXT: [tmp] -> { Stmt_bb9[] };
7 ; CHECK-NEXT: Schedule :=
8 ; CHECK-NEXT: [tmp] -> { Stmt_bb9[] -> [0] };
9 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
10 ; CHECK-NEXT: [tmp] -> { Stmt_bb9[] -> MemRef_tmp8[] };
11 ; CHECK-NEXT: Stmt_bb12
12 ; CHECK-NEXT: Domain :=
13 ; CHECK-NEXT: [tmp] -> { Stmt_bb12[] : 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
14 ; CHECK-NEXT: Schedule :=
15 ; CHECK-NEXT: [tmp] -> { Stmt_bb12[] -> [1] };
16 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
17 ; CHECK-NEXT: [tmp] -> { Stmt_bb12[] -> MemRef_tmp8[] };
18 ; CHECK-NEXT: Stmt_bb15
19 ; CHECK-NEXT: Domain :=
20 ; CHECK-NEXT: [tmp] -> { Stmt_bb15[] : -268435455 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
21 ; CHECK-NEXT: Schedule :=
22 ; CHECK-NEXT: [tmp] -> { Stmt_bb15[] -> [2] };
23 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
24 ; CHECK-NEXT: [tmp] -> { Stmt_bb15[] -> MemRef_tmp8[] };
25 ; CHECK-NEXT: Stmt_bb18
26 ; CHECK-NEXT: Domain :=
27 ; CHECK-NEXT: [tmp] -> { Stmt_bb18[] : -134217727 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
28 ; CHECK-NEXT: Schedule :=
29 ; CHECK-NEXT: [tmp] -> { Stmt_bb18[] -> [3] };
30 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
31 ; CHECK-NEXT: [tmp] -> { Stmt_bb18[] -> MemRef_tmp8[] };
32 ; CHECK-NEXT: Stmt_bb21
33 ; CHECK-NEXT: Domain :=
34 ; CHECK-NEXT: [tmp] -> { Stmt_bb21[] : -67108863 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
35 ; CHECK-NEXT: Schedule :=
36 ; CHECK-NEXT: [tmp] -> { Stmt_bb21[] -> [4] };
37 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
38 ; CHECK-NEXT: [tmp] -> { Stmt_bb21[] -> MemRef_tmp8[] };
39 ; CHECK-NEXT: Stmt_bb24
40 ; CHECK-NEXT: Domain :=
41 ; CHECK-NEXT: [tmp] -> { Stmt_bb24[] : -33554431 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
42 ; CHECK-NEXT: Schedule :=
43 ; CHECK-NEXT: [tmp] -> { Stmt_bb24[] -> [5] };
44 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
45 ; CHECK-NEXT: [tmp] -> { Stmt_bb24[] -> MemRef_tmp8[] };
46 ; CHECK-NEXT: Stmt_bb27
47 ; CHECK-NEXT: Domain :=
48 ; CHECK-NEXT: [tmp] -> { Stmt_bb27[] : -16777215 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
49 ; CHECK-NEXT: Schedule :=
50 ; CHECK-NEXT: [tmp] -> { Stmt_bb27[] -> [6] };
51 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
52 ; CHECK-NEXT: [tmp] -> { Stmt_bb27[] -> MemRef_tmp8[] };
53 ; CHECK-NEXT: Stmt_bb30
54 ; CHECK-NEXT: Domain :=
55 ; CHECK-NEXT: [tmp] -> { Stmt_bb30[] : -8388607 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
56 ; CHECK-NEXT: Schedule :=
57 ; CHECK-NEXT: [tmp] -> { Stmt_bb30[] -> [7] };
58 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
59 ; CHECK-NEXT: [tmp] -> { Stmt_bb30[] -> MemRef_tmp8[] };
60 ; CHECK-NEXT: Stmt_bb33
61 ; CHECK-NEXT: Domain :=
62 ; CHECK-NEXT: [tmp] -> { Stmt_bb33[] : -4194303 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
63 ; CHECK-NEXT: Schedule :=
64 ; CHECK-NEXT: [tmp] -> { Stmt_bb33[] -> [8] };
65 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
66 ; CHECK-NEXT: [tmp] -> { Stmt_bb33[] -> MemRef_tmp8[] };
67 ; CHECK-NEXT: Stmt_bb36
68 ; CHECK-NEXT: Domain :=
69 ; CHECK-NEXT: [tmp] -> { Stmt_bb36[] : -2097151 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
70 ; CHECK-NEXT: Schedule :=
71 ; CHECK-NEXT: [tmp] -> { Stmt_bb36[] -> [9] };
72 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
73 ; CHECK-NEXT: [tmp] -> { Stmt_bb36[] -> MemRef_tmp8[] };
74 ; CHECK-NEXT: Stmt_bb39
75 ; CHECK-NEXT: Domain :=
76 ; CHECK-NEXT: [tmp] -> { Stmt_bb39[] : -1048575 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
77 ; CHECK-NEXT: Schedule :=
78 ; CHECK-NEXT: [tmp] -> { Stmt_bb39[] -> [10] };
79 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
80 ; CHECK-NEXT: [tmp] -> { Stmt_bb39[] -> MemRef_tmp8[] };
81 ; CHECK-NEXT: Stmt_bb42
82 ; CHECK-NEXT: Domain :=
83 ; CHECK-NEXT: [tmp] -> { Stmt_bb42[] : -524287 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
84 ; CHECK-NEXT: Schedule :=
85 ; CHECK-NEXT: [tmp] -> { Stmt_bb42[] -> [11] };
86 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
87 ; CHECK-NEXT: [tmp] -> { Stmt_bb42[] -> MemRef_tmp8[] };
88 ; CHECK-NEXT: Stmt_bb45
89 ; CHECK-NEXT: Domain :=
90 ; CHECK-NEXT: [tmp] -> { Stmt_bb45[] : -262143 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
91 ; CHECK-NEXT: Schedule :=
92 ; CHECK-NEXT: [tmp] -> { Stmt_bb45[] -> [12] };
93 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
94 ; CHECK-NEXT: [tmp] -> { Stmt_bb45[] -> MemRef_tmp8[] };
95 ; CHECK-NEXT: Stmt_bb48
96 ; CHECK-NEXT: Domain :=
97 ; CHECK-NEXT: [tmp] -> { Stmt_bb48[] : -131071 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
98 ; CHECK-NEXT: Schedule :=
99 ; CHECK-NEXT: [tmp] -> { Stmt_bb48[] -> [13] };
100 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
101 ; CHECK-NEXT: [tmp] -> { Stmt_bb48[] -> MemRef_tmp8[] };
102 ; CHECK-NEXT: Stmt_bb51
103 ; CHECK-NEXT: Domain :=
104 ; CHECK-NEXT: [tmp] -> { Stmt_bb51[] : -65535 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
105 ; CHECK-NEXT: Schedule :=
106 ; CHECK-NEXT: [tmp] -> { Stmt_bb51[] -> [14] };
107 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
108 ; CHECK-NEXT: [tmp] -> { Stmt_bb51[] -> MemRef_tmp8[] };
109 ; CHECK-NEXT: Stmt_bb54
110 ; CHECK-NEXT: Domain :=
111 ; CHECK-NEXT: [tmp] -> { Stmt_bb54[] : -32767 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
112 ; CHECK-NEXT: Schedule :=
113 ; CHECK-NEXT: [tmp] -> { Stmt_bb54[] -> [15] };
114 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
115 ; CHECK-NEXT: [tmp] -> { Stmt_bb54[] -> MemRef_tmp8[] };
116 ; CHECK-NEXT: Stmt_bb57
117 ; CHECK-NEXT: Domain :=
118 ; CHECK-NEXT: [tmp] -> { Stmt_bb57[] : -16383 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
119 ; CHECK-NEXT: Schedule :=
120 ; CHECK-NEXT: [tmp] -> { Stmt_bb57[] -> [16] };
121 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
122 ; CHECK-NEXT: [tmp] -> { Stmt_bb57[] -> MemRef_tmp8[] };
123 ; CHECK-NEXT: Stmt_bb60
124 ; CHECK-NEXT: Domain :=
125 ; CHECK-NEXT: [tmp] -> { Stmt_bb60[] : -8191 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
126 ; CHECK-NEXT: Schedule :=
127 ; CHECK-NEXT: [tmp] -> { Stmt_bb60[] -> [17] };
128 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
129 ; CHECK-NEXT: [tmp] -> { Stmt_bb60[] -> MemRef_tmp8[] };
130 ; CHECK-NEXT: Stmt_bb63
131 ; CHECK-NEXT: Domain :=
132 ; CHECK-NEXT: [tmp] -> { Stmt_bb63[] : -4095 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
133 ; CHECK-NEXT: Schedule :=
134 ; CHECK-NEXT: [tmp] -> { Stmt_bb63[] -> [18] };
135 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
136 ; CHECK-NEXT: [tmp] -> { Stmt_bb63[] -> MemRef_tmp8[] };
137 ; CHECK-NEXT: Stmt_bb66
138 ; CHECK-NEXT: Domain :=
139 ; CHECK-NEXT: [tmp] -> { Stmt_bb66[] : -2047 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
140 ; CHECK-NEXT: Schedule :=
141 ; CHECK-NEXT: [tmp] -> { Stmt_bb66[] -> [19] };
142 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
143 ; CHECK-NEXT: [tmp] -> { Stmt_bb66[] -> MemRef_tmp8[] };
144 ; CHECK-NEXT: Stmt_bb69
145 ; CHECK-NEXT: Domain :=
146 ; CHECK-NEXT: [tmp] -> { Stmt_bb69[] : -1023 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
147 ; CHECK-NEXT: Schedule :=
148 ; CHECK-NEXT: [tmp] -> { Stmt_bb69[] -> [20] };
149 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
150 ; CHECK-NEXT: [tmp] -> { Stmt_bb69[] -> MemRef_tmp8[] };
151 ; CHECK-NEXT: Stmt_bb72
152 ; CHECK-NEXT: Domain :=
153 ; CHECK-NEXT: [tmp] -> { Stmt_bb72[] : -511 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
154 ; CHECK-NEXT: Schedule :=
155 ; CHECK-NEXT: [tmp] -> { Stmt_bb72[] -> [21] };
156 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
157 ; CHECK-NEXT: [tmp] -> { Stmt_bb72[] -> MemRef_tmp8[] };
158 ; CHECK-NEXT: Stmt_bb75
159 ; CHECK-NEXT: Domain :=
160 ; CHECK-NEXT: [tmp] -> { Stmt_bb75[] : -255 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
161 ; CHECK-NEXT: Schedule :=
162 ; CHECK-NEXT: [tmp] -> { Stmt_bb75[] -> [22] };
163 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
164 ; CHECK-NEXT: [tmp] -> { Stmt_bb75[] -> MemRef_tmp8[] };
165 ; CHECK-NEXT: Stmt_bb78
166 ; CHECK-NEXT: Domain :=
167 ; CHECK-NEXT: [tmp] -> { Stmt_bb78[] : -127 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
168 ; CHECK-NEXT: Schedule :=
169 ; CHECK-NEXT: [tmp] -> { Stmt_bb78[] -> [23] };
170 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
171 ; CHECK-NEXT: [tmp] -> { Stmt_bb78[] -> MemRef_tmp8[] };
172 ; CHECK-NEXT: Stmt_bb81
173 ; CHECK-NEXT: Domain :=
174 ; CHECK-NEXT: [tmp] -> { Stmt_bb81[] : -63 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
175 ; CHECK-NEXT: Schedule :=
176 ; CHECK-NEXT: [tmp] -> { Stmt_bb81[] -> [24] };
177 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
178 ; CHECK-NEXT: [tmp] -> { Stmt_bb81[] -> MemRef_tmp8[] };
179 ; CHECK-NEXT: Stmt_bb84
180 ; CHECK-NEXT: Domain :=
181 ; CHECK-NEXT: [tmp] -> { Stmt_bb84[] : -31 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
182 ; CHECK-NEXT: Schedule :=
183 ; CHECK-NEXT: [tmp] -> { Stmt_bb84[] -> [25] };
184 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
185 ; CHECK-NEXT: [tmp] -> { Stmt_bb84[] -> MemRef_tmp8[] };
186 ; CHECK-NEXT: Stmt_bb87
187 ; CHECK-NEXT: Domain :=
188 ; CHECK-NEXT: [tmp] -> { Stmt_bb87[] : -15 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
189 ; CHECK-NEXT: Schedule :=
190 ; CHECK-NEXT: [tmp] -> { Stmt_bb87[] -> [26] };
191 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
192 ; CHECK-NEXT: [tmp] -> { Stmt_bb87[] -> MemRef_tmp8[] };
193 ; CHECK-NEXT: Stmt_bb90
194 ; CHECK-NEXT: Domain :=
195 ; CHECK-NEXT: [tmp] -> { Stmt_bb90[] : -7 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
196 ; CHECK-NEXT: Schedule :=
197 ; CHECK-NEXT: [tmp] -> { Stmt_bb90[] -> [27] };
198 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
199 ; CHECK-NEXT: [tmp] -> { Stmt_bb90[] -> MemRef_tmp8[] };
200 ; CHECK-NEXT: Stmt_bb93
201 ; CHECK-NEXT: Domain :=
202 ; CHECK-NEXT: [tmp] -> { Stmt_bb93[] : -3 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
203 ; CHECK-NEXT: Schedule :=
204 ; CHECK-NEXT: [tmp] -> { Stmt_bb93[] -> [28] };
205 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
206 ; CHECK-NEXT: [tmp] -> { Stmt_bb93[] -> MemRef_tmp8[] };
207 ; CHECK-NEXT: Stmt_bb96
208 ; CHECK-NEXT: Domain :=
209 ; CHECK-NEXT: [tmp] -> { Stmt_bb96[] : -1 + tmp <= 1073741824*floor((536870912 + tmp)/1073741824) <= tmp };
210 ; CHECK-NEXT: Schedule :=
211 ; CHECK-NEXT: [tmp] -> { Stmt_bb96[] -> [29] };
212 ; CHECK-NEXT: MustWriteAccess := [Reduction Type: NONE] [Scalar: 1]
213 ; CHECK-NEXT: [tmp] -> { Stmt_bb96[] -> MemRef_tmp8[] };
216 target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
217 target triple = "thumbv7--linux-android"
219 define i32 @f(ptr nocapture readonly %arg5) {
221 %tmp = load i32, ptr %arg5, align 4
222 %tmp6 = icmp eq i32 %tmp, 0
223 br i1 %tmp6, label %bb9, label %bb7
225 bb7: ; preds = %bb96, %bb93, %bb90, %bb87, %bb84, %bb81, %bb78, %bb75, %bb72, %bb69, %bb66, %bb63, %bb60, %bb57, %bb54, %bb51, %bb48, %bb45, %bb42, %bb39, %bb36, %bb33, %bb30, %bb27, %bb24, %bb21, %bb18, %bb15, %bb12, %bb9, %bb
226 %tmp8 = phi i32 [ 30, %bb93 ], [ 29, %bb90 ], [ 28, %bb87 ], [ 27, %bb84 ], [ 26, %bb81 ], [ 25, %bb78 ], [ 24, %bb75 ], [ 23, %bb72 ], [ 22, %bb69 ], [ 21, %bb66 ], [ 20, %bb63 ], [ 19, %bb60 ], [ 18, %bb57 ], [ 17, %bb54 ], [ 16, %bb51 ], [ 15, %bb48 ], [ 14, %bb45 ], [ 13, %bb42 ], [ 12, %bb39 ], [ 11, %bb36 ], [ 10, %bb33 ], [ 9, %bb30 ], [ 8, %bb27 ], [ 7, %bb24 ], [ 6, %bb21 ], [ 5, %bb18 ], [ 4, %bb15 ], [ 3, %bb12 ], [ 2, %bb9 ], [ 1, %bb ], [ %tmp98, %bb96 ]
230 %tmp10 = and i32 %tmp, 536870912
231 %tmp11 = icmp eq i32 %tmp10, 0
232 br i1 %tmp11, label %bb12, label %bb7
235 %tmp13 = and i32 %tmp, 268435456
236 %tmp14 = icmp eq i32 %tmp13, 0
237 br i1 %tmp14, label %bb15, label %bb7
239 bb15: ; preds = %bb12
240 %tmp16 = and i32 %tmp, 134217728
241 %tmp17 = icmp eq i32 %tmp16, 0
242 br i1 %tmp17, label %bb18, label %bb7
244 bb18: ; preds = %bb15
245 %tmp19 = and i32 %tmp, 67108864
246 %tmp20 = icmp eq i32 %tmp19, 0
247 br i1 %tmp20, label %bb21, label %bb7
249 bb21: ; preds = %bb18
250 %tmp22 = and i32 %tmp, 33554432
251 %tmp23 = icmp eq i32 %tmp22, 0
252 br i1 %tmp23, label %bb24, label %bb7
254 bb24: ; preds = %bb21
255 %tmp25 = and i32 %tmp, 16777216
256 %tmp26 = icmp eq i32 %tmp25, 0
257 br i1 %tmp26, label %bb27, label %bb7
259 bb27: ; preds = %bb24
260 %tmp28 = and i32 %tmp, 8388608
261 %tmp29 = icmp eq i32 %tmp28, 0
262 br i1 %tmp29, label %bb30, label %bb7
264 bb30: ; preds = %bb27
265 %tmp31 = and i32 %tmp, 4194304
266 %tmp32 = icmp eq i32 %tmp31, 0
267 br i1 %tmp32, label %bb33, label %bb7
269 bb33: ; preds = %bb30
270 %tmp34 = and i32 %tmp, 2097152
271 %tmp35 = icmp eq i32 %tmp34, 0
272 br i1 %tmp35, label %bb36, label %bb7
274 bb36: ; preds = %bb33
275 %tmp37 = and i32 %tmp, 1048576
276 %tmp38 = icmp eq i32 %tmp37, 0
277 br i1 %tmp38, label %bb39, label %bb7
279 bb39: ; preds = %bb36
280 %tmp40 = and i32 %tmp, 524288
281 %tmp41 = icmp eq i32 %tmp40, 0
282 br i1 %tmp41, label %bb42, label %bb7
284 bb42: ; preds = %bb39
285 %tmp43 = and i32 %tmp, 262144
286 %tmp44 = icmp eq i32 %tmp43, 0
287 br i1 %tmp44, label %bb45, label %bb7
289 bb45: ; preds = %bb42
290 %tmp46 = and i32 %tmp, 131072
291 %tmp47 = icmp eq i32 %tmp46, 0
292 br i1 %tmp47, label %bb48, label %bb7
294 bb48: ; preds = %bb45
295 %tmp49 = and i32 %tmp, 65536
296 %tmp50 = icmp eq i32 %tmp49, 0
297 br i1 %tmp50, label %bb51, label %bb7
299 bb51: ; preds = %bb48
300 %tmp52 = and i32 %tmp, 32768
301 %tmp53 = icmp eq i32 %tmp52, 0
302 br i1 %tmp53, label %bb54, label %bb7
304 bb54: ; preds = %bb51
305 %tmp55 = and i32 %tmp, 16384
306 %tmp56 = icmp eq i32 %tmp55, 0
307 br i1 %tmp56, label %bb57, label %bb7
309 bb57: ; preds = %bb54
310 %tmp58 = and i32 %tmp, 8192
311 %tmp59 = icmp eq i32 %tmp58, 0
312 br i1 %tmp59, label %bb60, label %bb7
314 bb60: ; preds = %bb57
315 %tmp61 = and i32 %tmp, 4096
316 %tmp62 = icmp eq i32 %tmp61, 0
317 br i1 %tmp62, label %bb63, label %bb7
319 bb63: ; preds = %bb60
320 %tmp64 = and i32 %tmp, 2048
321 %tmp65 = icmp eq i32 %tmp64, 0
322 br i1 %tmp65, label %bb66, label %bb7
324 bb66: ; preds = %bb63
325 %tmp67 = and i32 %tmp, 1024
326 %tmp68 = icmp eq i32 %tmp67, 0
327 br i1 %tmp68, label %bb69, label %bb7
329 bb69: ; preds = %bb66
330 %tmp70 = and i32 %tmp, 512
331 %tmp71 = icmp eq i32 %tmp70, 0
332 br i1 %tmp71, label %bb72, label %bb7
334 bb72: ; preds = %bb69
335 %tmp73 = and i32 %tmp, 256
336 %tmp74 = icmp eq i32 %tmp73, 0
337 br i1 %tmp74, label %bb75, label %bb7
339 bb75: ; preds = %bb72
340 %tmp76 = and i32 %tmp, 128
341 %tmp77 = icmp eq i32 %tmp76, 0
342 br i1 %tmp77, label %bb78, label %bb7
344 bb78: ; preds = %bb75
345 %tmp79 = and i32 %tmp, 64
346 %tmp80 = icmp eq i32 %tmp79, 0
347 br i1 %tmp80, label %bb81, label %bb7
349 bb81: ; preds = %bb78
350 %tmp82 = and i32 %tmp, 32
351 %tmp83 = icmp eq i32 %tmp82, 0
352 br i1 %tmp83, label %bb84, label %bb7
354 bb84: ; preds = %bb81
355 %tmp85 = and i32 %tmp, 16
356 %tmp86 = icmp eq i32 %tmp85, 0
357 br i1 %tmp86, label %bb87, label %bb7
359 bb87: ; preds = %bb84
360 %tmp88 = and i32 %tmp, 8
361 %tmp89 = icmp eq i32 %tmp88, 0
362 br i1 %tmp89, label %bb90, label %bb7
364 bb90: ; preds = %bb87
365 %tmp91 = and i32 %tmp, 4
366 %tmp92 = icmp eq i32 %tmp91, 0
367 br i1 %tmp92, label %bb93, label %bb7
369 bb93: ; preds = %bb90
370 %tmp94 = and i32 %tmp, 2
371 %tmp95 = icmp eq i32 %tmp94, 0
372 br i1 %tmp95, label %bb96, label %bb7
374 bb96: ; preds = %bb93
375 %tmp97 = and i32 %tmp, 1
376 %tmp98 = sub nsw i32 32, %tmp97