059d34594e
SkVM has a `bit_clear` opcode dedicated to the operation `x & ~y`, but the optimizer was not smart enough to combine a bit-and with a bit-not and replace it with a bit-clear. Now, it can. Change-Id: Ida5345c3def0a4bf7afa08bb7f7835e1e2e37677 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524225 Commit-Queue: John Stiles <johnstiles@google.com> Auto-Submit: John Stiles <johnstiles@google.com> Reviewed-by: Arman Uguray <armansito@google.com>
839 lines
27 KiB
Plaintext
839 lines
27 KiB
Plaintext
$0 = colorRed (float4 : slot 1/4, L3)
|
|
$1 = colorRed (float4 : slot 2/4, L3)
|
|
$2 = colorRed (float4 : slot 3/4, L3)
|
|
$3 = colorRed (float4 : slot 4/4, L3)
|
|
$4 = colorGreen (float4 : slot 1/4, L3)
|
|
$5 = colorGreen (float4 : slot 2/4, L3)
|
|
$6 = colorGreen (float4 : slot 3/4, L3)
|
|
$7 = colorGreen (float4 : slot 4/4, L3)
|
|
$8 = kZero (int, L6)
|
|
$9 = kTen (int, L15)
|
|
$10 = [main].result (float4 : slot 1/4, L106)
|
|
$11 = [main].result (float4 : slot 2/4, L106)
|
|
$12 = [main].result (float4 : slot 3/4, L106)
|
|
$13 = [main].result (float4 : slot 4/4, L106)
|
|
$14 = pos (float2 : slot 1/2, L106)
|
|
$15 = pos (float2 : slot 2/2, L106)
|
|
$16 = five (int, L107)
|
|
$17 = [return_loop].result (int, L7)
|
|
$18 = five (int, L7)
|
|
$19 = i (int, L8)
|
|
$20 = [continue_loop].result (int, L16)
|
|
$21 = five (int, L16)
|
|
$22 = sum (int, L17)
|
|
$23 = i (int, L18)
|
|
$24 = [break_loop].result (int, L26)
|
|
$25 = five (int, L26)
|
|
$26 = sum (int, L27)
|
|
$27 = kOne (int, L28)
|
|
$28 = i (int, L29)
|
|
$29 = [loop_operator_le].result (bool, L36)
|
|
$30 = result (int4 : slot 1/4, L41)
|
|
$31 = result (int4 : slot 2/4, L41)
|
|
$32 = result (int4 : slot 3/4, L41)
|
|
$33 = result (int4 : slot 4/4, L41)
|
|
$34 = i (int, L42)
|
|
$35 = [loop_operator_lt].result (bool, L48)
|
|
$36 = result (int4 : slot 1/4, L53)
|
|
$37 = result (int4 : slot 2/4, L53)
|
|
$38 = result (int4 : slot 3/4, L53)
|
|
$39 = result (int4 : slot 4/4, L53)
|
|
$40 = i (int, L54)
|
|
$41 = [loop_operator_ge].result (bool, L60)
|
|
$42 = result (int4 : slot 1/4, L65)
|
|
$43 = result (int4 : slot 2/4, L65)
|
|
$44 = result (int4 : slot 3/4, L65)
|
|
$45 = result (int4 : slot 4/4, L65)
|
|
$46 = i (int, L66)
|
|
$47 = [loop_operator_gt].result (bool, L72)
|
|
$48 = result (int4 : slot 1/4, L77)
|
|
$49 = result (int4 : slot 2/4, L77)
|
|
$50 = result (int4 : slot 3/4, L77)
|
|
$51 = result (int4 : slot 4/4, L77)
|
|
$52 = i (int, L78)
|
|
$53 = [loop_operator_eq].result (bool, L95)
|
|
$54 = result (int4 : slot 1/4, L99)
|
|
$55 = result (int4 : slot 2/4, L99)
|
|
$56 = result (int4 : slot 3/4, L99)
|
|
$57 = result (int4 : slot 4/4, L99)
|
|
$58 = i (int, L100)
|
|
$59 = [loop_operator_ne].result (bool, L84)
|
|
$60 = result (int4 : slot 1/4, L88)
|
|
$61 = result (int4 : slot 2/4, L88)
|
|
$62 = result (int4 : slot 3/4, L88)
|
|
$63 = result (int4 : slot 4/4, L88)
|
|
$64 = i (int, L89)
|
|
F0 = half4 main(float2 pos)
|
|
F1 = int return_loop(int five)
|
|
F2 = int continue_loop(int five)
|
|
F3 = int break_loop(int five)
|
|
F4 = bool loop_operator_le()
|
|
F5 = bool loop_operator_lt()
|
|
F6 = bool loop_operator_ge()
|
|
F7 = bool loop_operator_gt()
|
|
F8 = bool loop_operator_eq()
|
|
F9 = bool loop_operator_ne()
|
|
|
|
34 registers, 760 instructions:
|
|
0 r0 = uniform32 ptr0 0
|
|
1 r1 = uniform32 ptr0 4
|
|
2 r2 = uniform32 ptr0 8
|
|
3 r3 = uniform32 ptr0 C
|
|
4 r4 = uniform32 ptr0 10
|
|
5 r5 = uniform32 ptr0 14
|
|
6 r6 = uniform32 ptr0 18
|
|
7 r7 = uniform32 ptr0 1C
|
|
8 r8 = uniform32 ptr0 20
|
|
9 r9 = splat 0 (0)
|
|
10 r10 = splat FFFFFFFF (nan)
|
|
11 r11 = splat 3F000000 (0.5)
|
|
12 r12 = eq_f32 r0 r11
|
|
13 r13 = splat A (1.4012985e-44)
|
|
14 r14 = splat 5 (7.0064923e-45)
|
|
15 r15 = splat 1 (1.4012985e-45)
|
|
16 r16 = splat 2 (2.8025969e-45)
|
|
17 r17 = splat 3 (4.2038954e-45)
|
|
18 r18 = splat 4 (5.6051939e-45)
|
|
19 r19 = splat 6 (8.4077908e-45)
|
|
20 r20 = splat 7 (9.8090893e-45)
|
|
21 r21 = splat 8 (1.1210388e-44)
|
|
22 r22 = splat 9 (1.2611686e-44)
|
|
23 r23 = splat 23 (4.9045446e-44)
|
|
24 r24 = splat F (2.1019477e-44)
|
|
loop:
|
|
25 r25 = index
|
|
26 r26 = eq_f32 r25 r11
|
|
27 r26 = bit_and r26 r12
|
|
28 trace_var 0 r26 r26 $0 = r1
|
|
29 trace_var 0 r26 r26 $1 = r2
|
|
30 trace_var 0 r26 r26 $2 = r3
|
|
31 trace_var 0 r26 r26 $3 = r4
|
|
32 trace_var 0 r26 r26 $4 = r5
|
|
33 trace_var 0 r26 r26 $5 = r6
|
|
34 trace_var 0 r26 r26 $6 = r7
|
|
35 trace_var 0 r26 r26 $7 = r8
|
|
36 trace_var 0 r26 r26 $8 = r9
|
|
37 trace_var 0 r26 r26 $9 = r13
|
|
38 trace_enter 0 r26 r26 F0
|
|
39 trace_var 0 r26 r26 $14 = r25
|
|
40 trace_var 0 r26 r26 $15 = r0
|
|
41 trace_scope 0 r26 r26 1
|
|
42 trace_line 0 r26 r26 L107
|
|
43 r25 = min_f32 r25 r8
|
|
44 r25 = max_f32 r6 r25
|
|
45 r25 = trunc r25
|
|
46 r25 = mul_i32 r25 r14
|
|
47 trace_var 0 r26 r26 $16 = r25
|
|
48 trace_line 0 r26 r26 L111
|
|
49 trace_enter 0 r26 r26 F1
|
|
50 trace_var 0 r26 r26 $18 = r25
|
|
51 trace_scope 0 r26 r26 1
|
|
52 trace_line 0 r26 r26 L8
|
|
53 trace_scope 0 r26 r26 1
|
|
54 trace_var 0 r26 r26 $19 = r9
|
|
55 trace_scope 0 r26 r26 1
|
|
56 trace_line 0 r26 r26 L9
|
|
57 r27 = eq_i32 r25 r9
|
|
58 trace_scope 0 r27 r26 1
|
|
59 trace_line 0 r27 r26 L9
|
|
60 trace_var 0 r27 r26 $17 = r9
|
|
61 trace_scope 0 r27 r26 -1
|
|
62 trace_scope 0 r26 r26 -1
|
|
63 r28 = bit_xor r27 r10
|
|
64 trace_line 0 r28 r26 L8
|
|
65 trace_var 0 r28 r26 $19 = r15
|
|
66 trace_scope 0 r28 r26 1
|
|
67 trace_line 0 r28 r26 L9
|
|
68 r29 = eq_i32 r25 r15
|
|
69 r29 = bit_clear r29 r27
|
|
70 trace_scope 0 r29 r26 1
|
|
71 trace_line 0 r29 r26 L9
|
|
72 r30 = bit_and r29 r15
|
|
73 trace_var 0 r29 r26 $17 = r30
|
|
74 r27 = bit_or r27 r29
|
|
75 trace_scope 0 r29 r26 -1
|
|
76 trace_scope 0 r28 r26 -1
|
|
77 r28 = bit_xor r27 r10
|
|
78 trace_line 0 r28 r26 L8
|
|
79 trace_var 0 r28 r26 $19 = r16
|
|
80 trace_scope 0 r28 r26 1
|
|
81 trace_line 0 r28 r26 L9
|
|
82 r29 = eq_i32 r25 r16
|
|
83 r29 = bit_clear r29 r27
|
|
84 trace_scope 0 r29 r26 1
|
|
85 trace_line 0 r29 r26 L9
|
|
86 r30 = select r29 r16 r30
|
|
87 trace_var 0 r29 r26 $17 = r30
|
|
88 r27 = bit_or r27 r29
|
|
89 trace_scope 0 r29 r26 -1
|
|
90 trace_scope 0 r28 r26 -1
|
|
91 r28 = bit_xor r27 r10
|
|
92 trace_line 0 r28 r26 L8
|
|
93 trace_var 0 r28 r26 $19 = r17
|
|
94 trace_scope 0 r28 r26 1
|
|
95 trace_line 0 r28 r26 L9
|
|
96 r29 = eq_i32 r25 r17
|
|
97 r29 = bit_clear r29 r27
|
|
98 trace_scope 0 r29 r26 1
|
|
99 trace_line 0 r29 r26 L9
|
|
100 r30 = select r29 r17 r30
|
|
101 trace_var 0 r29 r26 $17 = r30
|
|
102 r27 = bit_or r27 r29
|
|
103 trace_scope 0 r29 r26 -1
|
|
104 trace_scope 0 r28 r26 -1
|
|
105 r28 = bit_xor r27 r10
|
|
106 trace_line 0 r28 r26 L8
|
|
107 trace_var 0 r28 r26 $19 = r18
|
|
108 trace_scope 0 r28 r26 1
|
|
109 trace_line 0 r28 r26 L9
|
|
110 r29 = eq_i32 r25 r18
|
|
111 r29 = bit_clear r29 r27
|
|
112 trace_scope 0 r29 r26 1
|
|
113 trace_line 0 r29 r26 L9
|
|
114 r30 = select r29 r18 r30
|
|
115 trace_var 0 r29 r26 $17 = r30
|
|
116 r27 = bit_or r27 r29
|
|
117 trace_scope 0 r29 r26 -1
|
|
118 trace_scope 0 r28 r26 -1
|
|
119 r28 = bit_xor r27 r10
|
|
120 trace_line 0 r28 r26 L8
|
|
121 trace_var 0 r28 r26 $19 = r14
|
|
122 trace_scope 0 r28 r26 1
|
|
123 trace_line 0 r28 r26 L9
|
|
124 r29 = eq_i32 r25 r14
|
|
125 r29 = bit_clear r29 r27
|
|
126 trace_scope 0 r29 r26 1
|
|
127 trace_line 0 r29 r26 L9
|
|
128 r30 = select r29 r14 r30
|
|
129 trace_var 0 r29 r26 $17 = r30
|
|
130 r27 = bit_or r27 r29
|
|
131 trace_scope 0 r29 r26 -1
|
|
132 trace_scope 0 r28 r26 -1
|
|
133 r28 = bit_xor r27 r10
|
|
134 trace_line 0 r28 r26 L8
|
|
135 trace_var 0 r28 r26 $19 = r19
|
|
136 trace_scope 0 r28 r26 1
|
|
137 trace_line 0 r28 r26 L9
|
|
138 r29 = eq_i32 r25 r19
|
|
139 r29 = bit_clear r29 r27
|
|
140 trace_scope 0 r29 r26 1
|
|
141 trace_line 0 r29 r26 L9
|
|
142 r30 = select r29 r19 r30
|
|
143 trace_var 0 r29 r26 $17 = r30
|
|
144 r27 = bit_or r27 r29
|
|
145 trace_scope 0 r29 r26 -1
|
|
146 trace_scope 0 r28 r26 -1
|
|
147 r28 = bit_xor r27 r10
|
|
148 trace_line 0 r28 r26 L8
|
|
149 trace_var 0 r28 r26 $19 = r20
|
|
150 trace_scope 0 r28 r26 1
|
|
151 trace_line 0 r28 r26 L9
|
|
152 r29 = eq_i32 r25 r20
|
|
153 r29 = bit_clear r29 r27
|
|
154 trace_scope 0 r29 r26 1
|
|
155 trace_line 0 r29 r26 L9
|
|
156 r30 = select r29 r20 r30
|
|
157 trace_var 0 r29 r26 $17 = r30
|
|
158 r27 = bit_or r27 r29
|
|
159 trace_scope 0 r29 r26 -1
|
|
160 trace_scope 0 r28 r26 -1
|
|
161 r28 = bit_xor r27 r10
|
|
162 trace_line 0 r28 r26 L8
|
|
163 trace_var 0 r28 r26 $19 = r21
|
|
164 trace_scope 0 r28 r26 1
|
|
165 trace_line 0 r28 r26 L9
|
|
166 r29 = eq_i32 r25 r21
|
|
167 r29 = bit_clear r29 r27
|
|
168 trace_scope 0 r29 r26 1
|
|
169 trace_line 0 r29 r26 L9
|
|
170 r30 = select r29 r21 r30
|
|
171 trace_var 0 r29 r26 $17 = r30
|
|
172 r27 = bit_or r27 r29
|
|
173 trace_scope 0 r29 r26 -1
|
|
174 trace_scope 0 r28 r26 -1
|
|
175 r28 = bit_xor r27 r10
|
|
176 trace_line 0 r28 r26 L8
|
|
177 trace_var 0 r28 r26 $19 = r22
|
|
178 trace_scope 0 r28 r26 1
|
|
179 trace_line 0 r28 r26 L9
|
|
180 r29 = eq_i32 r25 r22
|
|
181 r29 = bit_clear r29 r27
|
|
182 trace_scope 0 r29 r26 1
|
|
183 trace_line 0 r29 r26 L9
|
|
184 r30 = select r29 r22 r30
|
|
185 trace_var 0 r29 r26 $17 = r30
|
|
186 r27 = bit_or r27 r29
|
|
187 trace_scope 0 r29 r26 -1
|
|
188 trace_scope 0 r28 r26 -1
|
|
189 r27 = bit_xor r27 r10
|
|
190 trace_line 0 r27 r26 L8
|
|
191 trace_scope 0 r26 r26 -1
|
|
192 trace_line 0 r27 r26 L11
|
|
193 r30 = bit_clear r30 r27
|
|
194 trace_var 0 r27 r26 $17 = r30
|
|
195 trace_scope 0 r26 r26 -1
|
|
196 trace_exit 0 r26 r26 F1
|
|
197 r30 = eq_i32 r30 r14
|
|
198 trace_enter 0 r30 r26 F2
|
|
199 trace_var 0 r30 r26 $21 = r25
|
|
200 trace_scope 0 r30 r26 1
|
|
201 trace_line 0 r30 r26 L17
|
|
202 trace_var 0 r30 r26 $22 = r9
|
|
203 trace_line 0 r30 r26 L18
|
|
204 trace_scope 0 r30 r26 1
|
|
205 trace_var 0 r30 r26 $23 = r9
|
|
206 trace_scope 0 r30 r26 1
|
|
207 trace_line 0 r30 r26 L19
|
|
208 r27 = gt_i32 r25 r9
|
|
209 r27 = bit_and r30 r27
|
|
210 trace_scope 0 r27 r26 1
|
|
211 trace_line 0 r27 r26 L19
|
|
212 r28 = bit_xor r27 r10
|
|
213 trace_scope 0 r27 r26 -1
|
|
214 r29 = bit_clear r30 r27
|
|
215 trace_line 0 r29 r26 L20
|
|
216 trace_scope 0 r30 r26 -1
|
|
217 r28 = bit_or r27 r28
|
|
218 r27 = bit_and r30 r28
|
|
219 trace_line 0 r27 r26 L18
|
|
220 trace_var 0 r27 r26 $23 = r15
|
|
221 trace_scope 0 r27 r26 1
|
|
222 trace_line 0 r27 r26 L19
|
|
223 r29 = gt_i32 r25 r15
|
|
224 r29 = bit_and r30 r29
|
|
225 r29 = bit_and r28 r29
|
|
226 trace_scope 0 r29 r26 1
|
|
227 trace_line 0 r29 r26 L19
|
|
228 r28 = bit_clear r28 r29
|
|
229 trace_scope 0 r29 r26 -1
|
|
230 r31 = bit_and r30 r28
|
|
231 trace_line 0 r31 r26 L20
|
|
232 r32 = bit_and r31 r15
|
|
233 trace_var 0 r31 r26 $22 = r32
|
|
234 trace_scope 0 r27 r26 -1
|
|
235 r28 = bit_or r29 r28
|
|
236 r29 = bit_and r30 r28
|
|
237 trace_line 0 r29 r26 L18
|
|
238 trace_var 0 r29 r26 $23 = r16
|
|
239 trace_scope 0 r29 r26 1
|
|
240 trace_line 0 r29 r26 L19
|
|
241 r27 = gt_i32 r25 r16
|
|
242 r27 = bit_and r30 r27
|
|
243 r27 = bit_and r28 r27
|
|
244 trace_scope 0 r27 r26 1
|
|
245 trace_line 0 r27 r26 L19
|
|
246 r28 = bit_clear r28 r27
|
|
247 trace_scope 0 r27 r26 -1
|
|
248 r31 = bit_and r30 r28
|
|
249 trace_line 0 r31 r26 L20
|
|
250 r33 = add_i32 r32 r16
|
|
251 r32 = select r31 r33 r32
|
|
252 trace_var 0 r31 r26 $22 = r32
|
|
253 trace_scope 0 r29 r26 -1
|
|
254 r28 = bit_or r27 r28
|
|
255 r27 = bit_and r30 r28
|
|
256 trace_line 0 r27 r26 L18
|
|
257 trace_var 0 r27 r26 $23 = r17
|
|
258 trace_scope 0 r27 r26 1
|
|
259 trace_line 0 r27 r26 L19
|
|
260 r29 = gt_i32 r25 r17
|
|
261 r29 = bit_and r30 r29
|
|
262 r29 = bit_and r28 r29
|
|
263 trace_scope 0 r29 r26 1
|
|
264 trace_line 0 r29 r26 L19
|
|
265 r28 = bit_clear r28 r29
|
|
266 trace_scope 0 r29 r26 -1
|
|
267 r31 = bit_and r30 r28
|
|
268 trace_line 0 r31 r26 L20
|
|
269 r33 = add_i32 r32 r17
|
|
270 r32 = select r31 r33 r32
|
|
271 trace_var 0 r31 r26 $22 = r32
|
|
272 trace_scope 0 r27 r26 -1
|
|
273 r28 = bit_or r29 r28
|
|
274 r29 = bit_and r30 r28
|
|
275 trace_line 0 r29 r26 L18
|
|
276 trace_var 0 r29 r26 $23 = r18
|
|
277 trace_scope 0 r29 r26 1
|
|
278 trace_line 0 r29 r26 L19
|
|
279 r27 = gt_i32 r25 r18
|
|
280 r27 = bit_and r30 r27
|
|
281 r27 = bit_and r28 r27
|
|
282 trace_scope 0 r27 r26 1
|
|
283 trace_line 0 r27 r26 L19
|
|
284 r28 = bit_clear r28 r27
|
|
285 trace_scope 0 r27 r26 -1
|
|
286 r31 = bit_and r30 r28
|
|
287 trace_line 0 r31 r26 L20
|
|
288 r33 = add_i32 r32 r18
|
|
289 r32 = select r31 r33 r32
|
|
290 trace_var 0 r31 r26 $22 = r32
|
|
291 trace_scope 0 r29 r26 -1
|
|
292 r28 = bit_or r27 r28
|
|
293 r27 = bit_and r30 r28
|
|
294 trace_line 0 r27 r26 L18
|
|
295 trace_var 0 r27 r26 $23 = r14
|
|
296 trace_scope 0 r27 r26 1
|
|
297 trace_line 0 r27 r26 L19
|
|
298 r29 = gt_i32 r25 r14
|
|
299 r29 = bit_and r30 r29
|
|
300 r29 = bit_and r28 r29
|
|
301 trace_scope 0 r29 r26 1
|
|
302 trace_line 0 r29 r26 L19
|
|
303 r28 = bit_clear r28 r29
|
|
304 trace_scope 0 r29 r26 -1
|
|
305 r31 = bit_and r30 r28
|
|
306 trace_line 0 r31 r26 L20
|
|
307 r33 = add_i32 r32 r14
|
|
308 r32 = select r31 r33 r32
|
|
309 trace_var 0 r31 r26 $22 = r32
|
|
310 trace_scope 0 r27 r26 -1
|
|
311 r28 = bit_or r29 r28
|
|
312 r29 = bit_and r30 r28
|
|
313 trace_line 0 r29 r26 L18
|
|
314 trace_var 0 r29 r26 $23 = r19
|
|
315 trace_scope 0 r29 r26 1
|
|
316 trace_line 0 r29 r26 L19
|
|
317 r27 = gt_i32 r25 r19
|
|
318 r27 = bit_and r30 r27
|
|
319 r27 = bit_and r28 r27
|
|
320 trace_scope 0 r27 r26 1
|
|
321 trace_line 0 r27 r26 L19
|
|
322 r28 = bit_clear r28 r27
|
|
323 trace_scope 0 r27 r26 -1
|
|
324 r31 = bit_and r30 r28
|
|
325 trace_line 0 r31 r26 L20
|
|
326 r33 = add_i32 r32 r19
|
|
327 r32 = select r31 r33 r32
|
|
328 trace_var 0 r31 r26 $22 = r32
|
|
329 trace_scope 0 r29 r26 -1
|
|
330 r28 = bit_or r27 r28
|
|
331 r27 = bit_and r30 r28
|
|
332 trace_line 0 r27 r26 L18
|
|
333 trace_var 0 r27 r26 $23 = r20
|
|
334 trace_scope 0 r27 r26 1
|
|
335 trace_line 0 r27 r26 L19
|
|
336 r29 = gt_i32 r25 r20
|
|
337 r29 = bit_and r30 r29
|
|
338 r29 = bit_and r28 r29
|
|
339 trace_scope 0 r29 r26 1
|
|
340 trace_line 0 r29 r26 L19
|
|
341 r28 = bit_clear r28 r29
|
|
342 trace_scope 0 r29 r26 -1
|
|
343 r31 = bit_and r30 r28
|
|
344 trace_line 0 r31 r26 L20
|
|
345 r33 = add_i32 r32 r20
|
|
346 r32 = select r31 r33 r32
|
|
347 trace_var 0 r31 r26 $22 = r32
|
|
348 trace_scope 0 r27 r26 -1
|
|
349 r28 = bit_or r29 r28
|
|
350 r29 = bit_and r30 r28
|
|
351 trace_line 0 r29 r26 L18
|
|
352 trace_var 0 r29 r26 $23 = r21
|
|
353 trace_scope 0 r29 r26 1
|
|
354 trace_line 0 r29 r26 L19
|
|
355 r27 = gt_i32 r25 r21
|
|
356 r27 = bit_and r30 r27
|
|
357 r27 = bit_and r28 r27
|
|
358 trace_scope 0 r27 r26 1
|
|
359 trace_line 0 r27 r26 L19
|
|
360 r28 = bit_clear r28 r27
|
|
361 trace_scope 0 r27 r26 -1
|
|
362 r31 = bit_and r30 r28
|
|
363 trace_line 0 r31 r26 L20
|
|
364 r33 = add_i32 r32 r21
|
|
365 r32 = select r31 r33 r32
|
|
366 trace_var 0 r31 r26 $22 = r32
|
|
367 trace_scope 0 r29 r26 -1
|
|
368 r28 = bit_or r27 r28
|
|
369 r27 = bit_and r30 r28
|
|
370 trace_line 0 r27 r26 L18
|
|
371 trace_var 0 r27 r26 $23 = r22
|
|
372 trace_scope 0 r27 r26 1
|
|
373 trace_line 0 r27 r26 L19
|
|
374 r25 = gt_i32 r25 r22
|
|
375 r25 = bit_and r30 r25
|
|
376 r25 = bit_and r28 r25
|
|
377 trace_scope 0 r25 r26 1
|
|
378 trace_line 0 r25 r26 L19
|
|
379 r28 = bit_clear r28 r25
|
|
380 trace_scope 0 r25 r26 -1
|
|
381 r29 = bit_and r30 r28
|
|
382 trace_line 0 r29 r26 L20
|
|
383 r31 = add_i32 r32 r22
|
|
384 r32 = select r29 r31 r32
|
|
385 trace_var 0 r29 r26 $22 = r32
|
|
386 trace_scope 0 r27 r26 -1
|
|
387 r28 = bit_or r25 r28
|
|
388 r28 = bit_and r30 r28
|
|
389 trace_line 0 r28 r26 L18
|
|
390 trace_scope 0 r30 r26 -1
|
|
391 trace_line 0 r30 r26 L22
|
|
392 r32 = bit_and r30 r32
|
|
393 trace_var 0 r30 r26 $20 = r32
|
|
394 trace_scope 0 r30 r26 -1
|
|
395 trace_exit 0 r30 r26 F2
|
|
396 r32 = eq_i32 r32 r23
|
|
397 r32 = bit_and r30 r32
|
|
398 trace_enter 0 r32 r26 F3
|
|
399 trace_var 0 r32 r26 $25 = r14
|
|
400 trace_scope 0 r32 r26 1
|
|
401 trace_line 0 r32 r26 L27
|
|
402 trace_var 0 r32 r26 $26 = r9
|
|
403 trace_line 0 r32 r26 L28
|
|
404 trace_var 0 r32 r26 $27 = r15
|
|
405 trace_line 0 r32 r26 L29
|
|
406 trace_scope 0 r32 r26 1
|
|
407 trace_var 0 r32 r26 $28 = r9
|
|
408 trace_scope 0 r32 r26 1
|
|
409 trace_line 0 r32 r26 L30
|
|
410 trace_line 0 r32 r26 L31
|
|
411 trace_scope 0 r32 r26 -1
|
|
412 trace_line 0 r32 r26 L29
|
|
413 trace_var 0 r32 r26 $28 = r15
|
|
414 trace_scope 0 r32 r26 1
|
|
415 trace_line 0 r32 r26 L30
|
|
416 trace_line 0 r32 r26 L31
|
|
417 r30 = bit_and r32 r15
|
|
418 trace_var 0 r32 r26 $26 = r30
|
|
419 trace_scope 0 r32 r26 -1
|
|
420 trace_line 0 r32 r26 L29
|
|
421 trace_var 0 r32 r26 $28 = r16
|
|
422 trace_scope 0 r32 r26 1
|
|
423 trace_line 0 r32 r26 L30
|
|
424 trace_line 0 r32 r26 L31
|
|
425 r28 = add_i32 r30 r16
|
|
426 r30 = select r32 r28 r30
|
|
427 trace_var 0 r32 r26 $26 = r30
|
|
428 trace_scope 0 r32 r26 -1
|
|
429 trace_line 0 r32 r26 L29
|
|
430 trace_var 0 r32 r26 $28 = r17
|
|
431 trace_scope 0 r32 r26 1
|
|
432 trace_line 0 r32 r26 L30
|
|
433 trace_line 0 r32 r26 L31
|
|
434 r28 = add_i32 r30 r17
|
|
435 r30 = select r32 r28 r30
|
|
436 trace_var 0 r32 r26 $26 = r30
|
|
437 trace_scope 0 r32 r26 -1
|
|
438 trace_line 0 r32 r26 L29
|
|
439 trace_var 0 r32 r26 $28 = r18
|
|
440 trace_scope 0 r32 r26 1
|
|
441 trace_line 0 r32 r26 L30
|
|
442 trace_line 0 r32 r26 L31
|
|
443 r28 = add_i32 r30 r18
|
|
444 r30 = select r32 r28 r30
|
|
445 trace_var 0 r32 r26 $26 = r30
|
|
446 trace_scope 0 r32 r26 -1
|
|
447 trace_line 0 r32 r26 L29
|
|
448 trace_var 0 r32 r26 $28 = r14
|
|
449 trace_scope 0 r32 r26 1
|
|
450 trace_line 0 r32 r26 L30
|
|
451 trace_line 0 r32 r26 L31
|
|
452 r28 = add_i32 r30 r14
|
|
453 r30 = select r32 r28 r30
|
|
454 trace_var 0 r32 r26 $26 = r30
|
|
455 trace_scope 0 r32 r26 -1
|
|
456 trace_line 0 r32 r26 L29
|
|
457 trace_var 0 r32 r26 $28 = r19
|
|
458 trace_scope 0 r32 r26 1
|
|
459 trace_line 0 r32 r26 L30
|
|
460 trace_scope 0 r32 r26 1
|
|
461 trace_line 0 r32 r26 L30
|
|
462 trace_scope 0 r32 r26 -1
|
|
463 trace_scope 0 r32 r26 -1
|
|
464 trace_scope 0 r32 r26 -1
|
|
465 trace_line 0 r32 r26 L33
|
|
466 r30 = bit_and r32 r30
|
|
467 trace_var 0 r32 r26 $24 = r30
|
|
468 trace_scope 0 r32 r26 -1
|
|
469 trace_exit 0 r32 r26 F3
|
|
470 r30 = eq_i32 r30 r24
|
|
471 r30 = bit_and r32 r30
|
|
472 trace_enter 0 r30 r26 F4
|
|
473 trace_scope 0 r30 r26 1
|
|
474 trace_line 0 r30 r26 L38
|
|
475 trace_line 0 r30 r26 L39
|
|
476 trace_line 0 r30 r26 L41
|
|
477 trace_var 0 r30 r26 $30 = r22
|
|
478 trace_var 0 r30 r26 $31 = r22
|
|
479 trace_var 0 r30 r26 $32 = r22
|
|
480 trace_var 0 r30 r26 $33 = r22
|
|
481 trace_line 0 r30 r26 L42
|
|
482 trace_scope 0 r30 r26 1
|
|
483 trace_var 0 r30 r26 $34 = r15
|
|
484 trace_scope 0 r30 r26 1
|
|
485 trace_line 0 r30 r26 L43
|
|
486 r32 = select r30 r15 r22
|
|
487 trace_var 0 r30 r26 $33 = r32
|
|
488 trace_scope 0 r30 r26 -1
|
|
489 trace_line 0 r30 r26 L42
|
|
490 trace_var 0 r30 r26 $34 = r16
|
|
491 trace_scope 0 r30 r26 1
|
|
492 trace_line 0 r30 r26 L43
|
|
493 r28 = select r30 r32 r22
|
|
494 trace_var 0 r30 r26 $32 = r28
|
|
495 r32 = select r30 r16 r32
|
|
496 trace_var 0 r30 r26 $33 = r32
|
|
497 trace_scope 0 r30 r26 -1
|
|
498 trace_line 0 r30 r26 L42
|
|
499 trace_var 0 r30 r26 $34 = r17
|
|
500 trace_scope 0 r30 r26 1
|
|
501 trace_line 0 r30 r26 L43
|
|
502 r25 = select r30 r28 r22
|
|
503 trace_var 0 r30 r26 $31 = r25
|
|
504 r28 = select r30 r32 r28
|
|
505 trace_var 0 r30 r26 $32 = r28
|
|
506 r32 = select r30 r17 r32
|
|
507 trace_var 0 r30 r26 $33 = r32
|
|
508 trace_scope 0 r30 r26 -1
|
|
509 trace_line 0 r30 r26 L42
|
|
510 trace_scope 0 r30 r26 -1
|
|
511 trace_line 0 r30 r26 L45
|
|
512 r25 = eq_i32 r25 r15
|
|
513 r28 = eq_i32 r28 r16
|
|
514 r32 = eq_i32 r32 r17
|
|
515 r28 = bit_and r25 r28
|
|
516 r28 = bit_and r32 r28
|
|
517 r28 = bit_and r30 r28
|
|
518 trace_var 0 r30 r26 $29 = r28
|
|
519 trace_scope 0 r30 r26 -1
|
|
520 trace_exit 0 r30 r26 F4
|
|
521 r28 = bit_and r30 r28
|
|
522 trace_enter 0 r28 r26 F5
|
|
523 trace_scope 0 r28 r26 1
|
|
524 trace_line 0 r28 r26 L50
|
|
525 trace_line 0 r28 r26 L51
|
|
526 trace_line 0 r28 r26 L53
|
|
527 trace_var 0 r28 r26 $36 = r22
|
|
528 trace_var 0 r28 r26 $37 = r22
|
|
529 trace_var 0 r28 r26 $38 = r22
|
|
530 trace_var 0 r28 r26 $39 = r22
|
|
531 trace_line 0 r28 r26 L54
|
|
532 trace_scope 0 r28 r26 1
|
|
533 trace_var 0 r28 r26 $40 = r15
|
|
534 trace_scope 0 r28 r26 1
|
|
535 trace_line 0 r28 r26 L55
|
|
536 r30 = select r28 r15 r22
|
|
537 trace_var 0 r28 r26 $39 = r30
|
|
538 trace_scope 0 r28 r26 -1
|
|
539 trace_line 0 r28 r26 L54
|
|
540 trace_var 0 r28 r26 $40 = r16
|
|
541 trace_scope 0 r28 r26 1
|
|
542 trace_line 0 r28 r26 L55
|
|
543 r32 = select r28 r30 r22
|
|
544 trace_var 0 r28 r26 $38 = r32
|
|
545 r30 = select r28 r16 r30
|
|
546 trace_var 0 r28 r26 $39 = r30
|
|
547 trace_scope 0 r28 r26 -1
|
|
548 trace_line 0 r28 r26 L54
|
|
549 trace_var 0 r28 r26 $40 = r17
|
|
550 trace_scope 0 r28 r26 1
|
|
551 trace_line 0 r28 r26 L55
|
|
552 r25 = select r28 r32 r22
|
|
553 trace_var 0 r28 r26 $37 = r25
|
|
554 r32 = select r28 r30 r32
|
|
555 trace_var 0 r28 r26 $38 = r32
|
|
556 r30 = select r28 r17 r30
|
|
557 trace_var 0 r28 r26 $39 = r30
|
|
558 trace_scope 0 r28 r26 -1
|
|
559 trace_line 0 r28 r26 L54
|
|
560 trace_scope 0 r28 r26 -1
|
|
561 trace_line 0 r28 r26 L57
|
|
562 r25 = eq_i32 r25 r15
|
|
563 r32 = eq_i32 r32 r16
|
|
564 r30 = eq_i32 r30 r17
|
|
565 r32 = bit_and r25 r32
|
|
566 r32 = bit_and r30 r32
|
|
567 r32 = bit_and r28 r32
|
|
568 trace_var 0 r28 r26 $35 = r32
|
|
569 trace_scope 0 r28 r26 -1
|
|
570 trace_exit 0 r28 r26 F5
|
|
571 r32 = bit_and r28 r32
|
|
572 trace_enter 0 r32 r26 F6
|
|
573 trace_scope 0 r32 r26 1
|
|
574 trace_line 0 r32 r26 L62
|
|
575 trace_line 0 r32 r26 L63
|
|
576 trace_line 0 r32 r26 L65
|
|
577 trace_var 0 r32 r26 $42 = r22
|
|
578 trace_var 0 r32 r26 $43 = r22
|
|
579 trace_var 0 r32 r26 $44 = r22
|
|
580 trace_var 0 r32 r26 $45 = r22
|
|
581 trace_line 0 r32 r26 L66
|
|
582 trace_scope 0 r32 r26 1
|
|
583 trace_var 0 r32 r26 $46 = r17
|
|
584 trace_scope 0 r32 r26 1
|
|
585 trace_line 0 r32 r26 L67
|
|
586 r28 = select r32 r17 r22
|
|
587 trace_var 0 r32 r26 $45 = r28
|
|
588 trace_scope 0 r32 r26 -1
|
|
589 trace_line 0 r32 r26 L66
|
|
590 trace_var 0 r32 r26 $46 = r16
|
|
591 trace_scope 0 r32 r26 1
|
|
592 trace_line 0 r32 r26 L67
|
|
593 r30 = select r32 r28 r22
|
|
594 trace_var 0 r32 r26 $44 = r30
|
|
595 r28 = select r32 r16 r28
|
|
596 trace_var 0 r32 r26 $45 = r28
|
|
597 trace_scope 0 r32 r26 -1
|
|
598 trace_line 0 r32 r26 L66
|
|
599 trace_var 0 r32 r26 $46 = r15
|
|
600 trace_scope 0 r32 r26 1
|
|
601 trace_line 0 r32 r26 L67
|
|
602 r25 = select r32 r30 r22
|
|
603 trace_var 0 r32 r26 $43 = r25
|
|
604 r30 = select r32 r28 r30
|
|
605 trace_var 0 r32 r26 $44 = r30
|
|
606 r28 = select r32 r15 r28
|
|
607 trace_var 0 r32 r26 $45 = r28
|
|
608 trace_scope 0 r32 r26 -1
|
|
609 trace_line 0 r32 r26 L66
|
|
610 trace_scope 0 r32 r26 -1
|
|
611 trace_line 0 r32 r26 L69
|
|
612 r25 = eq_i32 r25 r17
|
|
613 r30 = eq_i32 r30 r16
|
|
614 r28 = eq_i32 r28 r15
|
|
615 r30 = bit_and r25 r30
|
|
616 r30 = bit_and r28 r30
|
|
617 r30 = bit_and r32 r30
|
|
618 trace_var 0 r32 r26 $41 = r30
|
|
619 trace_scope 0 r32 r26 -1
|
|
620 trace_exit 0 r32 r26 F6
|
|
621 r30 = bit_and r32 r30
|
|
622 trace_enter 0 r30 r26 F7
|
|
623 trace_scope 0 r30 r26 1
|
|
624 trace_line 0 r30 r26 L74
|
|
625 trace_line 0 r30 r26 L75
|
|
626 trace_line 0 r30 r26 L77
|
|
627 trace_var 0 r30 r26 $48 = r22
|
|
628 trace_var 0 r30 r26 $49 = r22
|
|
629 trace_var 0 r30 r26 $50 = r22
|
|
630 trace_var 0 r30 r26 $51 = r22
|
|
631 trace_line 0 r30 r26 L78
|
|
632 trace_scope 0 r30 r26 1
|
|
633 trace_var 0 r30 r26 $52 = r17
|
|
634 trace_scope 0 r30 r26 1
|
|
635 trace_line 0 r30 r26 L79
|
|
636 r32 = select r30 r17 r22
|
|
637 trace_var 0 r30 r26 $51 = r32
|
|
638 trace_scope 0 r30 r26 -1
|
|
639 trace_line 0 r30 r26 L78
|
|
640 trace_var 0 r30 r26 $52 = r16
|
|
641 trace_scope 0 r30 r26 1
|
|
642 trace_line 0 r30 r26 L79
|
|
643 r28 = select r30 r32 r22
|
|
644 trace_var 0 r30 r26 $50 = r28
|
|
645 r32 = select r30 r16 r32
|
|
646 trace_var 0 r30 r26 $51 = r32
|
|
647 trace_scope 0 r30 r26 -1
|
|
648 trace_line 0 r30 r26 L78
|
|
649 trace_var 0 r30 r26 $52 = r15
|
|
650 trace_scope 0 r30 r26 1
|
|
651 trace_line 0 r30 r26 L79
|
|
652 r25 = select r30 r28 r22
|
|
653 trace_var 0 r30 r26 $49 = r25
|
|
654 r28 = select r30 r32 r28
|
|
655 trace_var 0 r30 r26 $50 = r28
|
|
656 r32 = select r30 r15 r32
|
|
657 trace_var 0 r30 r26 $51 = r32
|
|
658 trace_scope 0 r30 r26 -1
|
|
659 trace_line 0 r30 r26 L78
|
|
660 trace_scope 0 r30 r26 -1
|
|
661 trace_line 0 r30 r26 L81
|
|
662 r25 = eq_i32 r25 r17
|
|
663 r28 = eq_i32 r28 r16
|
|
664 r32 = eq_i32 r32 r15
|
|
665 r28 = bit_and r25 r28
|
|
666 r28 = bit_and r32 r28
|
|
667 r28 = bit_and r30 r28
|
|
668 trace_var 0 r30 r26 $47 = r28
|
|
669 trace_scope 0 r30 r26 -1
|
|
670 trace_exit 0 r30 r26 F7
|
|
671 r28 = bit_and r30 r28
|
|
672 trace_enter 0 r28 r26 F8
|
|
673 trace_scope 0 r28 r26 1
|
|
674 trace_line 0 r28 r26 L97
|
|
675 trace_line 0 r28 r26 L99
|
|
676 trace_var 0 r28 r26 $54 = r22
|
|
677 trace_var 0 r28 r26 $55 = r22
|
|
678 trace_var 0 r28 r26 $56 = r22
|
|
679 trace_var 0 r28 r26 $57 = r22
|
|
680 trace_line 0 r28 r26 L100
|
|
681 trace_scope 0 r28 r26 1
|
|
682 trace_var 0 r28 r26 $58 = r15
|
|
683 trace_scope 0 r28 r26 1
|
|
684 trace_line 0 r28 r26 L101
|
|
685 r30 = select r28 r15 r22
|
|
686 trace_var 0 r28 r26 $57 = r30
|
|
687 trace_scope 0 r28 r26 -1
|
|
688 trace_line 0 r28 r26 L100
|
|
689 trace_scope 0 r28 r26 -1
|
|
690 trace_line 0 r28 r26 L103
|
|
691 r30 = eq_i32 r30 r15
|
|
692 r30 = bit_and r28 r30
|
|
693 trace_var 0 r28 r26 $53 = r30
|
|
694 trace_scope 0 r28 r26 -1
|
|
695 trace_exit 0 r28 r26 F8
|
|
696 r30 = bit_and r28 r30
|
|
697 trace_enter 0 r30 r26 F9
|
|
698 trace_scope 0 r30 r26 1
|
|
699 trace_line 0 r30 r26 L86
|
|
700 trace_line 0 r30 r26 L88
|
|
701 trace_var 0 r30 r26 $60 = r22
|
|
702 trace_var 0 r30 r26 $61 = r22
|
|
703 trace_var 0 r30 r26 $62 = r22
|
|
704 trace_var 0 r30 r26 $63 = r22
|
|
705 trace_line 0 r30 r26 L89
|
|
706 trace_scope 0 r30 r26 1
|
|
707 trace_var 0 r30 r26 $64 = r15
|
|
708 trace_scope 0 r30 r26 1
|
|
709 trace_line 0 r30 r26 L90
|
|
710 r28 = select r30 r15 r22
|
|
711 trace_var 0 r30 r26 $63 = r28
|
|
712 trace_scope 0 r30 r26 -1
|
|
713 trace_line 0 r30 r26 L89
|
|
714 trace_var 0 r30 r26 $64 = r16
|
|
715 trace_scope 0 r30 r26 1
|
|
716 trace_line 0 r30 r26 L90
|
|
717 r32 = select r30 r28 r22
|
|
718 trace_var 0 r30 r26 $62 = r32
|
|
719 r28 = select r30 r16 r28
|
|
720 trace_var 0 r30 r26 $63 = r28
|
|
721 trace_scope 0 r30 r26 -1
|
|
722 trace_line 0 r30 r26 L89
|
|
723 trace_var 0 r30 r26 $64 = r17
|
|
724 trace_scope 0 r30 r26 1
|
|
725 trace_line 0 r30 r26 L90
|
|
726 r25 = select r30 r32 r22
|
|
727 trace_var 0 r30 r26 $61 = r25
|
|
728 r32 = select r30 r28 r32
|
|
729 trace_var 0 r30 r26 $62 = r32
|
|
730 r28 = select r30 r17 r28
|
|
731 trace_var 0 r30 r26 $63 = r28
|
|
732 trace_scope 0 r30 r26 -1
|
|
733 trace_line 0 r30 r26 L89
|
|
734 trace_scope 0 r30 r26 -1
|
|
735 trace_line 0 r30 r26 L92
|
|
736 r25 = eq_i32 r25 r15
|
|
737 r32 = eq_i32 r32 r16
|
|
738 r28 = eq_i32 r28 r17
|
|
739 r32 = bit_and r25 r32
|
|
740 r32 = bit_and r28 r32
|
|
741 r32 = bit_and r30 r32
|
|
742 trace_var 0 r30 r26 $59 = r32
|
|
743 trace_scope 0 r30 r26 -1
|
|
744 trace_exit 0 r30 r26 F9
|
|
745 r32 = bit_and r30 r32
|
|
746 r30 = select r32 r5 r1
|
|
747 r28 = select r32 r6 r2
|
|
748 r25 = select r32 r7 r3
|
|
749 r32 = select r32 r8 r4
|
|
750 trace_var 0 r26 r26 $10 = r30
|
|
751 trace_var 0 r26 r26 $11 = r28
|
|
752 trace_var 0 r26 r26 $12 = r25
|
|
753 trace_var 0 r26 r26 $13 = r32
|
|
754 trace_scope 0 r26 r26 -1
|
|
755 trace_exit 0 r26 r26 F0
|
|
756 store32 ptr1 r30
|
|
757 store32 ptr2 r28
|
|
758 store32 ptr3 r25
|
|
759 store32 ptr4 r32
|