blob: 9d1b7b36629e32ab7482f0c8f2b5e24d26948815 [file] [log] [blame]
1. store_src_rg coords = src.rg
2. init_lane_masks CondMask = LoopMask = RetMask = true
3. copy_4_constants $0..3 = testInputs
4. copy_4_slots_unmasked v = $0..3
5. zero_slot_unmasked $0 = 0
6. copy_4_slots_unmasked $1..4 = v
7. swizzle_3 $1..3 = ($1..3).zyx
8. copy_4_slots_unmasked v = $0..3
9. zero_2_slots_unmasked $0..1 = 0
10. copy_4_slots_unmasked $2..5 = v
11. swizzle_1 $3 = ($3..5).z
12. copy_4_slots_unmasked v = $0..3
13. copy_constant $0 = 0x3F800000 (1.0)
14. copy_constant $1 = 0x3F800000 (1.0)
15. copy_4_slots_unmasked $2..5 = v
16. swizzle_2 $2..3 = ($2..5).wx
17. copy_4_slots_unmasked v = $0..3
18. swizzle_2 $0..1 = ($0..2).zy
19. copy_constant $2 = 0x3F800000 (1.0)
20. copy_constant $3 = 0x3F800000 (1.0)
21. copy_4_slots_unmasked v = $0..3
22. swizzle_2 $0..1 = ($0..1).xx
23. copy_constant $2 = 0x3F800000 (1.0)
24. copy_constant $3 = 0x3F800000 (1.0)
25. copy_4_slots_unmasked v = $0..3
26. swizzle_4 $0..3 = ($0..3).wzwz
27. copy_4_slots_unmasked v = $0..3
28. store_return_mask $0 = RetMask
29. copy_4_slots_unmasked $1..4 = v
30. copy_4_slots_unmasked v = $1..4
31. copy_constant x = 0x00000001 (1.401298e-45)
32. store_loop_mask $1 = LoopMask
33. jump jump +10 (#43)
34. zero_slot_unmasked [for-loop continue mask 0] = 0
35. copy_slot_unmasked $2 = v(0)
36. copy_slot_masked [fn].result = Mask($2)
37. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
38. reenable_loop_mask LoopMask |= [for-loop continue mask 0]
39. copy_slot_unmasked $2 = x
40. copy_constant $3 = 0x00000001 (1.401298e-45)
41. add_int $2 += $3
42. copy_slot_masked x = Mask($2)
43. copy_slot_unmasked $2 = x
44. copy_constant $3 = 0x00000002 (2.802597e-45)
45. cmple_int $2 = lessThanEqual($2, $3)
46. merge_loop_mask LoopMask &= $2
47. stack_rewind
48. branch_if_any_active_lanes branch_if_any_active_lanes -14 (#34)
49. load_loop_mask LoopMask = $1
50. load_return_mask RetMask = $0
51. copy_slot_unmasked $0 = [fn].result
52. copy_constant $1 = 0x42F60000 (123.0)
53. copy_constant $2 = 0x43E40000 (456.0)
54. swizzle_4 $0..3 = ($0..3).yyzz
55. copy_4_slots_unmasked v = $0..3
56. store_return_mask $0 = RetMask
57. copy_4_slots_unmasked $1..4 = v
58. copy_4_slots_unmasked v = $1..4
59. copy_constant x = 0x00000001 (1.401298e-45)
60. store_loop_mask $1 = LoopMask
61. jump jump +10 (#71)
62. zero_slot_unmasked [for-loop continue mask 1] = 0
63. copy_slot_unmasked $2 = v(0)
64. copy_slot_masked [fn].result = Mask($2)
65. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
66. reenable_loop_mask LoopMask |= [for-loop continue mask 1]
67. copy_slot_unmasked $2 = x
68. copy_constant $3 = 0x00000001 (1.401298e-45)
69. add_int $2 += $3
70. copy_slot_masked x = Mask($2)
71. copy_slot_unmasked $2 = x
72. copy_constant $3 = 0x00000002 (2.802597e-45)
73. cmple_int $2 = lessThanEqual($2, $3)
74. merge_loop_mask LoopMask &= $2
75. stack_rewind
76. branch_if_any_active_lanes branch_if_any_active_lanes -14 (#62)
77. load_loop_mask LoopMask = $1
78. load_return_mask RetMask = $0
79. copy_slot_unmasked $0 = [fn].result
80. copy_constant $1 = 0x42F60000 (123.0)
81. copy_constant $2 = 0x43E40000 (456.0)
82. swizzle_4 $0..3 = ($0..3).yyzz
83. copy_4_slots_unmasked v = $0..3
84. copy_constant $0 = 0x42F60000 (123.0)
85. copy_constant $1 = 0x43E40000 (456.0)
86. copy_constant $2 = 0x43E40000 (456.0)
87. store_return_mask $3 = RetMask
88. copy_4_slots_unmasked $4..7 = v
89. copy_4_slots_unmasked v = $4..7
90. copy_constant x = 0x00000001 (1.401298e-45)
91. store_loop_mask $4 = LoopMask
92. jump jump +10 (#102)
93. zero_slot_unmasked [for-loop continue mask 2] = 0
94. copy_slot_unmasked $5 = v(0)
95. copy_slot_masked [fn].result = Mask($5)
96. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
97. reenable_loop_mask LoopMask |= [for-loop continue mask 2]
98. copy_slot_unmasked $5 = x
99. copy_constant $6 = 0x00000001 (1.401298e-45)
100. add_int $5 += $6
101. copy_slot_masked x = Mask($5)
102. copy_slot_unmasked $5 = x
103. copy_constant $6 = 0x00000002 (2.802597e-45)
104. cmple_int $5 = lessThanEqual($5, $6)
105. merge_loop_mask LoopMask &= $5
106. stack_rewind
107. branch_if_any_active_lanes branch_if_any_active_lanes -14 (#93)
108. load_loop_mask LoopMask = $4
109. load_return_mask RetMask = $3
110. copy_slot_unmasked $3 = [fn].result
111. copy_4_slots_unmasked v = $0..3
112. copy_constant $0 = 0x42F60000 (123.0)
113. copy_constant $1 = 0x43E40000 (456.0)
114. copy_constant $2 = 0x43E40000 (456.0)
115. store_return_mask $3 = RetMask
116. copy_4_slots_unmasked $4..7 = v
117. copy_4_slots_unmasked v = $4..7
118. copy_constant x = 0x00000001 (1.401298e-45)
119. store_loop_mask $4 = LoopMask
120. jump jump +10 (#130)
121. zero_slot_unmasked [for-loop continue mask 3] = 0
122. copy_slot_unmasked $5 = v(0)
123. copy_slot_masked [fn].result = Mask($5)
124. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
125. reenable_loop_mask LoopMask |= [for-loop continue mask 3]
126. copy_slot_unmasked $5 = x
127. copy_constant $6 = 0x00000001 (1.401298e-45)
128. add_int $5 += $6
129. copy_slot_masked x = Mask($5)
130. copy_slot_unmasked $5 = x
131. copy_constant $6 = 0x00000002 (2.802597e-45)
132. cmple_int $5 = lessThanEqual($5, $6)
133. merge_loop_mask LoopMask &= $5
134. stack_rewind
135. branch_if_any_active_lanes branch_if_any_active_lanes -14 (#121)
136. load_loop_mask LoopMask = $4
137. load_return_mask RetMask = $3
138. copy_slot_unmasked $3 = [fn].result
139. copy_4_slots_unmasked v = $0..3
140. store_return_mask $0 = RetMask
141. copy_4_slots_unmasked $1..4 = v
142. copy_4_slots_unmasked v = $1..4
143. copy_constant x = 0x00000001 (1.401298e-45)
144. store_loop_mask $1 = LoopMask
145. jump jump +10 (#155)
146. zero_slot_unmasked [for-loop continue mask 4] = 0
147. copy_slot_unmasked $2 = v(0)
148. copy_slot_masked [fn].result = Mask($2)
149. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
150. reenable_loop_mask LoopMask |= [for-loop continue mask 4]
151. copy_slot_unmasked $2 = x
152. copy_constant $3 = 0x00000001 (1.401298e-45)
153. add_int $2 += $3
154. copy_slot_masked x = Mask($2)
155. copy_slot_unmasked $2 = x
156. copy_constant $3 = 0x00000002 (2.802597e-45)
157. cmple_int $2 = lessThanEqual($2, $3)
158. merge_loop_mask LoopMask &= $2
159. stack_rewind
160. branch_if_any_active_lanes branch_if_any_active_lanes -14 (#146)
161. load_loop_mask LoopMask = $1
162. load_return_mask RetMask = $0
163. copy_slot_unmasked $0 = [fn].result
164. copy_constant $1 = 0x42F60000 (123.0)
165. copy_constant $2 = 0x43E40000 (456.0)
166. swizzle_4 $0..3 = ($0..3).yxxz
167. copy_4_slots_unmasked v = $0..3
168. store_return_mask $0 = RetMask
169. copy_4_slots_unmasked $1..4 = v
170. copy_4_slots_unmasked v = $1..4
171. copy_constant x = 0x00000001 (1.401298e-45)
172. store_loop_mask $1 = LoopMask
173. jump jump +10 (#183)
174. zero_slot_unmasked [for-loop continue mask 5] = 0
175. copy_slot_unmasked $2 = v(0)
176. copy_slot_masked [fn].result = Mask($2)
177. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
178. reenable_loop_mask LoopMask |= [for-loop continue mask 5]
179. copy_slot_unmasked $2 = x
180. copy_constant $3 = 0x00000001 (1.401298e-45)
181. add_int $2 += $3
182. copy_slot_masked x = Mask($2)
183. copy_slot_unmasked $2 = x
184. copy_constant $3 = 0x00000002 (2.802597e-45)
185. cmple_int $2 = lessThanEqual($2, $3)
186. merge_loop_mask LoopMask &= $2
187. stack_rewind
188. branch_if_any_active_lanes branch_if_any_active_lanes -14 (#174)
189. load_loop_mask LoopMask = $1
190. load_return_mask RetMask = $0
191. copy_slot_unmasked $0 = [fn].result
192. copy_constant $1 = 0x42F60000 (123.0)
193. copy_constant $2 = 0x43E40000 (456.0)
194. swizzle_4 $0..3 = ($0..3).yxxz
195. copy_4_slots_unmasked v = $0..3
196. copy_constant $0 = 0x3F800000 (1.0)
197. copy_constant $1 = 0x3F800000 (1.0)
198. copy_constant $2 = 0x40000000 (2.0)
199. copy_constant $3 = 0x40400000 (3.0)
200. copy_4_slots_unmasked v = $0..3
201. copy_3_constants $0..2 = colorRed(0..2)
202. copy_constant $3 = 0x3F800000 (1.0)
203. copy_4_slots_unmasked v = $0..3
204. copy_constant $0 = colorRed(0)
205. copy_constant $1 = 0x3F800000 (1.0)
206. copy_2_constants $2..3 = colorRed(1..2)
207. copy_4_slots_unmasked v = $0..3
208. copy_slot_unmasked v(3) = $0
209. copy_slot_unmasked v(2) = $1
210. copy_slot_unmasked v(1) = $2
211. copy_slot_unmasked v(0) = $3
212. copy_2_slots_unmasked $0..1 = v(1..2)
213. copy_slot_unmasked v(0) = $0
214. copy_slot_unmasked v(3) = $1
215. copy_4_slots_unmasked $0..3 = v
216. swizzle_2 $0..1 = ($0..3).ww
217. copy_constant $2 = 0x3F800000 (1.0)
218. copy_slot_unmasked v(2) = $0
219. copy_slot_unmasked v(1) = $1
220. copy_slot_unmasked v(0) = $2
221. store_condition_mask $8 = CondMask
222. copy_4_slots_unmasked $9..12 = v
223. copy_constant $13 = 0x3F800000 (1.0)
224. swizzle_4 $13..16 = ($13..16).xxxx
225. cmpeq_4_floats $9..12 = equal($9..12, $13..16)
226. bitwise_and_2_ints $9..10 &= $11..12
227. bitwise_and_int $9 &= $10
228. copy_4_constants $0..3 = colorRed
229. merge_condition_mask CondMask = $8 & $9
230. copy_4_constants $4..7 = colorGreen
231. copy_4_slots_masked $0..3 = Mask($4..7)
232. load_condition_mask CondMask = $8
233. copy_4_slots_unmasked [main].result = $0..3
234. load_src src.rgba = [main].result