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