blob: c0da330210d120bf19625e0cb6e3198525c9c8a5 [file] [log] [blame]
1. store_src_rg coords = src.rg
2. init_lane_masks CondMask = LoopMask = RetMask = true
3. zero_4_slots_unmasked zero = 0
4. copy_constant $0 = 0x3F800000 (1.0)
5. swizzle_4 $0..3 = ($0..3).xxxx
6. copy_4_slots_unmasked one = $0..3
7. copy_4_constants $0..3 = colorGreen
8. copy_4_slots_unmasked green = $0..3
9. copy_4_slots_unmasked $4..7 = one
10. mul_4_floats $0..3 *= $4..7
11. copy_4_slots_unmasked $4..7 = zero
12. add_4_floats $0..3 += $4..7
13. copy_4_slots_unmasked green = $0..3
14. copy_4_constants $0..3 = colorRed
15. copy_4_slots_unmasked red = $0..3
16. copy_4_slots_unmasked $4..7 = zero
17. add_4_floats $0..3 += $4..7
18. copy_4_slots_unmasked $4..7 = one
19. mul_4_floats $0..3 *= $4..7
20. copy_4_slots_unmasked red = $0..3
21. store_condition_mask $12 = CondMask
22. store_condition_mask $23 = CondMask
23. store_condition_mask $27 = CondMask
24. store_condition_mask $16 = CondMask
25. store_condition_mask $42 = CondMask
26. store_condition_mask $31 = CondMask
27. store_condition_mask $8 = CondMask
28. branch_if_no_active_lanes branch_if_no_active_lanes +13 (#41)
29. copy_constant mp = 0x3F000000 (0.5)
30. copy_slot_unmasked $9 = mp
31. copy_slot_unmasked hp = $9
32. copy_constant ihp = 0x00000002 (2.802597e-45)
33. copy_slot_unmasked $9 = ihp
34. copy_slot_unmasked imp = $9
35. copy_2_slots_unmasked $9..10 = mp(0..1)
36. cmpeq_float $9 = equal($9, $10)
37. copy_2_slots_unmasked $10..11 = ihp(0..1)
38. cmpeq_int $10 = equal($10, $11)
39. bitwise_and_int $9 &= $10
40. copy_slot_masked [test_scalar].result = Mask($9)
41. zero_slot_unmasked $32 = 0
42. merge_condition_mask CondMask = $8 & $9
43. branch_if_no_active_lanes branch_if_no_active_lanes +59 (#102)
44. copy_constant $33 = 0x40000000 (2.0)
45. copy_slot_unmasked $34 = $33
46. copy_2_slots_unmasked mp2 = $33..34
47. copy_2_slots_unmasked hp2 = $33..34
48. copy_constant $33 = 0x40400000 (3.0)
49. swizzle_3 $33..35 = ($33..35).xxx
50. copy_3_slots_unmasked mp3 = $33..35
51. copy_3_slots_unmasked hp3 = $33..35
52. copy_constant $33 = 0x40800000 (4.0)
53. swizzle_4 $33..36 = ($33..36).xxxx
54. copy_4_slots_unmasked mp4 = $33..36
55. copy_4_slots_unmasked hp4 = $33..36
56. copy_constant $33 = 0x00000002 (2.802597e-45)
57. copy_slot_unmasked $34 = $33
58. copy_2_slots_unmasked ihp2 = $33..34
59. copy_2_slots_unmasked imp2 = $33..34
60. copy_constant $33 = 0x00000003 (4.203895e-45)
61. swizzle_3 $33..35 = ($33..35).xxx
62. copy_3_slots_unmasked ihp3 = $33..35
63. copy_3_slots_unmasked imp3 = $33..35
64. copy_constant $33 = 0x00000004 (5.605194e-45)
65. swizzle_4 $33..36 = ($33..36).xxxx
66. copy_4_slots_unmasked ihp4 = $33..36
67. copy_4_slots_unmasked imp4 = $33..36
68. copy_4_slots_unmasked $33..36 = mp2(0..3)
69. cmpeq_2_floats $33..34 = equal($33..34, $35..36)
70. bitwise_and_int $33 &= $34
71. copy_3_slots_unmasked $34..36 = hp3
72. copy_3_slots_unmasked $37..39 = mp3
73. cmpeq_3_floats $34..36 = equal($34..36, $37..39)
74. bitwise_and_int $35 &= $36
75. bitwise_and_int $34 &= $35
76. bitwise_and_int $33 &= $34
77. copy_4_slots_unmasked $34..37 = mp4
78. copy_4_slots_unmasked $38..41 = hp4
79. cmpeq_4_floats $34..37 = equal($34..37, $38..41)
80. bitwise_and_2_ints $34..35 &= $36..37
81. bitwise_and_int $34 &= $35
82. bitwise_and_int $33 &= $34
83. copy_2_slots_unmasked $34..35 = imp2
84. copy_2_slots_unmasked $36..37 = ihp2
85. cmpeq_2_ints $34..35 = equal($34..35, $36..37)
86. bitwise_and_int $34 &= $35
87. bitwise_and_int $33 &= $34
88. copy_4_slots_unmasked $34..37 = ihp3(0..3)
89. copy_2_slots_unmasked $38..39 = imp3(1..2)
90. cmpeq_3_ints $34..36 = equal($34..36, $37..39)
91. bitwise_and_int $35 &= $36
92. bitwise_and_int $34 &= $35
93. bitwise_and_int $33 &= $34
94. copy_4_slots_unmasked $34..37 = imp4
95. copy_4_slots_unmasked $38..41 = ihp4
96. cmpeq_4_ints $34..37 = equal($34..37, $38..41)
97. bitwise_and_2_ints $34..35 &= $36..37
98. bitwise_and_int $34 &= $35
99. bitwise_and_int $33 &= $34
100. copy_slot_masked [test_vector].result = Mask($33)
101. copy_slot_masked $32 = Mask($33)
102. load_condition_mask CondMask = $8
103. zero_slot_unmasked $43 = 0
104. merge_condition_mask CondMask = $31 & $32
105. branch_if_no_active_lanes branch_if_no_active_lanes +60 (#165)
106. zero_slot_unmasked $44 = 0
107. copy_constant $45 = 0x40000000 (2.0)
108. swizzle_4 $44..47 = ($44..47).yxxy
109. copy_4_slots_unmasked mp2 = $44..47
110. copy_4_slots_unmasked hp2 = $44..47
111. zero_slot_unmasked $44 = 0
112. copy_constant $45 = 0x40400000 (3.0)
113. shuffle $44..52 = ($44..52)[1 0 0 0 1 0 0 0 1]
114. copy_4_slots_unmasked mp3(0..3) = $44..47
115. copy_4_slots_unmasked mp3(4..7) = $48..51
116. copy_slot_unmasked mp3(8) = $52
117. copy_4_slots_unmasked hp3(0..3) = $44..47
118. copy_4_slots_unmasked hp3(4..7) = $48..51
119. copy_slot_unmasked hp3(8) = $52
120. zero_slot_unmasked $44 = 0
121. copy_constant $45 = 0x40800000 (4.0)
122. shuffle $44..59 = ($44..59)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
123. copy_4_slots_unmasked mp4(0..3) = $44..47
124. copy_4_slots_unmasked mp4(4..7) = $48..51
125. copy_4_slots_unmasked mp4(8..11) = $52..55
126. copy_4_slots_unmasked mp4(12..15) = $56..59
127. copy_4_slots_unmasked hp4(0..3) = $44..47
128. copy_4_slots_unmasked hp4(4..7) = $48..51
129. copy_4_slots_unmasked hp4(8..11) = $52..55
130. copy_4_slots_unmasked hp4(12..15) = $56..59
131. copy_4_slots_unmasked $44..47 = mp2
132. copy_4_slots_unmasked $48..51 = hp2
133. cmpeq_4_floats $44..47 = equal($44..47, $48..51)
134. bitwise_and_2_ints $44..45 &= $46..47
135. bitwise_and_int $44 &= $45
136. copy_4_slots_unmasked $45..48 = hp3(0..3)
137. copy_4_slots_unmasked $49..52 = hp3(4..7)
138. copy_slot_unmasked $53 = hp3(8)
139. copy_4_slots_unmasked $54..57 = mp3(0..3)
140. copy_4_slots_unmasked $58..61 = mp3(4..7)
141. copy_slot_unmasked $62 = mp3(8)
142. cmpeq_n_floats $45..53 = equal($45..53, $54..62)
143. bitwise_and_4_ints $46..49 &= $50..53
144. bitwise_and_2_ints $46..47 &= $48..49
145. bitwise_and_int $46 &= $47
146. bitwise_and_int $45 &= $46
147. bitwise_and_int $44 &= $45
148. copy_4_slots_unmasked $45..48 = mp4(0..3)
149. copy_4_slots_unmasked $49..52 = mp4(4..7)
150. copy_4_slots_unmasked $53..56 = mp4(8..11)
151. copy_4_slots_unmasked $57..60 = mp4(12..15)
152. copy_4_slots_unmasked $61..64 = hp4(0..3)
153. copy_4_slots_unmasked $65..68 = hp4(4..7)
154. copy_4_slots_unmasked $69..72 = hp4(8..11)
155. copy_4_slots_unmasked $73..76 = hp4(12..15)
156. cmpeq_n_floats $45..60 = equal($45..60, $61..76)
157. bitwise_and_4_ints $53..56 &= $57..60
158. bitwise_and_4_ints $49..52 &= $53..56
159. bitwise_and_4_ints $45..48 &= $49..52
160. bitwise_and_2_ints $45..46 &= $47..48
161. bitwise_and_int $45 &= $46
162. bitwise_and_int $44 &= $45
163. copy_slot_masked [test_matrix].result = Mask($44)
164. copy_slot_masked $43 = Mask($44)
165. load_condition_mask CondMask = $31
166. zero_slot_unmasked $17 = 0
167. merge_condition_mask CondMask = $42 & $43
168. branch_if_no_active_lanes branch_if_no_active_lanes +35 (#203)
169. zero_slot_unmasked mf[0] = 0
170. copy_constant $18 = 0x3F800000 (1.0)
171. copy_slot_masked mf[0] = Mask($18)
172. zero_slot_unmasked hf[0] = 0
173. copy_constant $18 = 0x3F800000 (1.0)
174. copy_slot_masked hf[0] = Mask($18)
175. zero_4_slots_unmasked mv[0](0..3) = 0
176. zero_slot_unmasked $18 = 0
177. copy_constant $19 = 0x3F800000 (1.0)
178. copy_2_slots_masked mv[0] = Mask($18..19)
179. copy_constant $18 = 0x40000000 (2.0)
180. copy_constant $19 = 0x40400000 (3.0)
181. copy_2_slots_masked mv[1] = Mask($18..19)
182. zero_4_slots_unmasked hv[0](0..3) = 0
183. zero_slot_unmasked $18 = 0
184. copy_constant $19 = 0x3F800000 (1.0)
185. copy_2_slots_masked hv[0] = Mask($18..19)
186. copy_constant $18 = 0x40000000 (2.0)
187. copy_constant $19 = 0x40400000 (3.0)
188. copy_2_slots_masked hv[1] = Mask($18..19)
189. copy_2_slots_unmasked $18..19 = mf[0](0..1)
190. cmpeq_float $18 = equal($18, $19)
191. copy_2_slots_unmasked $19..20 = hv[0]
192. copy_2_slots_unmasked $21..22 = mv[0]
193. cmpeq_2_floats $19..20 = equal($19..20, $21..22)
194. bitwise_and_int $19 &= $20
195. bitwise_and_int $18 &= $19
196. copy_2_slots_unmasked $19..20 = mv[1]
197. copy_2_slots_unmasked $21..22 = hv[1]
198. cmpeq_2_floats $19..20 = equal($19..20, $21..22)
199. bitwise_and_int $19 &= $20
200. bitwise_and_int $18 &= $19
201. copy_slot_masked [test_array].result = Mask($18)
202. copy_slot_masked $17 = Mask($18)
203. load_condition_mask CondMask = $42
204. zero_slot_unmasked $28 = 0
205. merge_condition_mask CondMask = $16 & $17
206. branch_if_no_active_lanes branch_if_no_active_lanes +7 (#213)
207. copy_constant value = 0x3F800000 (1.0)
208. copy_slot_unmasked $29 = value
209. copy_constant $30 = 0x3F800000 (1.0)
210. cmpeq_float $29 = equal($29, $30)
211. copy_slot_masked [highp_param].result = Mask($29)
212. copy_slot_masked $28 = Mask($29)
213. load_condition_mask CondMask = $16
214. zero_slot_unmasked $24 = 0
215. merge_condition_mask CondMask = $27 & $28
216. branch_if_no_active_lanes branch_if_no_active_lanes +7 (#223)
217. copy_constant value = 0x40000000 (2.0)
218. copy_slot_unmasked $25 = value
219. copy_constant $26 = 0x40000000 (2.0)
220. cmpeq_float $25 = equal($25, $26)
221. copy_slot_masked [mediump_param].result = Mask($25)
222. copy_slot_masked $24 = Mask($25)
223. load_condition_mask CondMask = $27
224. zero_slot_unmasked $13 = 0
225. merge_condition_mask CondMask = $23 & $24
226. branch_if_no_active_lanes branch_if_no_active_lanes +7 (#233)
227. copy_constant value = 0x40400000 (3.0)
228. copy_slot_unmasked $14 = value
229. copy_constant $15 = 0x40400000 (3.0)
230. cmpeq_float $14 = equal($14, $15)
231. copy_slot_masked [lowp_param].result = Mask($14)
232. copy_slot_masked $13 = Mask($14)
233. load_condition_mask CondMask = $23
234. copy_4_slots_unmasked $0..3 = red
235. merge_condition_mask CondMask = $12 & $13
236. copy_4_slots_unmasked $4..7 = green
237. copy_4_slots_masked $0..3 = Mask($4..7)
238. load_condition_mask CondMask = $12
239. copy_4_slots_unmasked [main].result = $0..3
240. load_src src.rgba = [main].result