unplugged-system/external/skia/tests/sksl/runtime/PrecisionQualifiers.skrp

250 lines
14 KiB
Plaintext

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