• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1    1. store_src_rg                   coords = src.rg
2    2. init_lane_masks                CondMask = LoopMask = RetMask = true
3    3. copy_constant                  $0 = unknownInput
4    4. copy_slot_unmasked             _0_unknown = $0
5    5. copy_constant                  _1_ok = 0xFFFFFFFF
6    6. copy_constant                  _2_x = 0x42080000 (34.0)
7    7. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
8    8. copy_constant                  $2 = 0x42080000 (34.0)
9    9. cmpeq_float                    $1 = equal($1, $2)
10   10. bitwise_and_int                $0 &= $1
11   11. copy_slot_unmasked             _1_ok = $0
12   12. copy_constant                  $0 = 0x41F00000 (30.0)
13   13. copy_slot_unmasked             _2_x = $0
14   14. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
15   15. copy_constant                  $2 = 0x41F00000 (30.0)
16   16. cmpeq_float                    $1 = equal($1, $2)
17   17. bitwise_and_int                $0 &= $1
18   18. copy_slot_unmasked             _1_ok = $0
19   19. copy_constant                  $0 = 0x42800000 (64.0)
20   20. copy_slot_unmasked             _2_x = $0
21   21. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
22   22. copy_constant                  $2 = 0x42800000 (64.0)
23   23. cmpeq_float                    $1 = equal($1, $2)
24   24. bitwise_and_int                $0 &= $1
25   25. copy_slot_unmasked             _1_ok = $0
26   26. copy_constant                  $0 = 0x41800000 (16.0)
27   27. copy_slot_unmasked             _2_x = $0
28   28. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
29   29. copy_constant                  $2 = 0x41800000 (16.0)
30   30. cmpeq_float                    $1 = equal($1, $2)
31   31. bitwise_and_int                $0 &= $1
32   32. copy_slot_unmasked             _1_ok = $0
33   33. copy_constant                  $0 = 0x41980000 (19.0)
34   34. copy_slot_unmasked             _2_x = $0
35   35. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
36   36. copy_constant                  $2 = 0x41980000 (19.0)
37   37. cmpeq_float                    $1 = equal($1, $2)
38   38. bitwise_and_int                $0 &= $1
39   39. copy_slot_unmasked             _1_ok = $0
40   40. copy_constant                  $0 = 0x3F800000 (1.0)
41   41. copy_slot_unmasked             _2_x = $0
42   42. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
43   43. copy_constant                  $2 = 0x3F800000 (1.0)
44   44. cmpeq_float                    $1 = equal($1, $2)
45   45. bitwise_and_int                $0 &= $1
46   46. copy_slot_unmasked             _1_ok = $0
47   47. copy_constant                  $0 = 0xC0000000 (-2.0)
48   48. copy_slot_unmasked             _2_x = $0
49   49. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
50   50. copy_constant                  $2 = 0xC0000000 (-2.0)
51   51. cmpeq_float                    $1 = equal($1, $2)
52   52. bitwise_and_int                $0 &= $1
53   53. copy_slot_unmasked             _1_ok = $0
54   54. copy_constant                  $0 = 0x40400000 (3.0)
55   55. copy_slot_unmasked             _2_x = $0
56   56. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
57   57. copy_constant                  $2 = 0x40400000 (3.0)
58   58. cmpeq_float                    $1 = equal($1, $2)
59   59. bitwise_and_int                $0 &= $1
60   60. copy_slot_unmasked             _1_ok = $0
61   61. copy_constant                  $0 = 0xC0800000 (-4.0)
62   62. copy_slot_unmasked             _2_x = $0
63   63. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
64   64. copy_constant                  $2 = 0xC0800000 (-4.0)
65   65. cmpeq_float                    $1 = equal($1, $2)
66   66. bitwise_and_int                $0 &= $1
67   67. copy_slot_unmasked             _1_ok = $0
68   68. copy_constant                  $0 = 0x40A00000 (5.0)
69   69. copy_slot_unmasked             _2_x = $0
70   70. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
71   71. copy_constant                  $2 = 0x40A00000 (5.0)
72   72. cmpeq_float                    $1 = equal($1, $2)
73   73. bitwise_and_int                $0 &= $1
74   74. copy_slot_unmasked             _1_ok = $0
75   75. copy_constant                  $0 = 0xC0C00000 (-6.0)
76   76. copy_slot_unmasked             _2_x = $0
77   77. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
78   78. copy_constant                  $2 = 0xC0C00000 (-6.0)
79   79. cmpeq_float                    $1 = equal($1, $2)
80   80. bitwise_and_int                $0 &= $1
81   81. copy_slot_unmasked             _1_ok = $0
82   82. copy_constant                  $0 = 0x40E00000 (7.0)
83   83. copy_slot_unmasked             _2_x = $0
84   84. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
85   85. copy_constant                  $2 = 0x40E00000 (7.0)
86   86. cmpeq_float                    $1 = equal($1, $2)
87   87. bitwise_and_int                $0 &= $1
88   88. copy_slot_unmasked             _1_ok = $0
89   89. copy_constant                  $0 = 0xC1000000 (-8.0)
90   90. copy_slot_unmasked             _2_x = $0
91   91. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
92   92. copy_constant                  $2 = 0xC1000000 (-8.0)
93   93. cmpeq_float                    $1 = equal($1, $2)
94   94. bitwise_and_int                $0 &= $1
95   95. copy_slot_unmasked             _1_ok = $0
96   96. copy_constant                  $0 = 0x41100000 (9.0)
97   97. copy_slot_unmasked             _2_x = $0
98   98. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
99   99. copy_constant                  $2 = 0x41100000 (9.0)
100  100. cmpeq_float                    $1 = equal($1, $2)
101  101. bitwise_and_int                $0 &= $1
102  102. copy_slot_unmasked             _1_ok = $0
103  103. copy_constant                  $0 = 0xC1200000 (-10.0)
104  104. copy_slot_unmasked             _2_x = $0
105  105. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
106  106. copy_constant                  $2 = 0xC1200000 (-10.0)
107  107. cmpeq_float                    $1 = equal($1, $2)
108  108. bitwise_and_int                $0 &= $1
109  109. copy_slot_unmasked             _1_ok = $0
110  110. copy_constant                  $0 = 0x41300000 (11.0)
111  111. copy_slot_unmasked             _2_x = $0
112  112. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
113  113. copy_constant                  $2 = 0x41300000 (11.0)
114  114. cmpeq_float                    $1 = equal($1, $2)
115  115. bitwise_and_int                $0 &= $1
116  116. copy_slot_unmasked             _1_ok = $0
117  117. copy_constant                  $0 = 0xC1400000 (-12.0)
118  118. copy_slot_unmasked             _2_x = $0
119  119. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
120  120. copy_constant                  $2 = 0xC1400000 (-12.0)
121  121. cmpeq_float                    $1 = equal($1, $2)
122  122. bitwise_and_int                $0 &= $1
123  123. copy_slot_unmasked             _1_ok = $0
124  124. copy_slot_unmasked             $0 = _0_unknown
125  125. copy_slot_unmasked             _2_x = $0
126  126. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
127  127. copy_slot_unmasked             $2 = _0_unknown
128  128. cmpeq_float                    $1 = equal($1, $2)
129  129. bitwise_and_int                $0 &= $1
130  130. copy_slot_unmasked             _1_ok = $0
131  131. copy_slot_unmasked             $0 = _0_unknown
132  132. copy_slot_unmasked             _2_x = $0
133  133. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
134  134. copy_slot_unmasked             $2 = _0_unknown
135  135. cmpeq_float                    $1 = equal($1, $2)
136  136. bitwise_and_int                $0 &= $1
137  137. copy_slot_unmasked             _1_ok = $0
138  138. copy_slot_unmasked             $0 = _0_unknown
139  139. copy_slot_unmasked             _2_x = $0
140  140. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
141  141. copy_slot_unmasked             $2 = _0_unknown
142  142. cmpeq_float                    $1 = equal($1, $2)
143  143. bitwise_and_int                $0 &= $1
144  144. copy_slot_unmasked             _1_ok = $0
145  145. zero_slot_unmasked             $0 = 0
146  146. copy_slot_unmasked             _2_x = $0
147  147. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
148  148. zero_slot_unmasked             $2 = 0
149  149. cmpeq_float                    $1 = equal($1, $2)
150  150. bitwise_and_int                $0 &= $1
151  151. copy_slot_unmasked             _1_ok = $0
152  152. copy_slot_unmasked             $0 = _0_unknown
153  153. copy_slot_unmasked             _2_x = $0
154  154. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
155  155. copy_slot_unmasked             $2 = _0_unknown
156  156. cmpeq_float                    $1 = equal($1, $2)
157  157. bitwise_and_int                $0 &= $1
158  158. copy_slot_unmasked             _1_ok = $0
159  159. copy_slot_unmasked             $0 = _0_unknown
160  160. copy_slot_unmasked             _2_x = $0
161  161. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
162  162. copy_slot_unmasked             $2 = _0_unknown
163  163. cmpeq_float                    $1 = equal($1, $2)
164  164. bitwise_and_int                $0 &= $1
165  165. copy_slot_unmasked             _1_ok = $0
166  166. zero_slot_unmasked             $0 = 0
167  167. copy_slot_unmasked             _2_x = $0
168  168. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
169  169. zero_slot_unmasked             $2 = 0
170  170. cmpeq_float                    $1 = equal($1, $2)
171  171. bitwise_and_int                $0 &= $1
172  172. copy_slot_unmasked             _1_ok = $0
173  173. copy_slot_unmasked             $0 = _0_unknown
174  174. copy_slot_unmasked             _2_x = $0
175  175. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
176  176. copy_slot_unmasked             $2 = _0_unknown
177  177. cmpeq_float                    $1 = equal($1, $2)
178  178. bitwise_and_int                $0 &= $1
179  179. copy_slot_unmasked             _1_ok = $0
180  180. zero_slot_unmasked             $0 = 0
181  181. copy_slot_unmasked             $1 = _0_unknown
182  182. div_float                      $0 /= $1
183  183. copy_slot_unmasked             _2_x = $0
184  184. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
185  185. zero_slot_unmasked             $2 = 0
186  186. cmpeq_float                    $1 = equal($1, $2)
187  187. bitwise_and_int                $0 &= $1
188  188. copy_slot_unmasked             _1_ok = $0
189  189. copy_slot_unmasked             $0 = _2_x
190  190. copy_constant                  $1 = 0x3F800000 (1.0)
191  191. add_float                      $0 += $1
192  192. copy_slot_unmasked             _2_x = $0
193  193. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
194  194. copy_constant                  $2 = 0x3F800000 (1.0)
195  195. cmpeq_float                    $1 = equal($1, $2)
196  196. bitwise_and_int                $0 &= $1
197  197. copy_slot_unmasked             _1_ok = $0
198  198. copy_slot_unmasked             $1 = _2_x
199  199. copy_constant                  $2 = 0x3F800000 (1.0)
200  200. cmpeq_float                    $1 = equal($1, $2)
201  201. bitwise_and_int                $0 &= $1
202  202. copy_slot_unmasked             _1_ok = $0
203  203. copy_slot_unmasked             $0 = _2_x
204  204. copy_constant                  $1 = 0x40000000 (2.0)
205  205. sub_float                      $0 -= $1
206  206. copy_slot_unmasked             _2_x = $0
207  207. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
208  208. copy_constant                  $2 = 0xBF800000 (-1.0)
209  209. cmpeq_float                    $1 = equal($1, $2)
210  210. bitwise_and_int                $0 &= $1
211  211. copy_slot_unmasked             _1_ok = $0
212  212. copy_slot_unmasked             $1 = _2_x
213  213. copy_constant                  $2 = 0xBF800000 (-1.0)
214  214. cmpeq_float                    $1 = equal($1, $2)
215  215. bitwise_and_int                $0 &= $1
216  216. copy_slot_unmasked             _1_ok = $0
217  217. copy_slot_unmasked             $1 = _2_x
218  218. copy_constant                  $2 = 0xBF800000 (-1.0)
219  219. cmpeq_float                    $1 = equal($1, $2)
220  220. bitwise_and_int                $0 &= $1
221  221. copy_slot_unmasked             _1_ok = $0
222  222. copy_slot_unmasked             $0 = _2_x
223  223. copy_constant                  $1 = 0x40000000 (2.0)
224  224. mul_float                      $0 *= $1
225  225. copy_slot_unmasked             _2_x = $0
226  226. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
227  227. copy_constant                  $2 = 0xC0000000 (-2.0)
228  228. cmpeq_float                    $1 = equal($1, $2)
229  229. bitwise_and_int                $0 &= $1
230  230. copy_slot_unmasked             _1_ok = $0
231  231. copy_slot_unmasked             $1 = _2_x
232  232. copy_constant                  $2 = 0xC0000000 (-2.0)
233  233. cmpeq_float                    $1 = equal($1, $2)
234  234. bitwise_and_int                $0 &= $1
235  235. copy_slot_unmasked             _1_ok = $0
236  236. copy_slot_unmasked             $0 = _2_x
237  237. copy_constant                  $1 = 0x3F000000 (0.5)
238  238. mul_float                      $0 *= $1
239  239. copy_slot_unmasked             _2_x = $0
240  240. copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
241  241. copy_constant                  $2 = 0xBF800000 (-1.0)
242  242. cmpeq_float                    $1 = equal($1, $2)
243  243. bitwise_and_int                $0 &= $1
244  244. copy_slot_unmasked             _1_ok = $0
245  245. swizzle_4                      $0..3 = ($0..3).xxxx
246  246. copy_4_constants               $4..7 = colorRed
247  247. copy_4_constants               $8..11 = colorGreen
248  248. mix_4_ints                     $0..3 = mix($4..7, $8..11, $0..3)
249  249. copy_4_slots_unmasked          [main].result = $0..3
250  250. load_src                       src.rgba = [main].result
251