1. store_src_rg coords = src.rg | |
2. init_lane_masks CondMask = LoopMask = RetMask = true | |
3. zero_4_slots_unmasked _0_m = 0 | |
4. zero_4_slots_unmasked _1_mm = 0 | |
5. zero_2_slots_unmasked $0..1 = 0 | |
6. swizzle_4 $0..3 = ($0..3).yxxy | |
7. copy_4_slots_unmasked _3_z = $0..3 | |
8. copy_4_constants $0..3 = testMatrix2x2 | |
9. copy_4_slots_unmasked _0_m = $0..3 | |
10. copy_4_constants $0..3 = testMatrix2x2 | |
11. copy_4_slots_unmasked _0_m = $0..3 | |
12. zero_4_slots_unmasked $0..3 = 0 | |
13. copy_4_slots_unmasked $4..7 = _0_m | |
14. sub_4_floats $0..3 -= $4..7 | |
15. copy_4_slots_unmasked _0_m = $0..3 | |
16. zero_2_slots_unmasked $0..1 = 0 | |
17. swizzle_4 $0..3 = ($0..3).yxxy | |
18. copy_4_slots_unmasked _1_mm = $0..3 | |
19. zero_2_slots_unmasked $0..1 = 0 | |
20. swizzle_4 $0..3 = ($0..3).yxxy | |
21. copy_4_slots_unmasked _1_mm = $0..3 | |
22. store_condition_mask $50 = CondMask | |
23. store_condition_mask $21 = CondMask | |
24. store_condition_mask $8 = CondMask | |
25. copy_4_slots_unmasked $9..12 = _0_m | |
26. zero_4_slots_unmasked $13..16 = 0 | |
27. copy_4_constants $17..20 = testMatrix2x2 | |
28. sub_4_floats $13..16 -= $17..20 | |
29. cmpeq_4_floats $9..12 = equal($9..12, $13..16) | |
30. bitwise_and_2_ints $9..10 &= $11..12 | |
31. bitwise_and_int $9 &= $10 | |
32. copy_4_slots_unmasked $10..13 = _1_mm | |
33. copy_4_slots_unmasked $14..17 = _3_z | |
34. cmpeq_4_floats $10..13 = equal($10..13, $14..17) | |
35. bitwise_and_2_ints $10..11 &= $12..13 | |
36. bitwise_and_int $10 &= $11 | |
37. bitwise_and_int $9 &= $10 | |
38. zero_slot_unmasked $22 = 0 | |
39. merge_condition_mask CondMask = $8 & $9 | |
40. branch_if_no_active_lanes branch_if_no_active_lanes +71 (#111) | |
41. zero_4_slots_unmasked m(0..3) = 0 | |
42. zero_4_slots_unmasked m(4..7) = 0 | |
43. zero_4_slots_unmasked m(8..11) = 0 | |
44. zero_4_slots_unmasked mm(3..6) = 0 | |
45. zero_2_slots_unmasked mm(7..8) = 0 | |
46. zero_2_slots_unmasked $23..24 = 0 | |
47. shuffle $23..31 = ($23..31)[1 0 0 0 1 0 0 0 1] | |
48. copy_4_slots_unmasked z(0..3) = $23..26 | |
49. copy_4_slots_unmasked z(4..7) = $27..30 | |
50. copy_slot_unmasked z(8) = $31 | |
51. copy_4_constants $23..26 = testMatrix3x3(0..3) | |
52. copy_4_constants $27..30 = testMatrix3x3(4..7) | |
53. copy_constant $31 = testMatrix3x3(8) | |
54. copy_4_slots_masked m(0..3) = Mask($23..26) | |
55. copy_4_slots_masked m(4..7) = Mask($27..30) | |
56. copy_slot_masked m(8) = Mask($31) | |
57. copy_4_constants $23..26 = testMatrix3x3(0..3) | |
58. copy_4_constants $27..30 = testMatrix3x3(4..7) | |
59. copy_constant $31 = testMatrix3x3(8) | |
60. copy_4_slots_masked m(0..3) = Mask($23..26) | |
61. copy_4_slots_masked m(4..7) = Mask($27..30) | |
62. copy_slot_masked m(8) = Mask($31) | |
63. zero_4_slots_unmasked $23..26 = 0 | |
64. zero_4_slots_unmasked $27..30 = 0 | |
65. zero_slot_unmasked $31 = 0 | |
66. copy_4_slots_unmasked $32..35 = m(0..3) | |
67. copy_4_slots_unmasked $36..39 = m(4..7) | |
68. copy_slot_unmasked $40 = m(8) | |
69. sub_n_floats $23..31 -= $32..40 | |
70. copy_4_slots_masked m(0..3) = Mask($23..26) | |
71. copy_4_slots_masked m(4..7) = Mask($27..30) | |
72. copy_slot_masked m(8) = Mask($31) | |
73. zero_2_slots_unmasked $23..24 = 0 | |
74. shuffle $23..31 = ($23..31)[1 0 0 0 1 0 0 0 1] | |
75. copy_4_slots_masked mm(0..3) = Mask($23..26) | |
76. copy_4_slots_masked mm(4..7) = Mask($27..30) | |
77. copy_slot_masked mm(8) = Mask($31) | |
78. zero_2_slots_unmasked $23..24 = 0 | |
79. shuffle $23..31 = ($23..31)[1 0 0 0 1 0 0 0 1] | |
80. copy_4_slots_masked mm(0..3) = Mask($23..26) | |
81. copy_4_slots_masked mm(4..7) = Mask($27..30) | |
82. copy_slot_masked mm(8) = Mask($31) | |
83. copy_4_slots_unmasked $23..26 = m(0..3) | |
84. copy_4_slots_unmasked $27..30 = m(4..7) | |
85. copy_slot_unmasked $31 = m(8) | |
86. zero_4_slots_unmasked $32..35 = 0 | |
87. zero_4_slots_unmasked $36..39 = 0 | |
88. zero_slot_unmasked $40 = 0 | |
89. copy_4_constants $41..44 = testMatrix3x3(0..3) | |
90. copy_4_constants $45..48 = testMatrix3x3(4..7) | |
91. copy_constant $49 = testMatrix3x3(8) | |
92. sub_n_floats $32..40 -= $41..49 | |
93. cmpeq_n_floats $23..31 = equal($23..31, $32..40) | |
94. bitwise_and_4_ints $24..27 &= $28..31 | |
95. bitwise_and_2_ints $24..25 &= $26..27 | |
96. bitwise_and_int $24 &= $25 | |
97. bitwise_and_int $23 &= $24 | |
98. copy_4_slots_unmasked $24..27 = mm(0..3) | |
99. copy_4_slots_unmasked $28..31 = mm(4..7) | |
100. copy_4_slots_unmasked $32..35 = mm(8..11) | |
101. copy_4_slots_unmasked $36..39 = z(3..6) | |
102. copy_2_slots_unmasked $40..41 = z(7..8) | |
103. cmpeq_n_floats $24..32 = equal($24..32, $33..41) | |
104. bitwise_and_4_ints $25..28 &= $29..32 | |
105. bitwise_and_2_ints $25..26 &= $27..28 | |
106. bitwise_and_int $25 &= $26 | |
107. bitwise_and_int $24 &= $25 | |
108. bitwise_and_int $23 &= $24 | |
109. copy_slot_masked [test_mat3_mat3].result = Mask($23) | |
110. copy_slot_masked $22 = Mask($23) | |
111. load_condition_mask CondMask = $8 | |
112. zero_slot_unmasked $51 = 0 | |
113. merge_condition_mask CondMask = $21 & $22 | |
114. branch_if_no_active_lanes branch_if_no_active_lanes +100 (#214) | |
115. copy_4_constants $52..55 = testInputs | |
116. copy_4_constants $56..59 = testInputs | |
117. copy_4_constants $60..63 = testInputs | |
118. copy_4_constants $64..67 = testInputs | |
119. copy_4_slots_unmasked testMatrix4x4(0..3) = $52..55 | |
120. copy_4_slots_unmasked testMatrix4x4(4..7) = $56..59 | |
121. copy_4_slots_unmasked testMatrix4x4(8..11) = $60..63 | |
122. copy_4_slots_unmasked testMatrix4x4(12..15) = $64..67 | |
123. zero_4_slots_unmasked m(0..3) = 0 | |
124. zero_4_slots_unmasked m(4..7) = 0 | |
125. zero_4_slots_unmasked m(8..11) = 0 | |
126. zero_4_slots_unmasked m(12..15) = 0 | |
127. zero_4_slots_unmasked mm(0..3) = 0 | |
128. zero_4_slots_unmasked mm(4..7) = 0 | |
129. zero_4_slots_unmasked mm(8..11) = 0 | |
130. zero_4_slots_unmasked mm(12..15) = 0 | |
131. zero_2_slots_unmasked $52..53 = 0 | |
132. shuffle $52..67 = ($52..67)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1] | |
133. copy_4_slots_unmasked z(0..3) = $52..55 | |
134. copy_4_slots_unmasked z(4..7) = $56..59 | |
135. copy_4_slots_unmasked z(8..11) = $60..63 | |
136. copy_4_slots_unmasked z(12..15) = $64..67 | |
137. copy_4_slots_unmasked $52..55 = testMatrix4x4(0..3) | |
138. copy_4_slots_unmasked $56..59 = testMatrix4x4(4..7) | |
139. copy_4_slots_unmasked $60..63 = testMatrix4x4(8..11) | |
140. copy_4_slots_unmasked $64..67 = testMatrix4x4(12..15) | |
141. copy_4_slots_masked m(0..3) = Mask($52..55) | |
142. copy_4_slots_masked m(4..7) = Mask($56..59) | |
143. copy_4_slots_masked m(8..11) = Mask($60..63) | |
144. copy_4_slots_masked m(12..15) = Mask($64..67) | |
145. copy_4_slots_unmasked $52..55 = testMatrix4x4(0..3) | |
146. copy_4_slots_unmasked $56..59 = testMatrix4x4(4..7) | |
147. copy_4_slots_unmasked $60..63 = testMatrix4x4(8..11) | |
148. copy_4_slots_unmasked $64..67 = testMatrix4x4(12..15) | |
149. copy_4_slots_masked m(0..3) = Mask($52..55) | |
150. copy_4_slots_masked m(4..7) = Mask($56..59) | |
151. copy_4_slots_masked m(8..11) = Mask($60..63) | |
152. copy_4_slots_masked m(12..15) = Mask($64..67) | |
153. zero_4_slots_unmasked $52..55 = 0 | |
154. zero_4_slots_unmasked $56..59 = 0 | |
155. zero_4_slots_unmasked $60..63 = 0 | |
156. zero_4_slots_unmasked $64..67 = 0 | |
157. copy_4_slots_unmasked $68..71 = m(0..3) | |
158. copy_4_slots_unmasked $72..75 = m(4..7) | |
159. copy_4_slots_unmasked $76..79 = m(8..11) | |
160. copy_4_slots_unmasked $80..83 = m(12..15) | |
161. sub_n_floats $52..67 -= $68..83 | |
162. copy_4_slots_masked m(0..3) = Mask($52..55) | |
163. copy_4_slots_masked m(4..7) = Mask($56..59) | |
164. copy_4_slots_masked m(8..11) = Mask($60..63) | |
165. copy_4_slots_masked m(12..15) = Mask($64..67) | |
166. zero_2_slots_unmasked $52..53 = 0 | |
167. shuffle $52..67 = ($52..67)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1] | |
168. copy_4_slots_masked mm(0..3) = Mask($52..55) | |
169. copy_4_slots_masked mm(4..7) = Mask($56..59) | |
170. copy_4_slots_masked mm(8..11) = Mask($60..63) | |
171. copy_4_slots_masked mm(12..15) = Mask($64..67) | |
172. zero_2_slots_unmasked $52..53 = 0 | |
173. shuffle $52..67 = ($52..67)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1] | |
174. copy_4_slots_masked mm(0..3) = Mask($52..55) | |
175. copy_4_slots_masked mm(4..7) = Mask($56..59) | |
176. copy_4_slots_masked mm(8..11) = Mask($60..63) | |
177. copy_4_slots_masked mm(12..15) = Mask($64..67) | |
178. copy_4_slots_unmasked $52..55 = m(0..3) | |
179. copy_4_slots_unmasked $56..59 = m(4..7) | |
180. copy_4_slots_unmasked $60..63 = m(8..11) | |
181. copy_4_slots_unmasked $64..67 = m(12..15) | |
182. zero_4_slots_unmasked $68..71 = 0 | |
183. zero_4_slots_unmasked $72..75 = 0 | |
184. zero_4_slots_unmasked $76..79 = 0 | |
185. zero_4_slots_unmasked $80..83 = 0 | |
186. copy_4_slots_unmasked $84..87 = testMatrix4x4(0..3) | |
187. copy_4_slots_unmasked $88..91 = testMatrix4x4(4..7) | |
188. copy_4_slots_unmasked $92..95 = testMatrix4x4(8..11) | |
189. copy_4_slots_unmasked $96..99 = testMatrix4x4(12..15) | |
190. sub_n_floats $68..83 -= $84..99 | |
191. cmpeq_n_floats $52..67 = equal($52..67, $68..83) | |
192. bitwise_and_4_ints $60..63 &= $64..67 | |
193. bitwise_and_4_ints $56..59 &= $60..63 | |
194. bitwise_and_4_ints $52..55 &= $56..59 | |
195. bitwise_and_2_ints $52..53 &= $54..55 | |
196. bitwise_and_int $52 &= $53 | |
197. copy_4_slots_unmasked $53..56 = mm(0..3) | |
198. copy_4_slots_unmasked $57..60 = mm(4..7) | |
199. copy_4_slots_unmasked $61..64 = mm(8..11) | |
200. copy_4_slots_unmasked $65..68 = mm(12..15) | |
201. copy_4_slots_unmasked $69..72 = z(0..3) | |
202. copy_4_slots_unmasked $73..76 = z(4..7) | |
203. copy_4_slots_unmasked $77..80 = z(8..11) | |
204. copy_4_slots_unmasked $81..84 = z(12..15) | |
205. cmpeq_n_floats $53..68 = equal($53..68, $69..84) | |
206. bitwise_and_4_ints $61..64 &= $65..68 | |
207. bitwise_and_4_ints $57..60 &= $61..64 | |
208. bitwise_and_4_ints $53..56 &= $57..60 | |
209. bitwise_and_2_ints $53..54 &= $55..56 | |
210. bitwise_and_int $53 &= $54 | |
211. bitwise_and_int $52 &= $53 | |
212. copy_slot_masked [test_mat4_mat4].result = Mask($52) | |
213. copy_slot_masked $51 = Mask($52) | |
214. load_condition_mask CondMask = $21 | |
215. copy_4_constants $0..3 = colorRed | |
216. merge_condition_mask CondMask = $50 & $51 | |
217. copy_4_constants $4..7 = colorGreen | |
218. copy_4_slots_masked $0..3 = Mask($4..7) | |
219. load_condition_mask CondMask = $50 | |
220. copy_4_slots_unmasked [main].result = $0..3 | |
221. load_src src.rgba = [main].result |