1. store_device_xy01 $12..15 = DeviceCoords.xy01 | |
2. copy_constant $14 = 0x3F000000 (0.5) | |
3. copy_constant $15 = 0x3F000000 (0.5) | |
4. cmpeq_2_floats $12..13 = equal($12..13, $14..15) | |
5. bitwise_and_int $12 &= $13 | |
6. store_src_rg xy = src.rg | |
7. init_lane_masks CondMask = LoopMask = RetMask = true | |
8. trace_enter TraceEnter(half4 main(float2 xy)) when $12 is true | |
9. trace_var TraceVar(xy) when $12 is true | |
10. trace_scope TraceScope(+1) when $12 is true | |
11. trace_line TraceLine(10) when $12 is true | |
12. copy_constant ok = 0xFFFFFFFF | |
13. trace_var TraceVar(ok) when $12 is true | |
14. trace_line TraceLine(11) when $12 is true | |
15. copy_constant $0 = testMatrix2x2(0) | |
16. cast_to_int_from_float $0 = FloatToInt($0) | |
17. copy_slot_unmasked a = $0 | |
18. trace_var TraceVar(a) when $12 is true | |
19. copy_2_constants $0..1 = testMatrix2x2(0..1) | |
20. swizzle_1 $0 = ($0..1).y | |
21. cast_to_int_from_float $0 = FloatToInt($0) | |
22. copy_slot_unmasked b = $0 | |
23. trace_var TraceVar(b) when $12 is true | |
24. trace_line TraceLine(12) when $12 is true | |
25. copy_constant $0 = testMatrix2x2(2) | |
26. copy_slot_unmasked c = $0 | |
27. trace_var TraceVar(c) when $12 is true | |
28. copy_2_constants $0..1 = testMatrix2x2(2..3) | |
29. swizzle_1 $0 = ($0..1).y | |
30. copy_slot_unmasked d = $0 | |
31. trace_var TraceVar(d) when $12 is true | |
32. trace_line TraceLine(14) when $12 is true | |
33. copy_2_slots_unmasked $0..1 = a, b | |
34. bitwise_and_int $0 &= $1 | |
35. copy_slot_unmasked a_and_b = $0 | |
36. trace_var TraceVar(a_and_b) when $12 is true | |
37. trace_line TraceLine(15) when $12 is true | |
38. copy_slot_unmasked $0 = b | |
39. copy_slot_unmasked $1 = a | |
40. bitwise_and_int $0 &= $1 | |
41. copy_slot_unmasked b_and_a = $0 | |
42. trace_var TraceVar(b_and_a) when $12 is true | |
43. trace_line TraceLine(16) when $12 is true | |
44. copy_slot_unmasked $0 = ok | |
45. copy_2_slots_unmasked $1..2 = a_and_b, b_and_a | |
46. cmpeq_int $1 = equal($1, $2) | |
47. bitwise_and_int $0 &= $1 | |
48. copy_slot_unmasked ok = $0 | |
49. trace_var TraceVar(ok) when $12 is true | |
50. trace_line TraceLine(18) when $12 is true | |
51. copy_2_slots_unmasked $0..1 = a, b | |
52. bitwise_or_int $0 |= $1 | |
53. copy_slot_unmasked a_or_b = $0 | |
54. trace_var TraceVar(a_or_b) when $12 is true | |
55. trace_line TraceLine(19) when $12 is true | |
56. copy_slot_unmasked $0 = b | |
57. copy_slot_unmasked $1 = a | |
58. bitwise_or_int $0 |= $1 | |
59. copy_slot_unmasked b_or_a = $0 | |
60. trace_var TraceVar(b_or_a) when $12 is true | |
61. trace_line TraceLine(20) when $12 is true | |
62. copy_slot_unmasked $0 = ok | |
63. copy_2_slots_unmasked $1..2 = a_or_b, b_or_a | |
64. cmpeq_int $1 = equal($1, $2) | |
65. bitwise_and_int $0 &= $1 | |
66. copy_slot_unmasked ok = $0 | |
67. trace_var TraceVar(ok) when $12 is true | |
68. trace_line TraceLine(22) when $12 is true | |
69. copy_2_slots_unmasked $0..1 = a, b | |
70. bitwise_xor_int $0 ^= $1 | |
71. copy_slot_unmasked a_xor_b = $0 | |
72. trace_var TraceVar(a_xor_b) when $12 is true | |
73. trace_line TraceLine(23) when $12 is true | |
74. copy_slot_unmasked $0 = b | |
75. copy_slot_unmasked $1 = a | |
76. bitwise_xor_int $0 ^= $1 | |
77. copy_slot_unmasked b_xor_a = $0 | |
78. trace_var TraceVar(b_xor_a) when $12 is true | |
79. trace_line TraceLine(24) when $12 is true | |
80. copy_slot_unmasked $0 = ok | |
81. copy_2_slots_unmasked $1..2 = a_xor_b, b_xor_a | |
82. cmpeq_int $1 = equal($1, $2) | |
83. bitwise_and_int $0 &= $1 | |
84. copy_slot_unmasked ok = $0 | |
85. trace_var TraceVar(ok) when $12 is true | |
86. trace_line TraceLine(26) when $12 is true | |
87. copy_2_slots_unmasked $0..1 = a, b | |
88. cmpeq_int $0 = equal($0, $1) | |
89. copy_slot_unmasked a_eq_b = $0 | |
90. trace_var TraceVar(a_eq_b) when $12 is true | |
91. trace_line TraceLine(27) when $12 is true | |
92. copy_slot_unmasked $0 = b | |
93. copy_slot_unmasked $1 = a | |
94. cmpeq_int $0 = equal($0, $1) | |
95. copy_slot_unmasked b_eq_a = $0 | |
96. trace_var TraceVar(b_eq_a) when $12 is true | |
97. trace_line TraceLine(28) when $12 is true | |
98. copy_slot_unmasked $0 = ok | |
99. copy_2_slots_unmasked $1..2 = a_eq_b, b_eq_a | |
100. cmpeq_int $1 = equal($1, $2) | |
101. bitwise_and_int $0 &= $1 | |
102. copy_slot_unmasked ok = $0 | |
103. trace_var TraceVar(ok) when $12 is true | |
104. trace_line TraceLine(30) when $12 is true | |
105. copy_2_slots_unmasked $0..1 = a, b | |
106. cmpne_int $0 = notEqual($0, $1) | |
107. copy_slot_unmasked a_neq_b = $0 | |
108. trace_var TraceVar(a_neq_b) when $12 is true | |
109. trace_line TraceLine(31) when $12 is true | |
110. copy_slot_unmasked $0 = b | |
111. copy_slot_unmasked $1 = a | |
112. cmpne_int $0 = notEqual($0, $1) | |
113. copy_slot_unmasked b_neq_a = $0 | |
114. trace_var TraceVar(b_neq_a) when $12 is true | |
115. trace_line TraceLine(32) when $12 is true | |
116. copy_slot_unmasked $0 = ok | |
117. copy_2_slots_unmasked $1..2 = a_neq_b, b_neq_a | |
118. cmpeq_int $1 = equal($1, $2) | |
119. bitwise_and_int $0 &= $1 | |
120. copy_slot_unmasked ok = $0 | |
121. trace_var TraceVar(ok) when $12 is true | |
122. trace_line TraceLine(34) when $12 is true | |
123. copy_2_slots_unmasked $0..1 = a, b | |
124. add_int $0 += $1 | |
125. copy_slot_unmasked a_add_b = $0 | |
126. trace_var TraceVar(a_add_b) when $12 is true | |
127. trace_line TraceLine(35) when $12 is true | |
128. copy_slot_unmasked $0 = b | |
129. copy_slot_unmasked $1 = a | |
130. add_int $0 += $1 | |
131. copy_slot_unmasked b_add_a = $0 | |
132. trace_var TraceVar(b_add_a) when $12 is true | |
133. trace_line TraceLine(36) when $12 is true | |
134. copy_slot_unmasked $0 = ok | |
135. copy_2_slots_unmasked $1..2 = a_add_b, b_add_a | |
136. cmpeq_int $1 = equal($1, $2) | |
137. bitwise_and_int $0 &= $1 | |
138. copy_slot_unmasked ok = $0 | |
139. trace_var TraceVar(ok) when $12 is true | |
140. trace_line TraceLine(38) when $12 is true | |
141. copy_2_slots_unmasked $0..1 = c, d | |
142. add_float $0 += $1 | |
143. copy_slot_unmasked c_add_d = $0 | |
144. trace_var TraceVar(c_add_d) when $12 is true | |
145. trace_line TraceLine(39) when $12 is true | |
146. copy_slot_unmasked $0 = d | |
147. copy_slot_unmasked $1 = c | |
148. add_float $0 += $1 | |
149. copy_slot_unmasked d_add_c = $0 | |
150. trace_var TraceVar(d_add_c) when $12 is true | |
151. trace_line TraceLine(40) when $12 is true | |
152. copy_slot_unmasked $0 = ok | |
153. copy_2_slots_unmasked $1..2 = c_add_d, d_add_c | |
154. cmpeq_float $1 = equal($1, $2) | |
155. bitwise_and_int $0 &= $1 | |
156. copy_slot_unmasked ok = $0 | |
157. trace_var TraceVar(ok) when $12 is true | |
158. trace_line TraceLine(42) when $12 is true | |
159. copy_2_slots_unmasked $0..1 = a, b | |
160. mul_int $0 *= $1 | |
161. copy_slot_unmasked a_mul_b = $0 | |
162. trace_var TraceVar(a_mul_b) when $12 is true | |
163. trace_line TraceLine(43) when $12 is true | |
164. copy_slot_unmasked $0 = b | |
165. copy_slot_unmasked $1 = a | |
166. mul_int $0 *= $1 | |
167. copy_slot_unmasked b_mul_a = $0 | |
168. trace_var TraceVar(b_mul_a) when $12 is true | |
169. trace_line TraceLine(44) when $12 is true | |
170. copy_slot_unmasked $0 = ok | |
171. copy_2_slots_unmasked $1..2 = a_mul_b, b_mul_a | |
172. cmpeq_int $1 = equal($1, $2) | |
173. bitwise_and_int $0 &= $1 | |
174. copy_slot_unmasked ok = $0 | |
175. trace_var TraceVar(ok) when $12 is true | |
176. trace_line TraceLine(46) when $12 is true | |
177. copy_2_slots_unmasked $0..1 = c, d | |
178. mul_float $0 *= $1 | |
179. copy_slot_unmasked c_mul_d = $0 | |
180. trace_var TraceVar(c_mul_d) when $12 is true | |
181. trace_line TraceLine(47) when $12 is true | |
182. copy_slot_unmasked $0 = d | |
183. copy_slot_unmasked $1 = c | |
184. mul_float $0 *= $1 | |
185. copy_slot_unmasked d_mul_c = $0 | |
186. trace_var TraceVar(d_mul_c) when $12 is true | |
187. trace_line TraceLine(48) when $12 is true | |
188. copy_slot_unmasked $0 = ok | |
189. copy_2_slots_unmasked $1..2 = c_mul_d, d_mul_c | |
190. cmpeq_float $1 = equal($1, $2) | |
191. bitwise_and_int $0 &= $1 | |
192. copy_slot_unmasked ok = $0 | |
193. trace_var TraceVar(ok) when $12 is true | |
194. trace_line TraceLine(50) when $12 is true | |
195. copy_slot_unmasked $0 = ok | |
196. swizzle_4 $0..3 = ($0..3).xxxx | |
197. copy_4_constants $4..7 = colorRed | |
198. copy_4_constants $8..11 = colorGreen | |
199. mix_4_ints $0..3 = mix($4..7, $8..11, $0..3) | |
200. copy_4_slots_unmasked [main].result = $0..3 | |
201. trace_var TraceVar([main].result) when $12 is true | |
202. trace_scope TraceScope(-1) when $12 is true | |
203. trace_exit TraceExit(half4 main(float2 xy)) when $12 is true | |
204. load_src src.rgba = [main].result |