1. store_src_rg coords = src.rg | |
2. init_lane_masks CondMask = LoopMask = RetMask = true | |
3. copy_constant $0 = colorWhite(0) | |
4. copy_slot_unmasked _0_x = $0 | |
5. zero_slot_unmasked $0 = 0 | |
6. copy_slot_unmasked $1 = _0_x | |
7. sub_float $0 -= $1 | |
8. copy_slot_unmasked _0_x = $0 | |
9. store_condition_mask $11 = CondMask | |
10. store_condition_mask $51 = CondMask | |
11. store_condition_mask $71 = CondMask | |
12. store_condition_mask $45 = CondMask | |
13. store_condition_mask $85 = CondMask | |
14. store_condition_mask $81 = CondMask | |
15. store_condition_mask $8 = CondMask | |
16. copy_slot_unmasked $9 = _0_x | |
17. copy_constant $10 = 0xBF800000 (-1.0) | |
18. cmpeq_float $9 = equal($9, $10) | |
19. zero_slot_unmasked $82 = 0 | |
20. merge_condition_mask CondMask = $8 & $9 | |
21. branch_if_no_active_lanes branch_if_no_active_lanes +12 (#33) | |
22. copy_constant $83 = colorWhite(0) | |
23. cast_to_int_from_float $83 = FloatToInt($83) | |
24. copy_slot_unmasked x = $83 | |
25. zero_slot_unmasked $83 = 0 | |
26. copy_slot_unmasked $84 = x | |
27. sub_int $83 -= $84 | |
28. copy_slot_masked x = Mask($83) | |
29. copy_constant $84 = 0xFFFFFFFF | |
30. cmpeq_int $83 = equal($83, $84) | |
31. copy_slot_masked [test_iscalar].result = Mask($83) | |
32. copy_slot_masked $82 = Mask($83) | |
33. load_condition_mask CondMask = $8 | |
34. zero_slot_unmasked $86 = 0 | |
35. merge_condition_mask CondMask = $81 & $82 | |
36. branch_if_no_active_lanes branch_if_no_active_lanes +13 (#49) | |
37. copy_2_constants $87..88 = colorWhite(0..1) | |
38. copy_2_slots_unmasked x = $87..88 | |
39. zero_2_slots_unmasked $87..88 = 0 | |
40. copy_2_slots_unmasked $89..90 = x | |
41. sub_2_floats $87..88 -= $89..90 | |
42. copy_2_slots_masked x = Mask($87..88) | |
43. copy_constant $89 = 0xBF800000 (-1.0) | |
44. copy_slot_unmasked $90 = $89 | |
45. cmpeq_2_floats $87..88 = equal($87..88, $89..90) | |
46. bitwise_and_int $87 &= $88 | |
47. copy_slot_masked [test_fvec].result = Mask($87) | |
48. copy_slot_masked $86 = Mask($87) | |
49. load_condition_mask CondMask = $81 | |
50. zero_slot_unmasked $46 = 0 | |
51. merge_condition_mask CondMask = $85 & $86 | |
52. branch_if_no_active_lanes branch_if_no_active_lanes +15 (#67) | |
53. copy_constant $47 = colorWhite(0) | |
54. cast_to_int_from_float $47 = FloatToInt($47) | |
55. copy_slot_unmasked $48 = $47 | |
56. copy_2_slots_unmasked x = $47..48 | |
57. zero_2_slots_unmasked $47..48 = 0 | |
58. copy_2_slots_unmasked $49..50 = x | |
59. sub_2_ints $47..48 -= $49..50 | |
60. copy_2_slots_masked x = Mask($47..48) | |
61. copy_constant $49 = 0xFFFFFFFF | |
62. copy_slot_unmasked $50 = $49 | |
63. cmpeq_2_ints $47..48 = equal($47..48, $49..50) | |
64. bitwise_and_int $47 &= $48 | |
65. copy_slot_masked [test_ivec].result = Mask($47) | |
66. copy_slot_masked $46 = Mask($47) | |
67. load_condition_mask CondMask = $85 | |
68. zero_slot_unmasked $72 = 0 | |
69. merge_condition_mask CondMask = $45 & $46 | |
70. branch_if_no_active_lanes branch_if_no_active_lanes +17 (#87) | |
71. copy_constant negated(0) = 0xBF800000 (-1.0) | |
72. copy_constant negated(1) = 0xC0000000 (-2.0) | |
73. copy_constant negated(2) = 0xC0400000 (-3.0) | |
74. copy_constant negated(3) = 0xC0800000 (-4.0) | |
75. copy_4_constants $73..76 = testMatrix2x2 | |
76. copy_4_slots_unmasked x = $73..76 | |
77. zero_4_slots_unmasked $73..76 = 0 | |
78. copy_4_slots_unmasked $77..80 = x | |
79. sub_4_floats $73..76 -= $77..80 | |
80. copy_4_slots_masked x = Mask($73..76) | |
81. copy_4_slots_unmasked $77..80 = negated | |
82. cmpeq_4_floats $73..76 = equal($73..76, $77..80) | |
83. bitwise_and_2_ints $73..74 &= $75..76 | |
84. bitwise_and_int $73 &= $74 | |
85. copy_slot_masked [test_mat2].result = Mask($73) | |
86. copy_slot_masked $72 = Mask($73) | |
87. load_condition_mask CondMask = $45 | |
88. zero_slot_unmasked $52 = 0 | |
89. merge_condition_mask CondMask = $71 & $72 | |
90. branch_if_no_active_lanes branch_if_no_active_lanes +36 (#126) | |
91. copy_constant negated(0) = 0xBF800000 (-1.0) | |
92. copy_constant negated(1) = 0xC0000000 (-2.0) | |
93. copy_constant negated(2) = 0xC0400000 (-3.0) | |
94. copy_constant negated(3) = 0xC0800000 (-4.0) | |
95. copy_constant negated(4) = 0xC0A00000 (-5.0) | |
96. copy_constant negated(5) = 0xC0C00000 (-6.0) | |
97. copy_constant negated(6) = 0xC0E00000 (-7.0) | |
98. copy_constant negated(7) = 0xC1000000 (-8.0) | |
99. copy_constant negated(8) = 0xC1100000 (-9.0) | |
100. copy_4_constants $53..56 = testMatrix3x3(0..3) | |
101. copy_4_constants $57..60 = testMatrix3x3(4..7) | |
102. copy_constant $61 = testMatrix3x3(8) | |
103. copy_4_slots_unmasked x(0..3) = $53..56 | |
104. copy_4_slots_unmasked x(4..7) = $57..60 | |
105. copy_slot_unmasked x(8) = $61 | |
106. zero_4_slots_unmasked $53..56 = 0 | |
107. zero_4_slots_unmasked $57..60 = 0 | |
108. zero_slot_unmasked $61 = 0 | |
109. copy_4_slots_unmasked $62..65 = x(0..3) | |
110. copy_4_slots_unmasked $66..69 = x(4..7) | |
111. copy_slot_unmasked $70 = x(8) | |
112. sub_n_floats $53..61 -= $62..70 | |
113. copy_4_slots_masked x(0..3) = Mask($53..56) | |
114. copy_4_slots_masked x(4..7) = Mask($57..60) | |
115. copy_slot_masked x(8) = Mask($61) | |
116. copy_4_slots_unmasked $62..65 = negated(0..3) | |
117. copy_4_slots_unmasked $66..69 = negated(4..7) | |
118. copy_slot_unmasked $70 = negated(8) | |
119. cmpeq_n_floats $53..61 = equal($53..61, $62..70) | |
120. bitwise_and_4_ints $54..57 &= $58..61 | |
121. bitwise_and_2_ints $54..55 &= $56..57 | |
122. bitwise_and_int $54 &= $55 | |
123. bitwise_and_int $53 &= $54 | |
124. copy_slot_masked [test_mat3].result = Mask($53) | |
125. copy_slot_masked $52 = Mask($53) | |
126. load_condition_mask CondMask = $71 | |
127. zero_slot_unmasked $12 = 0 | |
128. merge_condition_mask CondMask = $51 & $52 | |
129. branch_if_no_active_lanes branch_if_no_active_lanes +50 (#179) | |
130. copy_constant negated(0) = 0xBF800000 (-1.0) | |
131. copy_constant negated(1) = 0xC0000000 (-2.0) | |
132. copy_constant negated(2) = 0xC0400000 (-3.0) | |
133. copy_constant negated(3) = 0xC0800000 (-4.0) | |
134. copy_constant negated(4) = 0xC0A00000 (-5.0) | |
135. copy_constant negated(5) = 0xC0C00000 (-6.0) | |
136. copy_constant negated(6) = 0xC0E00000 (-7.0) | |
137. copy_constant negated(7) = 0xC1000000 (-8.0) | |
138. copy_constant negated(8) = 0xC1100000 (-9.0) | |
139. copy_constant negated(9) = 0xC1200000 (-10.0) | |
140. copy_constant negated(10) = 0xC1300000 (-11.0) | |
141. copy_constant negated(11) = 0xC1400000 (-12.0) | |
142. copy_constant negated(12) = 0xC1500000 (-13.0) | |
143. copy_constant negated(13) = 0xC1600000 (-14.0) | |
144. copy_constant negated(14) = 0xC1700000 (-15.0) | |
145. copy_constant negated(15) = 0xC1800000 (-16.0) | |
146. copy_4_constants $13..16 = testMatrix4x4(0..3) | |
147. copy_4_constants $17..20 = testMatrix4x4(4..7) | |
148. copy_4_constants $21..24 = testMatrix4x4(8..11) | |
149. copy_4_constants $25..28 = testMatrix4x4(12..15) | |
150. copy_4_slots_unmasked x(0..3) = $13..16 | |
151. copy_4_slots_unmasked x(4..7) = $17..20 | |
152. copy_4_slots_unmasked x(8..11) = $21..24 | |
153. copy_4_slots_unmasked x(12..15) = $25..28 | |
154. zero_4_slots_unmasked $13..16 = 0 | |
155. zero_4_slots_unmasked $17..20 = 0 | |
156. zero_4_slots_unmasked $21..24 = 0 | |
157. zero_4_slots_unmasked $25..28 = 0 | |
158. copy_4_slots_unmasked $29..32 = x(0..3) | |
159. copy_4_slots_unmasked $33..36 = x(4..7) | |
160. copy_4_slots_unmasked $37..40 = x(8..11) | |
161. copy_4_slots_unmasked $41..44 = x(12..15) | |
162. sub_n_floats $13..28 -= $29..44 | |
163. copy_4_slots_masked x(0..3) = Mask($13..16) | |
164. copy_4_slots_masked x(4..7) = Mask($17..20) | |
165. copy_4_slots_masked x(8..11) = Mask($21..24) | |
166. copy_4_slots_masked x(12..15) = Mask($25..28) | |
167. copy_4_slots_unmasked $29..32 = negated(0..3) | |
168. copy_4_slots_unmasked $33..36 = negated(4..7) | |
169. copy_4_slots_unmasked $37..40 = negated(8..11) | |
170. copy_4_slots_unmasked $41..44 = negated(12..15) | |
171. cmpeq_n_floats $13..28 = equal($13..28, $29..44) | |
172. bitwise_and_4_ints $21..24 &= $25..28 | |
173. bitwise_and_4_ints $17..20 &= $21..24 | |
174. bitwise_and_4_ints $13..16 &= $17..20 | |
175. bitwise_and_2_ints $13..14 &= $15..16 | |
176. bitwise_and_int $13 &= $14 | |
177. copy_slot_masked [test_mat4].result = Mask($13) | |
178. copy_slot_masked $12 = Mask($13) | |
179. load_condition_mask CondMask = $51 | |
180. copy_4_constants $0..3 = colorRed | |
181. merge_condition_mask CondMask = $11 & $12 | |
182. copy_4_constants $4..7 = colorGreen | |
183. copy_4_slots_masked $0..3 = Mask($4..7) | |
184. load_condition_mask CondMask = $11 | |
185. copy_4_slots_unmasked [main].result = $0..3 | |
186. load_src src.rgba = [main].result |