1. store_src_rg coords = src.rg | |
2. init_lane_masks CondMask = LoopMask = RetMask = true | |
3. zero_slot_unmasked h = 0 | |
4. copy_constant $0 = colorWhite(0) | |
5. copy_slot_unmasked v = $0 | |
6. copy_slot_unmasked h = $0 | |
7. zero_2_slots_unmasked h2 = 0 | |
8. copy_constant $0 = colorWhite(1) | |
9. copy_slot_unmasked $1 = $0 | |
10. copy_2_slots_unmasked v = $0..1 | |
11. copy_2_slots_unmasked h2 = $0..1 | |
12. zero_3_slots_unmasked h3 = 0 | |
13. copy_constant $0 = colorWhite(2) | |
14. swizzle_3 $0..2 = ($0..2).xxx | |
15. copy_3_slots_unmasked v = $0..2 | |
16. copy_3_slots_unmasked h3 = $0..2 | |
17. zero_4_slots_unmasked h4 = 0 | |
18. copy_constant $0 = colorWhite(3) | |
19. swizzle_4 $0..3 = ($0..3).xxxx | |
20. copy_4_slots_unmasked v = $0..3 | |
21. copy_4_slots_unmasked h4 = $0..3 | |
22. copy_constant $0 = colorWhite(0) | |
23. copy_slot_unmasked v = $0 | |
24. copy_slot_unmasked h3(1) = $0 | |
25. copy_constant $0 = colorWhite(1) | |
26. copy_slot_unmasked $1 = $0 | |
27. copy_2_slots_unmasked v = $0..1 | |
28. copy_slot_unmasked h3(0) = $0 | |
29. copy_slot_unmasked h3(2) = $1 | |
30. copy_constant $0 = colorWhite(3) | |
31. swizzle_4 $0..3 = ($0..3).xxxx | |
32. copy_4_slots_unmasked v = $0..3 | |
33. copy_2_slots_unmasked h4(2..3) = $0..1 | |
34. copy_2_slots_unmasked h4(0..1) = $2..3 | |
35. zero_4_slots_unmasked h2x2 = 0 | |
36. zero_slot_unmasked $0 = 0 | |
37. copy_constant $1 = colorWhite(0) | |
38. swizzle_4 $0..3 = ($0..3).yxxy | |
39. copy_4_slots_unmasked v = $0..3 | |
40. copy_4_slots_unmasked h2x2 = $0..3 | |
41. zero_4_slots_unmasked h3x3(0..3) = 0 | |
42. zero_4_slots_unmasked h3x3(4..7) = 0 | |
43. zero_slot_unmasked h3x3(8) = 0 | |
44. zero_slot_unmasked $0 = 0 | |
45. copy_constant $1 = colorWhite(1) | |
46. shuffle $0..8 = ($0..8)[1 0 0 0 1 0 0 0 1] | |
47. copy_4_slots_unmasked v(0..3) = $0..3 | |
48. copy_4_slots_unmasked v(4..7) = $4..7 | |
49. copy_slot_unmasked v(8) = $8 | |
50. copy_4_slots_unmasked h3x3(0..3) = $0..3 | |
51. copy_4_slots_unmasked h3x3(4..7) = $4..7 | |
52. copy_slot_unmasked h3x3(8) = $8 | |
53. zero_4_slots_unmasked h4x4(0..3) = 0 | |
54. zero_4_slots_unmasked h4x4(4..7) = 0 | |
55. zero_4_slots_unmasked h4x4(8..11) = 0 | |
56. zero_4_slots_unmasked h4x4(12..15) = 0 | |
57. zero_slot_unmasked $0 = 0 | |
58. copy_constant $1 = colorWhite(2) | |
59. shuffle $0..15 = ($0..15)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1] | |
60. copy_4_slots_unmasked v(0..3) = $0..3 | |
61. copy_4_slots_unmasked v(4..7) = $4..7 | |
62. copy_4_slots_unmasked v(8..11) = $8..11 | |
63. copy_4_slots_unmasked v(12..15) = $12..15 | |
64. copy_4_slots_unmasked h4x4(0..3) = $0..3 | |
65. copy_4_slots_unmasked h4x4(4..7) = $4..7 | |
66. copy_4_slots_unmasked h4x4(8..11) = $8..11 | |
67. copy_4_slots_unmasked h4x4(12..15) = $12..15 | |
68. copy_constant $0 = colorWhite(2) | |
69. swizzle_3 $0..2 = ($0..2).xxx | |
70. copy_3_slots_unmasked v = $0..2 | |
71. copy_3_slots_unmasked h3x3(3..5) = $0..2 | |
72. copy_constant $0 = colorWhite(0) | |
73. copy_slot_unmasked v = $0 | |
74. copy_slot_unmasked h4x4(15) = $0 | |
75. copy_constant $0 = colorWhite(0) | |
76. copy_slot_unmasked v = $0 | |
77. copy_slot_unmasked h2x2(0) = $0 | |
78. zero_slot_unmasked i = 0 | |
79. copy_constant $0 = colorWhite(0) | |
80. cast_to_int_from_float $0 = FloatToInt($0) | |
81. copy_slot_unmasked v = $0 | |
82. copy_slot_unmasked i = $0 | |
83. zero_2_slots_unmasked i2 = 0 | |
84. copy_constant $0 = colorWhite(1) | |
85. cast_to_int_from_float $0 = FloatToInt($0) | |
86. copy_slot_unmasked $1 = $0 | |
87. copy_2_slots_unmasked v = $0..1 | |
88. copy_2_slots_unmasked i2 = $0..1 | |
89. zero_3_slots_unmasked i3 = 0 | |
90. copy_constant $0 = colorWhite(2) | |
91. cast_to_int_from_float $0 = FloatToInt($0) | |
92. swizzle_3 $0..2 = ($0..2).xxx | |
93. copy_3_slots_unmasked v = $0..2 | |
94. copy_3_slots_unmasked i3 = $0..2 | |
95. zero_4_slots_unmasked i4 = 0 | |
96. copy_constant $0 = colorWhite(3) | |
97. cast_to_int_from_float $0 = FloatToInt($0) | |
98. swizzle_4 $0..3 = ($0..3).xxxx | |
99. copy_4_slots_unmasked v = $0..3 | |
100. copy_4_slots_unmasked i4 = $0..3 | |
101. copy_constant $0 = colorWhite(2) | |
102. cast_to_int_from_float $0 = FloatToInt($0) | |
103. swizzle_3 $0..2 = ($0..2).xxx | |
104. copy_3_slots_unmasked v = $0..2 | |
105. copy_3_slots_unmasked i4(0..2) = $0..2 | |
106. copy_constant $0 = colorWhite(0) | |
107. cast_to_int_from_float $0 = FloatToInt($0) | |
108. copy_slot_unmasked v = $0 | |
109. copy_slot_unmasked i2(1) = $0 | |
110. zero_slot_unmasked f = 0 | |
111. copy_constant $0 = colorWhite(0) | |
112. copy_slot_unmasked v = $0 | |
113. copy_slot_unmasked f = $0 | |
114. zero_2_slots_unmasked f2 = 0 | |
115. copy_constant $0 = colorWhite(1) | |
116. copy_slot_unmasked $1 = $0 | |
117. copy_2_slots_unmasked v = $0..1 | |
118. copy_2_slots_unmasked f2 = $0..1 | |
119. zero_3_slots_unmasked f3 = 0 | |
120. copy_constant $0 = colorWhite(2) | |
121. swizzle_3 $0..2 = ($0..2).xxx | |
122. copy_3_slots_unmasked v = $0..2 | |
123. copy_3_slots_unmasked f3 = $0..2 | |
124. zero_4_slots_unmasked f4 = 0 | |
125. copy_constant $0 = colorWhite(3) | |
126. swizzle_4 $0..3 = ($0..3).xxxx | |
127. copy_4_slots_unmasked v = $0..3 | |
128. copy_4_slots_unmasked f4 = $0..3 | |
129. copy_constant $0 = colorWhite(1) | |
130. copy_slot_unmasked $1 = $0 | |
131. copy_2_slots_unmasked v = $0..1 | |
132. copy_2_slots_unmasked f3(0..1) = $0..1 | |
133. copy_constant $0 = colorWhite(0) | |
134. copy_slot_unmasked v = $0 | |
135. copy_slot_unmasked f2(0) = $0 | |
136. zero_4_slots_unmasked f2x2 = 0 | |
137. zero_slot_unmasked $0 = 0 | |
138. copy_constant $1 = colorWhite(0) | |
139. swizzle_4 $0..3 = ($0..3).yxxy | |
140. copy_4_slots_unmasked v = $0..3 | |
141. copy_4_slots_unmasked f2x2 = $0..3 | |
142. zero_4_slots_unmasked f3x3(0..3) = 0 | |
143. zero_4_slots_unmasked f3x3(4..7) = 0 | |
144. zero_slot_unmasked f3x3(8) = 0 | |
145. zero_slot_unmasked $0 = 0 | |
146. copy_constant $1 = colorWhite(1) | |
147. shuffle $0..8 = ($0..8)[1 0 0 0 1 0 0 0 1] | |
148. copy_4_slots_unmasked v(0..3) = $0..3 | |
149. copy_4_slots_unmasked v(4..7) = $4..7 | |
150. copy_slot_unmasked v(8) = $8 | |
151. copy_4_slots_unmasked f3x3(0..3) = $0..3 | |
152. copy_4_slots_unmasked f3x3(4..7) = $4..7 | |
153. copy_slot_unmasked f3x3(8) = $8 | |
154. zero_4_slots_unmasked f4x4(0..3) = 0 | |
155. zero_4_slots_unmasked f4x4(4..7) = 0 | |
156. zero_4_slots_unmasked f4x4(8..11) = 0 | |
157. zero_4_slots_unmasked f4x4(12..15) = 0 | |
158. zero_slot_unmasked $0 = 0 | |
159. copy_constant $1 = colorWhite(2) | |
160. shuffle $0..15 = ($0..15)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1] | |
161. copy_4_slots_unmasked v(0..3) = $0..3 | |
162. copy_4_slots_unmasked v(4..7) = $4..7 | |
163. copy_4_slots_unmasked v(8..11) = $8..11 | |
164. copy_4_slots_unmasked v(12..15) = $12..15 | |
165. copy_4_slots_unmasked f4x4(0..3) = $0..3 | |
166. copy_4_slots_unmasked f4x4(4..7) = $4..7 | |
167. copy_4_slots_unmasked f4x4(8..11) = $8..11 | |
168. copy_4_slots_unmasked f4x4(12..15) = $12..15 | |
169. copy_constant $0 = colorWhite(0) | |
170. copy_slot_unmasked v = $0 | |
171. copy_slot_unmasked f2x2(0) = $0 | |
172. zero_slot_unmasked b = 0 | |
173. copy_constant $0 = colorWhite(0) | |
174. zero_slot_unmasked $1 = 0 | |
175. cmpne_float $0 = notEqual($0, $1) | |
176. copy_slot_unmasked v = $0 | |
177. copy_slot_unmasked b = $0 | |
178. zero_2_slots_unmasked b2 = 0 | |
179. copy_constant $0 = colorWhite(1) | |
180. zero_slot_unmasked $1 = 0 | |
181. cmpne_float $0 = notEqual($0, $1) | |
182. copy_slot_unmasked $1 = $0 | |
183. copy_2_slots_unmasked v = $0..1 | |
184. copy_2_slots_unmasked b2 = $0..1 | |
185. zero_3_slots_unmasked b3 = 0 | |
186. copy_constant $0 = colorWhite(2) | |
187. zero_slot_unmasked $1 = 0 | |
188. cmpne_float $0 = notEqual($0, $1) | |
189. swizzle_3 $0..2 = ($0..2).xxx | |
190. copy_3_slots_unmasked v = $0..2 | |
191. copy_3_slots_unmasked b3 = $0..2 | |
192. zero_4_slots_unmasked b4 = 0 | |
193. copy_constant $0 = colorWhite(3) | |
194. zero_slot_unmasked $1 = 0 | |
195. cmpne_float $0 = notEqual($0, $1) | |
196. swizzle_4 $0..3 = ($0..3).xxxx | |
197. copy_4_slots_unmasked v = $0..3 | |
198. copy_4_slots_unmasked b4 = $0..3 | |
199. copy_constant $0 = colorWhite(1) | |
200. zero_slot_unmasked $1 = 0 | |
201. cmpne_float $0 = notEqual($0, $1) | |
202. copy_slot_unmasked $1 = $0 | |
203. copy_2_slots_unmasked v = $0..1 | |
204. copy_slot_unmasked b4(0) = $0 | |
205. copy_slot_unmasked b4(3) = $1 | |
206. copy_constant $0 = colorWhite(0) | |
207. zero_slot_unmasked $1 = 0 | |
208. cmpne_float $0 = notEqual($0, $1) | |
209. copy_slot_unmasked v = $0 | |
210. copy_slot_unmasked b3(2) = $0 | |
211. copy_constant ok = 0xFFFFFFFF | |
212. copy_slot_unmasked $0 = ok | |
213. copy_constant $1 = 0x3F800000 (1.0) | |
214. copy_slot_unmasked $2 = h | |
215. copy_slot_unmasked $3 = h2(0) | |
216. mul_float $2 *= $3 | |
217. copy_slot_unmasked $3 = h3(0) | |
218. mul_float $2 *= $3 | |
219. copy_slot_unmasked $3 = h4(0) | |
220. mul_float $2 *= $3 | |
221. copy_slot_unmasked $3 = h2x2(0) | |
222. mul_float $2 *= $3 | |
223. copy_slot_unmasked $3 = h3x3(0) | |
224. mul_float $2 *= $3 | |
225. copy_slot_unmasked $3 = h4x4(0) | |
226. mul_float $2 *= $3 | |
227. cmpeq_float $1 = equal($1, $2) | |
228. bitwise_and_int $0 &= $1 | |
229. copy_slot_unmasked ok = $0 | |
230. copy_constant $1 = 0x3F800000 (1.0) | |
231. copy_slot_unmasked $2 = f | |
232. copy_slot_unmasked $3 = f2(0) | |
233. mul_float $2 *= $3 | |
234. copy_slot_unmasked $3 = f3(0) | |
235. mul_float $2 *= $3 | |
236. copy_slot_unmasked $3 = f4(0) | |
237. mul_float $2 *= $3 | |
238. copy_slot_unmasked $3 = f2x2(0) | |
239. mul_float $2 *= $3 | |
240. copy_slot_unmasked $3 = f3x3(0) | |
241. mul_float $2 *= $3 | |
242. copy_slot_unmasked $3 = f4x4(0) | |
243. mul_float $2 *= $3 | |
244. cmpeq_float $1 = equal($1, $2) | |
245. bitwise_and_int $0 &= $1 | |
246. copy_slot_unmasked ok = $0 | |
247. copy_constant $1 = 0x00000001 (1.401298e-45) | |
248. copy_slot_unmasked $2 = i | |
249. copy_slot_unmasked $3 = i2(0) | |
250. mul_int $2 *= $3 | |
251. copy_slot_unmasked $3 = i3(0) | |
252. mul_int $2 *= $3 | |
253. copy_slot_unmasked $3 = i4(0) | |
254. mul_int $2 *= $3 | |
255. cmpeq_int $1 = equal($1, $2) | |
256. bitwise_and_int $0 &= $1 | |
257. copy_slot_unmasked ok = $0 | |
258. copy_slot_unmasked $1 = b | |
259. copy_slot_unmasked $2 = b2(0) | |
260. bitwise_and_int $1 &= $2 | |
261. copy_slot_unmasked $2 = b3(0) | |
262. bitwise_and_int $1 &= $2 | |
263. copy_slot_unmasked $2 = b4(0) | |
264. bitwise_and_int $1 &= $2 | |
265. bitwise_and_int $0 &= $1 | |
266. copy_slot_unmasked ok = $0 | |
267. store_condition_mask $16 = CondMask | |
268. copy_slot_unmasked $17 = ok | |
269. copy_4_constants $0..3 = colorRed | |
270. merge_condition_mask CondMask = $16 & $17 | |
271. copy_4_constants $4..7 = colorGreen | |
272. copy_4_slots_masked $0..3 = Mask($4..7) | |
273. load_condition_mask CondMask = $16 | |
274. copy_4_slots_unmasked [main].result = $0..3 | |
275. load_src src.rgba = [main].result |