1. store_src_rg coords = src.rg | |
2. init_lane_masks CondMask = LoopMask = RetMask = true | |
3. copy_constant _0_ok = 0xFFFFFFFF | |
4. zero_slot_unmasked _1_num = 0 | |
5. store_condition_mask $30 = CondMask | |
6. copy_slot_unmasked $31 = _0_ok | |
7. zero_slot_unmasked $0 = 0 | |
8. merge_condition_mask CondMask = $30 & $31 | |
9. branch_if_no_lanes_active branch_if_no_lanes_active +10 (label 0 at #19) | |
10. copy_slot_unmasked $1 = _1_num | |
11. copy_constant $2 = 0x3F800000 (1.0) | |
12. add_float $1 += $2 | |
13. copy_slot_masked _1_num = Mask($1) | |
14. zero_slot_unmasked $2 = 0 | |
15. swizzle_1 $1 = ($1..2).y | |
16. zero_slot_unmasked $2 = 0 | |
17. cmpeq_float $1 = equal($1, $2) | |
18. copy_slot_masked $0 = Mask($1) | |
19. label label 0x00000000 | |
20. load_condition_mask CondMask = $30 | |
21. copy_slot_unmasked _0_ok = $0 | |
22. store_condition_mask $30 = CondMask | |
23. copy_slot_unmasked $31 = _0_ok | |
24. zero_slot_unmasked $0 = 0 | |
25. merge_condition_mask CondMask = $30 & $31 | |
26. branch_if_no_lanes_active branch_if_no_lanes_active +9 (label 1 at #35) | |
27. zero_slot_unmasked $1 = 0 | |
28. copy_slot_unmasked $2 = _1_num | |
29. copy_constant $3 = 0x3F800000 (1.0) | |
30. add_float $2 += $3 | |
31. copy_slot_masked _1_num = Mask($2) | |
32. zero_slot_unmasked $2 = 0 | |
33. cmpeq_float $1 = equal($1, $2) | |
34. copy_slot_masked $0 = Mask($1) | |
35. label label 0x00000001 | |
36. load_condition_mask CondMask = $30 | |
37. copy_slot_unmasked _0_ok = $0 | |
38. store_condition_mask $30 = CondMask | |
39. copy_slot_unmasked $31 = _0_ok | |
40. zero_slot_unmasked $0 = 0 | |
41. merge_condition_mask CondMask = $30 & $31 | |
42. branch_if_no_lanes_active branch_if_no_lanes_active +13 (label 2 at #55) | |
43. copy_slot_unmasked $1 = _1_num | |
44. copy_constant $2 = 0x3F800000 (1.0) | |
45. add_float $1 += $2 | |
46. copy_slot_masked _1_num = Mask($1) | |
47. copy_constant $2 = 0x3F800000 (1.0) | |
48. zero_slot_unmasked $3 = 0 | |
49. swizzle_2 $1..2 = ($1..3).yz | |
50. copy_constant $3 = 0x3F800000 (1.0) | |
51. zero_slot_unmasked $4 = 0 | |
52. cmpeq_2_floats $1..2 = equal($1..2, $3..4) | |
53. bitwise_and_int $1 &= $2 | |
54. copy_slot_masked $0 = Mask($1) | |
55. label label 0x00000002 | |
56. load_condition_mask CondMask = $30 | |
57. copy_slot_unmasked _0_ok = $0 | |
58. store_condition_mask $30 = CondMask | |
59. copy_slot_unmasked $31 = _0_ok | |
60. zero_slot_unmasked $0 = 0 | |
61. merge_condition_mask CondMask = $30 & $31 | |
62. branch_if_no_lanes_active branch_if_no_lanes_active +12 (label 3 at #74) | |
63. copy_constant $1 = 0x3F800000 (1.0) | |
64. zero_slot_unmasked $2 = 0 | |
65. copy_slot_unmasked $3 = _1_num | |
66. copy_constant $4 = 0x3F800000 (1.0) | |
67. add_float $3 += $4 | |
68. copy_slot_masked _1_num = Mask($3) | |
69. copy_constant $3 = 0x3F800000 (1.0) | |
70. zero_slot_unmasked $4 = 0 | |
71. cmpeq_2_floats $1..2 = equal($1..2, $3..4) | |
72. bitwise_and_int $1 &= $2 | |
73. copy_slot_masked $0 = Mask($1) | |
74. label label 0x00000003 | |
75. load_condition_mask CondMask = $30 | |
76. copy_slot_unmasked _0_ok = $0 | |
77. store_condition_mask $30 = CondMask | |
78. copy_slot_unmasked $31 = _0_ok | |
79. zero_slot_unmasked $0 = 0 | |
80. merge_condition_mask CondMask = $30 & $31 | |
81. branch_if_no_lanes_active branch_if_no_lanes_active +13 (label 4 at #94) | |
82. copy_slot_unmasked $1 = _1_num | |
83. copy_constant $2 = 0x3F800000 (1.0) | |
84. add_float $1 += $2 | |
85. copy_slot_masked _1_num = Mask($1) | |
86. copy_constant $2 = 0x3F800000 (1.0) | |
87. zero_slot_unmasked $3 = 0 | |
88. swizzle_2 $1..2 = ($1..3).yz | |
89. copy_constant $3 = 0x3F800000 (1.0) | |
90. zero_slot_unmasked $4 = 0 | |
91. cmpeq_2_floats $1..2 = equal($1..2, $3..4) | |
92. bitwise_and_int $1 &= $2 | |
93. copy_slot_masked $0 = Mask($1) | |
94. label label 0x00000004 | |
95. load_condition_mask CondMask = $30 | |
96. copy_slot_unmasked _0_ok = $0 | |
97. store_condition_mask $30 = CondMask | |
98. copy_slot_unmasked $31 = _0_ok | |
99. zero_slot_unmasked $0 = 0 | |
100. merge_condition_mask CondMask = $30 & $31 | |
101. branch_if_no_lanes_active branch_if_no_lanes_active +14 (label 5 at #115) | |
102. copy_slot_unmasked $1 = _1_num | |
103. copy_constant $2 = 0x3F800000 (1.0) | |
104. add_float $1 += $2 | |
105. copy_slot_masked _1_num = Mask($1) | |
106. copy_constant $2 = 0x3F800000 (1.0) | |
107. zero_2_slots_unmasked $3..4 = 0 | |
108. swizzle_3 $1..3 = ($1..4).yzw | |
109. copy_constant $4 = 0x3F800000 (1.0) | |
110. zero_2_slots_unmasked $5..6 = 0 | |
111. cmpeq_3_floats $1..3 = equal($1..3, $4..6) | |
112. bitwise_and_int $2 &= $3 | |
113. bitwise_and_int $1 &= $2 | |
114. copy_slot_masked $0 = Mask($1) | |
115. label label 0x00000005 | |
116. load_condition_mask CondMask = $30 | |
117. copy_slot_unmasked _0_ok = $0 | |
118. store_condition_mask $30 = CondMask | |
119. copy_slot_unmasked $31 = _0_ok | |
120. zero_slot_unmasked $0 = 0 | |
121. merge_condition_mask CondMask = $30 & $31 | |
122. branch_if_no_lanes_active branch_if_no_lanes_active +9 (label 6 at #131) | |
123. copy_constant $1 = 0x3F800000 (1.0) | |
124. copy_slot_unmasked $2 = _1_num | |
125. copy_constant $3 = 0x3F800000 (1.0) | |
126. add_float $2 += $3 | |
127. copy_slot_masked _1_num = Mask($2) | |
128. copy_constant $2 = 0x3F800000 (1.0) | |
129. cmpeq_float $1 = equal($1, $2) | |
130. copy_slot_masked $0 = Mask($1) | |
131. label label 0x00000006 | |
132. load_condition_mask CondMask = $30 | |
133. copy_slot_unmasked _0_ok = $0 | |
134. store_condition_mask $30 = CondMask | |
135. copy_slot_unmasked $31 = _0_ok | |
136. zero_slot_unmasked $0 = 0 | |
137. merge_condition_mask CondMask = $30 & $31 | |
138. branch_if_no_lanes_active branch_if_no_lanes_active +12 (label 7 at #150) | |
139. copy_constant $1 = 0x3F800000 (1.0) | |
140. zero_slot_unmasked $2 = 0 | |
141. copy_slot_unmasked $3 = _1_num | |
142. copy_constant $4 = 0x3F800000 (1.0) | |
143. add_float $3 += $4 | |
144. copy_slot_masked _1_num = Mask($3) | |
145. copy_constant $4 = 0x3F800000 (1.0) | |
146. swizzle_1 $1 = ($1..4).w | |
147. copy_constant $2 = 0x3F800000 (1.0) | |
148. cmpeq_float $1 = equal($1, $2) | |
149. copy_slot_masked $0 = Mask($1) | |
150. label label 0x00000007 | |
151. load_condition_mask CondMask = $30 | |
152. copy_slot_unmasked _0_ok = $0 | |
153. store_condition_mask $30 = CondMask | |
154. copy_slot_unmasked $31 = _0_ok | |
155. zero_slot_unmasked $0 = 0 | |
156. merge_condition_mask CondMask = $30 & $31 | |
157. branch_if_no_lanes_active branch_if_no_lanes_active +15 (label 8 at #172) | |
158. copy_constant $1 = 0x3F800000 (1.0) | |
159. zero_slot_unmasked $2 = 0 | |
160. copy_constant $3 = 0x3F800000 (1.0) | |
161. copy_slot_unmasked $4 = _1_num | |
162. copy_constant $5 = 0x3F800000 (1.0) | |
163. add_float $4 += $5 | |
164. copy_slot_masked _1_num = Mask($4) | |
165. copy_constant $4 = 0x3F800000 (1.0) | |
166. zero_slot_unmasked $5 = 0 | |
167. copy_constant $6 = 0x3F800000 (1.0) | |
168. cmpeq_3_floats $1..3 = equal($1..3, $4..6) | |
169. bitwise_and_int $2 &= $3 | |
170. bitwise_and_int $1 &= $2 | |
171. copy_slot_masked $0 = Mask($1) | |
172. label label 0x00000008 | |
173. load_condition_mask CondMask = $30 | |
174. copy_slot_unmasked _0_ok = $0 | |
175. store_condition_mask $30 = CondMask | |
176. copy_2_slots_unmasked $31..32 = _0_ok, _1_num | |
177. copy_constant $33 = 0x41100000 (9.0) | |
178. cmpeq_float $32 = equal($32, $33) | |
179. bitwise_and_int $31 &= $32 | |
180. zero_slot_unmasked $0 = 0 | |
181. merge_condition_mask CondMask = $30 & $31 | |
182. branch_if_no_lanes_active branch_if_no_lanes_active +287 (label 10 at #469) | |
183. copy_constant ok = 0xFFFFFFFF | |
184. zero_slot_unmasked num = 0 | |
185. store_condition_mask $28 = CondMask | |
186. copy_slot_unmasked $29 = ok | |
187. zero_slot_unmasked $1 = 0 | |
188. merge_condition_mask CondMask = $28 & $29 | |
189. branch_if_no_lanes_active branch_if_no_lanes_active +14 (label 12 at #203) | |
190. copy_constant $12 = 0x3F800000 (1.0) | |
191. copy_constant $13 = 0x40000000 (2.0) | |
192. copy_constant $14 = 0x40400000 (3.0) | |
193. copy_slot_unmasked $15 = num | |
194. copy_constant $16 = 0x3F800000 (1.0) | |
195. add_float $15 += $16 | |
196. copy_slot_masked num = Mask($15) | |
197. copy_2_slots_unmasked $2..3 = $12..13 | |
198. copy_constant $4 = 0x3F800000 (1.0) | |
199. copy_constant $5 = 0x40000000 (2.0) | |
200. cmpeq_2_floats $2..3 = equal($2..3, $4..5) | |
201. bitwise_and_int $2 &= $3 | |
202. copy_slot_masked $1 = Mask($2) | |
203. label label 0x0000000C | |
204. load_condition_mask CondMask = $28 | |
205. copy_slot_masked ok = Mask($1) | |
206. store_condition_mask $28 = CondMask | |
207. copy_slot_unmasked $29 = ok | |
208. zero_slot_unmasked $1 = 0 | |
209. merge_condition_mask CondMask = $28 & $29 | |
210. branch_if_no_lanes_active branch_if_no_lanes_active +14 (label 13 at #224) | |
211. copy_slot_unmasked $12 = num | |
212. copy_constant $13 = 0x3F800000 (1.0) | |
213. add_float $12 += $13 | |
214. copy_slot_masked num = Mask($12) | |
215. copy_slot_unmasked $13 = $12 | |
216. copy_constant $14 = 0x40400000 (3.0) | |
217. copy_constant $15 = 0x40800000 (4.0) | |
218. copy_2_slots_unmasked $2..3 = $14..15 | |
219. copy_constant $4 = 0x40400000 (3.0) | |
220. copy_constant $5 = 0x40800000 (4.0) | |
221. cmpeq_2_floats $2..3 = equal($2..3, $4..5) | |
222. bitwise_and_int $2 &= $3 | |
223. copy_slot_masked $1 = Mask($2) | |
224. label label 0x0000000D | |
225. load_condition_mask CondMask = $28 | |
226. copy_slot_masked ok = Mask($1) | |
227. store_condition_mask $28 = CondMask | |
228. copy_slot_unmasked $29 = ok | |
229. zero_slot_unmasked $1 = 0 | |
230. merge_condition_mask CondMask = $28 & $29 | |
231. branch_if_no_lanes_active branch_if_no_lanes_active +16 (label 14 at #247) | |
232. copy_constant $12 = 0x3F800000 (1.0) | |
233. swizzle_3 $12..14 = ($12..14).xxx | |
234. copy_slot_unmasked $15 = num | |
235. copy_constant $16 = 0x3F800000 (1.0) | |
236. add_float $15 += $16 | |
237. copy_slot_masked num = Mask($15) | |
238. swizzle_3 $15..17 = ($15..17).xxx | |
239. zero_3_slots_unmasked $18..20 = 0 | |
240. copy_3_slots_unmasked $2..4 = $12..14 | |
241. copy_constant $5 = 0x3F800000 (1.0) | |
242. swizzle_3 $5..7 = ($5..7).xxx | |
243. cmpeq_3_floats $2..4 = equal($2..4, $5..7) | |
244. bitwise_and_int $3 &= $4 | |
245. bitwise_and_int $2 &= $3 | |
246. copy_slot_masked $1 = Mask($2) | |
247. label label 0x0000000E | |
248. load_condition_mask CondMask = $28 | |
249. copy_slot_masked ok = Mask($1) | |
250. store_condition_mask $28 = CondMask | |
251. copy_slot_unmasked $29 = ok | |
252. zero_slot_unmasked $1 = 0 | |
253. merge_condition_mask CondMask = $28 & $29 | |
254. branch_if_no_lanes_active branch_if_no_lanes_active +15 (label 15 at #269) | |
255. copy_constant $12 = 0x3F800000 (1.0) | |
256. swizzle_3 $12..14 = ($12..14).xxx | |
257. copy_slot_unmasked $15 = num | |
258. copy_constant $16 = 0x3F800000 (1.0) | |
259. add_float $15 += $16 | |
260. copy_slot_masked num = Mask($15) | |
261. swizzle_3 $15..17 = ($15..17).xxx | |
262. zero_3_slots_unmasked $18..20 = 0 | |
263. copy_3_slots_unmasked $2..4 = $18..20 | |
264. zero_3_slots_unmasked $5..7 = 0 | |
265. cmpeq_3_floats $2..4 = equal($2..4, $5..7) | |
266. bitwise_and_int $3 &= $4 | |
267. bitwise_and_int $2 &= $3 | |
268. copy_slot_masked $1 = Mask($2) | |
269. label label 0x0000000F | |
270. load_condition_mask CondMask = $28 | |
271. copy_slot_masked ok = Mask($1) | |
272. store_condition_mask $28 = CondMask | |
273. copy_slot_unmasked $29 = ok | |
274. zero_slot_unmasked $1 = 0 | |
275. merge_condition_mask CondMask = $28 & $29 | |
276. branch_if_no_lanes_active branch_if_no_lanes_active +16 (label 16 at #292) | |
277. copy_slot_unmasked $12 = num | |
278. copy_constant $13 = 0x3F800000 (1.0) | |
279. add_float $12 += $13 | |
280. copy_slot_masked num = Mask($12) | |
281. swizzle_3 $12..14 = ($12..14).xxx | |
282. copy_constant $15 = 0x3F800000 (1.0) | |
283. swizzle_3 $15..17 = ($15..17).xxx | |
284. zero_3_slots_unmasked $18..20 = 0 | |
285. copy_3_slots_unmasked $2..4 = $15..17 | |
286. copy_constant $5 = 0x3F800000 (1.0) | |
287. swizzle_3 $5..7 = ($5..7).xxx | |
288. cmpeq_3_floats $2..4 = equal($2..4, $5..7) | |
289. bitwise_and_int $3 &= $4 | |
290. bitwise_and_int $2 &= $3 | |
291. copy_slot_masked $1 = Mask($2) | |
292. label label 0x00000010 | |
293. load_condition_mask CondMask = $28 | |
294. copy_slot_masked ok = Mask($1) | |
295. store_condition_mask $28 = CondMask | |
296. copy_slot_unmasked $29 = ok | |
297. zero_slot_unmasked $1 = 0 | |
298. merge_condition_mask CondMask = $28 & $29 | |
299. branch_if_no_lanes_active branch_if_no_lanes_active +21 (label 17 at #320) | |
300. copy_constant $12 = 0x3F800000 (1.0) | |
301. copy_constant $13 = 0x40000000 (2.0) | |
302. copy_constant $14 = 0x40400000 (3.0) | |
303. copy_constant $15 = 0x40800000 (4.0) | |
304. copy_constant $16 = 0x40A00000 (5.0) | |
305. copy_slot_unmasked $17 = num | |
306. copy_constant $18 = 0x3F800000 (1.0) | |
307. add_float $17 += $18 | |
308. copy_slot_masked num = Mask($17) | |
309. copy_constant $18 = 0x40E00000 (7.0) | |
310. copy_constant $19 = 0x41000000 (8.0) | |
311. copy_constant $20 = 0x41100000 (9.0) | |
312. copy_3_slots_unmasked $2..4 = $12..14 | |
313. copy_constant $5 = 0x3F800000 (1.0) | |
314. copy_constant $6 = 0x40000000 (2.0) | |
315. copy_constant $7 = 0x40400000 (3.0) | |
316. cmpeq_3_floats $2..4 = equal($2..4, $5..7) | |
317. bitwise_and_int $3 &= $4 | |
318. bitwise_and_int $2 &= $3 | |
319. copy_slot_masked $1 = Mask($2) | |
320. label label 0x00000011 | |
321. load_condition_mask CondMask = $28 | |
322. copy_slot_masked ok = Mask($1) | |
323. store_condition_mask $28 = CondMask | |
324. copy_slot_unmasked $29 = ok | |
325. zero_slot_unmasked $1 = 0 | |
326. merge_condition_mask CondMask = $28 & $29 | |
327. branch_if_no_lanes_active branch_if_no_lanes_active +22 (label 18 at #349) | |
328. copy_constant $12 = 0x3F800000 (1.0) | |
329. copy_constant $13 = 0x40000000 (2.0) | |
330. copy_constant $14 = 0x40400000 (3.0) | |
331. copy_constant $15 = 0x40800000 (4.0) | |
332. copy_constant $16 = 0x40A00000 (5.0) | |
333. copy_constant $17 = 0x40C00000 (6.0) | |
334. copy_slot_unmasked $18 = num | |
335. copy_slot_unmasked $19 = $18 | |
336. copy_constant $20 = 0x3F800000 (1.0) | |
337. add_float $19 += $20 | |
338. copy_slot_masked num = Mask($19) | |
339. copy_constant $19 = 0x41000000 (8.0) | |
340. copy_constant $20 = 0x41100000 (9.0) | |
341. copy_3_slots_unmasked $2..4 = $15..17 | |
342. copy_constant $5 = 0x40800000 (4.0) | |
343. copy_constant $6 = 0x40A00000 (5.0) | |
344. copy_constant $7 = 0x40C00000 (6.0) | |
345. cmpeq_3_floats $2..4 = equal($2..4, $5..7) | |
346. bitwise_and_int $3 &= $4 | |
347. bitwise_and_int $2 &= $3 | |
348. copy_slot_masked $1 = Mask($2) | |
349. label label 0x00000012 | |
350. load_condition_mask CondMask = $28 | |
351. copy_slot_masked ok = Mask($1) | |
352. store_condition_mask $28 = CondMask | |
353. copy_slot_unmasked $29 = ok | |
354. zero_slot_unmasked $1 = 0 | |
355. merge_condition_mask CondMask = $28 & $29 | |
356. branch_if_no_lanes_active branch_if_no_lanes_active +19 (label 19 at #375) | |
357. copy_slot_unmasked $12 = num | |
358. copy_constant $13 = 0x3F800000 (1.0) | |
359. add_float $12 += $13 | |
360. copy_slot_masked num = Mask($12) | |
361. swizzle_4 $12..15 = ($12..15).xxxx | |
362. copy_constant $16 = 0x3F800000 (1.0) | |
363. swizzle_4 $16..19 = ($16..19).xxxx | |
364. copy_constant $20 = 0x40000000 (2.0) | |
365. swizzle_4 $20..23 = ($20..23).xxxx | |
366. copy_constant $24 = 0x40400000 (3.0) | |
367. swizzle_4 $24..27 = ($24..27).xxxx | |
368. copy_4_slots_unmasked $2..5 = $16..19 | |
369. copy_constant $6 = 0x3F800000 (1.0) | |
370. swizzle_4 $6..9 = ($6..9).xxxx | |
371. cmpeq_4_floats $2..5 = equal($2..5, $6..9) | |
372. bitwise_and_2_ints $2..3 &= $4..5 | |
373. bitwise_and_int $2 &= $3 | |
374. copy_slot_masked $1 = Mask($2) | |
375. label label 0x00000013 | |
376. load_condition_mask CondMask = $28 | |
377. copy_slot_masked ok = Mask($1) | |
378. store_condition_mask $28 = CondMask | |
379. copy_slot_unmasked $29 = ok | |
380. zero_slot_unmasked $1 = 0 | |
381. merge_condition_mask CondMask = $28 & $29 | |
382. branch_if_no_lanes_active branch_if_no_lanes_active +19 (label 20 at #401) | |
383. copy_constant $12 = 0x3F800000 (1.0) | |
384. swizzle_4 $12..15 = ($12..15).xxxx | |
385. copy_slot_unmasked $16 = num | |
386. copy_constant $17 = 0x3F800000 (1.0) | |
387. add_float $16 += $17 | |
388. copy_slot_masked num = Mask($16) | |
389. swizzle_4 $16..19 = ($16..19).xxxx | |
390. copy_constant $20 = 0x40000000 (2.0) | |
391. swizzle_4 $20..23 = ($20..23).xxxx | |
392. copy_constant $24 = 0x40400000 (3.0) | |
393. swizzle_4 $24..27 = ($24..27).xxxx | |
394. copy_4_slots_unmasked $2..5 = $20..23 | |
395. copy_constant $6 = 0x40000000 (2.0) | |
396. swizzle_4 $6..9 = ($6..9).xxxx | |
397. cmpeq_4_floats $2..5 = equal($2..5, $6..9) | |
398. bitwise_and_2_ints $2..3 &= $4..5 | |
399. bitwise_and_int $2 &= $3 | |
400. copy_slot_masked $1 = Mask($2) | |
401. label label 0x00000014 | |
402. load_condition_mask CondMask = $28 | |
403. copy_slot_masked ok = Mask($1) | |
404. store_condition_mask $28 = CondMask | |
405. copy_slot_unmasked $29 = ok | |
406. zero_slot_unmasked $1 = 0 | |
407. merge_condition_mask CondMask = $28 & $29 | |
408. branch_if_no_lanes_active branch_if_no_lanes_active +19 (label 21 at #427) | |
409. copy_constant $12 = 0x3F800000 (1.0) | |
410. swizzle_4 $12..15 = ($12..15).xxxx | |
411. copy_constant $16 = 0x3F800000 (1.0) | |
412. swizzle_4 $16..19 = ($16..19).xxxx | |
413. copy_slot_unmasked $20 = num | |
414. copy_constant $21 = 0x3F800000 (1.0) | |
415. add_float $20 += $21 | |
416. copy_slot_masked num = Mask($20) | |
417. swizzle_4 $20..23 = ($20..23).xxxx | |
418. copy_constant $24 = 0x40400000 (3.0) | |
419. swizzle_4 $24..27 = ($24..27).xxxx | |
420. copy_4_slots_unmasked $2..5 = $24..27 | |
421. copy_constant $6 = 0x40400000 (3.0) | |
422. swizzle_4 $6..9 = ($6..9).xxxx | |
423. cmpeq_4_floats $2..5 = equal($2..5, $6..9) | |
424. bitwise_and_2_ints $2..3 &= $4..5 | |
425. bitwise_and_int $2 &= $3 | |
426. copy_slot_masked $1 = Mask($2) | |
427. label label 0x00000015 | |
428. load_condition_mask CondMask = $28 | |
429. copy_slot_masked ok = Mask($1) | |
430. store_condition_mask $28 = CondMask | |
431. copy_slot_unmasked $29 = ok | |
432. zero_slot_unmasked $1 = 0 | |
433. merge_condition_mask CondMask = $28 & $29 | |
434. branch_if_no_lanes_active branch_if_no_lanes_active +26 (label 22 at #460) | |
435. copy_constant $12 = 0x3F800000 (1.0) | |
436. copy_constant $13 = 0x40000000 (2.0) | |
437. copy_constant $14 = 0x40400000 (3.0) | |
438. copy_constant $15 = 0x40800000 (4.0) | |
439. copy_constant $16 = 0x40A00000 (5.0) | |
440. copy_constant $17 = 0x40C00000 (6.0) | |
441. copy_constant $18 = 0x40E00000 (7.0) | |
442. copy_constant $19 = 0x41000000 (8.0) | |
443. copy_constant $20 = 0x41100000 (9.0) | |
444. copy_constant $21 = 0x41200000 (10.0) | |
445. copy_constant $22 = 0x41300000 (11.0) | |
446. copy_constant $23 = 0x41400000 (12.0) | |
447. copy_constant $24 = 0x41500000 (13.0) | |
448. copy_constant $25 = 0x41600000 (14.0) | |
449. copy_slot_unmasked $26 = num | |
450. copy_constant $27 = 0x3F800000 (1.0) | |
451. add_float $26 += $27 | |
452. copy_slot_masked num = Mask($26) | |
453. copy_constant $27 = 0x41800000 (16.0) | |
454. copy_4_slots_unmasked $2..5 = $24..27 | |
455. copy_constant $4 = 0x41500000 (13.0) | |
456. copy_constant $5 = 0x41600000 (14.0) | |
457. cmpeq_2_floats $2..3 = equal($2..3, $4..5) | |
458. bitwise_and_int $2 &= $3 | |
459. copy_slot_masked $1 = Mask($2) | |
460. label label 0x00000016 | |
461. load_condition_mask CondMask = $28 | |
462. copy_slot_masked ok = Mask($1) | |
463. copy_slot_unmasked $2 = num | |
464. copy_constant $3 = 0x41300000 (11.0) | |
465. cmpeq_float $2 = equal($2, $3) | |
466. bitwise_and_int $1 &= $2 | |
467. label label 0x0000000B | |
468. copy_slot_masked $0 = Mask($1) | |
469. label label 0x0000000A | |
470. load_condition_mask CondMask = $30 | |
471. swizzle_4 $0..3 = ($0..3).xxxx | |
472. copy_4_constants $4..7 = colorRed | |
473. copy_4_constants $8..11 = colorGreen | |
474. mix_4_ints $0..3 = mix($4..7, $8..11, $0..3) | |
475. load_src src.rgba = $0..3 |