blob: 21ff2a9cf5665207514818ba979a354011608eb6 [file] [log] [blame]
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