xref: /aosp_15_r20/external/skia/tests/sksl/shared/OutParams.skrp (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1252 instructions
2
3store_src_rg                   coords = src.rg
4init_lane_masks                CondMask = LoopMask = RetMask = true
5copy_constant                  h = 0
6copy_uniform                   v = colorWhite(0)
7copy_slot_unmasked             h = v
8label                          label 0
9splat_2_constants              h2 = 0
10copy_uniform                   $0 = colorWhite(1)
11copy_slot_unmasked             $1 = $0
12copy_2_slots_unmasked          v₁ = $0..1
13copy_2_slots_unmasked          h2 = $0..1
14label                          label 0x00000001
15splat_3_constants              h3 = 0
16copy_uniform                   $0 = colorWhite(2)
17swizzle_3                      $0..2 = ($0..2).xxx
18copy_3_slots_unmasked          v₂ = $0..2
19copy_3_slots_unmasked          h3 = $0..2
20label                          label 0x00000002
21splat_4_constants              h4 = 0
22copy_uniform                   $0 = colorWhite(3)
23swizzle_4                      $0..3 = ($0..3).xxxx
24copy_4_slots_unmasked          v₃ = $0..3
25copy_4_slots_unmasked          h4 = $0..3
26label                          label 0x00000003
27copy_uniform                   v = colorWhite(0)
28copy_slot_unmasked             h3(1) = v
29label                          label 0x00000004
30copy_uniform                   $0 = colorWhite(1)
31copy_slot_unmasked             $1 = $0
32copy_2_slots_unmasked          v₁ = $0..1
33swizzle_copy_2_slots_masked    (h3).xz = Mask($0..1)
34label                          label 0x00000005
35copy_uniform                   $0 = colorWhite(3)
36swizzle_4                      $0..3 = ($0..3).xxxx
37copy_4_slots_unmasked          v₃ = $0..3
38swizzle_copy_4_slots_masked    (h4).zwxy = Mask($0..3)
39label                          label 0x00000006
40splat_4_constants              h2x2 = 0
41copy_constant                  $0 = 0
42copy_uniform                   $1 = colorWhite(0)
43swizzle_4                      $0..3 = ($0..3).yxxy
44copy_4_slots_unmasked          v₄ = $0..3
45copy_4_slots_unmasked          h2x2 = $0..3
46label                          label 0x00000007
47splat_4_constants              h3x3(0..3) = 0
48splat_4_constants              h3x3(4..7) = 0
49copy_constant                  h3x3(8) = 0
50copy_constant                  $0 = 0
51copy_uniform                   $1 = colorWhite(1)
52shuffle                        $0..8 = ($0..8)[1 0 0 0 1 0 0 0 1]
53copy_4_slots_unmasked          v₅(0..3) = $0..3
54copy_4_slots_unmasked          v₅(4..7) = $4..7
55copy_slot_unmasked             v₅(8) = $8
56copy_4_slots_unmasked          h3x3(0..3) = $0..3
57copy_4_slots_unmasked          h3x3(4..7) = $4..7
58copy_slot_unmasked             h3x3(8) = $8
59label                          label 0x00000008
60splat_4_constants              h4x4(0..3) = 0
61splat_4_constants              h4x4(4..7) = 0
62splat_4_constants              h4x4(8..11) = 0
63splat_4_constants              h4x4(12..15) = 0
64copy_constant                  $0 = 0
65copy_uniform                   $1 = colorWhite(2)
66shuffle                        $0..15 = ($0..15)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
67copy_4_slots_unmasked          v₆(0..3) = $0..3
68copy_4_slots_unmasked          v₆(4..7) = $4..7
69copy_4_slots_unmasked          v₆(8..11) = $8..11
70copy_4_slots_unmasked          v₆(12..15) = $12..15
71copy_4_slots_unmasked          h4x4(0..3) = $0..3
72copy_4_slots_unmasked          h4x4(4..7) = $4..7
73copy_4_slots_unmasked          h4x4(8..11) = $8..11
74copy_4_slots_unmasked          h4x4(12..15) = $12..15
75label                          label 0x00000009
76copy_uniform                   $0 = colorWhite(2)
77swizzle_3                      $0..2 = ($0..2).xxx
78copy_3_slots_unmasked          v₂ = $0..2
79copy_3_slots_unmasked          h3x3(3..5) = $0..2
80label                          label 0x0000000A
81copy_uniform                   v = colorWhite(0)
82copy_slot_unmasked             h4x4(15) = v
83label                          label 0x0000000B
84copy_uniform                   v = colorWhite(0)
85copy_slot_unmasked             h2x2(0) = v
86label                          label 0x0000000C
87copy_constant                  i = 0
88copy_uniform                   $0 = colorWhite(0)
89cast_to_int_from_float         $0 = FloatToInt($0)
90copy_slot_unmasked             v₇ = $0
91copy_slot_unmasked             i = $0
92label                          label 0x0000000D
93splat_2_constants              i2 = 0
94copy_uniform                   $0 = colorWhite(1)
95cast_to_int_from_float         $0 = FloatToInt($0)
96copy_slot_unmasked             $1 = $0
97copy_2_slots_unmasked          v₈ = $0..1
98copy_2_slots_unmasked          i2 = $0..1
99label                          label 0x0000000E
100splat_3_constants              i3 = 0
101copy_uniform                   $0 = colorWhite(2)
102cast_to_int_from_float         $0 = FloatToInt($0)
103swizzle_3                      $0..2 = ($0..2).xxx
104copy_3_slots_unmasked          v₉ = $0..2
105copy_3_slots_unmasked          i3 = $0..2
106label                          label 0x0000000F
107splat_4_constants              i4 = 0
108copy_uniform                   $0 = colorWhite(3)
109cast_to_int_from_float         $0 = FloatToInt($0)
110swizzle_4                      $0..3 = ($0..3).xxxx
111copy_4_slots_unmasked          v₁₀ = $0..3
112copy_4_slots_unmasked          i4 = $0..3
113label                          label 0x00000010
114copy_uniform                   $0 = colorWhite(2)
115cast_to_int_from_float         $0 = FloatToInt($0)
116swizzle_3                      $0..2 = ($0..2).xxx
117copy_3_slots_unmasked          v₉ = $0..2
118copy_3_slots_unmasked          i4(0..2) = $0..2
119label                          label 0x00000011
120copy_uniform                   $0 = colorWhite(0)
121cast_to_int_from_float         $0 = FloatToInt($0)
122copy_slot_unmasked             v₇ = $0
123copy_slot_unmasked             i2(1) = $0
124label                          label 0x00000012
125copy_constant                  f = 0
126copy_uniform                   v₁₁ = colorWhite(0)
127copy_slot_unmasked             f = v₁₁
128label                          label 0x00000013
129splat_2_constants              f2 = 0
130copy_uniform                   $0 = colorWhite(1)
131copy_slot_unmasked             $1 = $0
132copy_2_slots_unmasked          v₁₂ = $0..1
133copy_2_slots_unmasked          f2 = $0..1
134label                          label 0x00000014
135splat_3_constants              f3 = 0
136copy_uniform                   $0 = colorWhite(2)
137swizzle_3                      $0..2 = ($0..2).xxx
138copy_3_slots_unmasked          v₁₃ = $0..2
139copy_3_slots_unmasked          f3 = $0..2
140label                          label 0x00000015
141splat_4_constants              f4 = 0
142copy_uniform                   $0 = colorWhite(3)
143swizzle_4                      $0..3 = ($0..3).xxxx
144copy_4_slots_unmasked          v₁₄ = $0..3
145copy_4_slots_unmasked          f4 = $0..3
146label                          label 0x00000016
147copy_uniform                   $0 = colorWhite(1)
148copy_slot_unmasked             $1 = $0
149copy_2_slots_unmasked          v₁₂ = $0..1
150copy_2_slots_unmasked          f3(0..1) = $0..1
151label                          label 0x00000017
152copy_uniform                   v₁₁ = colorWhite(0)
153copy_slot_unmasked             f2(0) = v₁₁
154label                          label 0x00000018
155splat_4_constants              f2x2 = 0
156copy_constant                  $0 = 0
157copy_uniform                   $1 = colorWhite(0)
158swizzle_4                      $0..3 = ($0..3).yxxy
159copy_4_slots_unmasked          v₁₅ = $0..3
160copy_4_slots_unmasked          f2x2 = $0..3
161label                          label 0x00000019
162splat_4_constants              f3x3(0..3) = 0
163splat_4_constants              f3x3(4..7) = 0
164copy_constant                  f3x3(8) = 0
165copy_constant                  $0 = 0
166copy_uniform                   $1 = colorWhite(1)
167shuffle                        $0..8 = ($0..8)[1 0 0 0 1 0 0 0 1]
168copy_4_slots_unmasked          v₁₆(0..3) = $0..3
169copy_4_slots_unmasked          v₁₆(4..7) = $4..7
170copy_slot_unmasked             v₁₆(8) = $8
171copy_4_slots_unmasked          f3x3(0..3) = $0..3
172copy_4_slots_unmasked          f3x3(4..7) = $4..7
173copy_slot_unmasked             f3x3(8) = $8
174label                          label 0x0000001A
175splat_4_constants              f4x4(0..3) = 0
176splat_4_constants              f4x4(4..7) = 0
177splat_4_constants              f4x4(8..11) = 0
178splat_4_constants              f4x4(12..15) = 0
179copy_constant                  $0 = 0
180copy_uniform                   $1 = colorWhite(2)
181shuffle                        $0..15 = ($0..15)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
182copy_4_slots_unmasked          v₁₇(0..3) = $0..3
183copy_4_slots_unmasked          v₁₇(4..7) = $4..7
184copy_4_slots_unmasked          v₁₇(8..11) = $8..11
185copy_4_slots_unmasked          v₁₇(12..15) = $12..15
186copy_4_slots_unmasked          f4x4(0..3) = $0..3
187copy_4_slots_unmasked          f4x4(4..7) = $4..7
188copy_4_slots_unmasked          f4x4(8..11) = $8..11
189copy_4_slots_unmasked          f4x4(12..15) = $12..15
190label                          label 0x0000001B
191copy_uniform                   v₁₁ = colorWhite(0)
192copy_slot_unmasked             f2x2(0) = v₁₁
193label                          label 0x0000001C
194copy_constant                  b = 0
195copy_uniform                   $0 = colorWhite(0)
196cmpne_imm_float                $0 = notEqual($0, 0)
197copy_slot_unmasked             v₁₈ = $0
198copy_slot_unmasked             b = $0
199label                          label 0x0000001D
200splat_2_constants              b2 = 0
201copy_uniform                   $0 = colorWhite(1)
202cmpne_imm_float                $0 = notEqual($0, 0)
203copy_slot_unmasked             $1 = $0
204copy_2_slots_unmasked          v₁₉ = $0..1
205copy_2_slots_unmasked          b2 = $0..1
206label                          label 0x0000001E
207splat_3_constants              b3 = 0
208copy_uniform                   $0 = colorWhite(2)
209cmpne_imm_float                $0 = notEqual($0, 0)
210swizzle_3                      $0..2 = ($0..2).xxx
211copy_3_slots_unmasked          v₂₀ = $0..2
212copy_3_slots_unmasked          b3 = $0..2
213label                          label 0x0000001F
214splat_4_constants              b4 = 0
215copy_uniform                   $0 = colorWhite(3)
216cmpne_imm_float                $0 = notEqual($0, 0)
217swizzle_4                      $0..3 = ($0..3).xxxx
218copy_4_slots_unmasked          v₂₁ = $0..3
219copy_4_slots_unmasked          b4 = $0..3
220label                          label 0x00000020
221copy_uniform                   $0 = colorWhite(1)
222cmpne_imm_float                $0 = notEqual($0, 0)
223copy_slot_unmasked             $1 = $0
224copy_2_slots_unmasked          v₁₉ = $0..1
225swizzle_copy_2_slots_masked    (b4).xw = Mask($0..1)
226label                          label 0x00000021
227copy_uniform                   $0 = colorWhite(0)
228cmpne_imm_float                $0 = notEqual($0, 0)
229copy_slot_unmasked             v₁₈ = $0
230copy_slot_unmasked             b3(2) = $0
231label                          label 0x00000022
232copy_constant                  ok = 0xFFFFFFFF
233copy_slot_unmasked             $0 = ok
234copy_slot_unmasked             $1 = h
235copy_slot_unmasked             $2 = h2(0)
236mul_float                      $1 *= $2
237copy_slot_unmasked             $2 = h3(0)
238mul_float                      $1 *= $2
239copy_slot_unmasked             $2 = h4(0)
240mul_float                      $1 *= $2
241copy_slot_unmasked             $2 = h2x2(0)
242mul_float                      $1 *= $2
243copy_slot_unmasked             $2 = h3x3(0)
244mul_float                      $1 *= $2
245copy_slot_unmasked             $2 = h4x4(0)
246mul_float                      $1 *= $2
247cmpeq_imm_float                $1 = equal($1, 0x3F800000 (1.0))
248bitwise_and_int                $0 &= $1
249copy_slot_unmasked             ok = $0
250copy_slot_unmasked             $1 = f
251copy_slot_unmasked             $2 = f2(0)
252mul_float                      $1 *= $2
253copy_slot_unmasked             $2 = f3(0)
254mul_float                      $1 *= $2
255copy_slot_unmasked             $2 = f4(0)
256mul_float                      $1 *= $2
257copy_slot_unmasked             $2 = f2x2(0)
258mul_float                      $1 *= $2
259copy_slot_unmasked             $2 = f3x3(0)
260mul_float                      $1 *= $2
261copy_slot_unmasked             $2 = f4x4(0)
262mul_float                      $1 *= $2
263cmpeq_imm_float                $1 = equal($1, 0x3F800000 (1.0))
264bitwise_and_int                $0 &= $1
265copy_slot_unmasked             ok = $0
266copy_slot_unmasked             $1 = i
267copy_slot_unmasked             $2 = i2(0)
268mul_int                        $1 *= $2
269copy_slot_unmasked             $2 = i3(0)
270mul_int                        $1 *= $2
271copy_slot_unmasked             $2 = i4(0)
272mul_int                        $1 *= $2
273cmpeq_imm_int                  $1 = equal($1, 0x00000001)
274bitwise_and_int                $0 &= $1
275copy_slot_unmasked             ok = $0
276copy_slot_unmasked             $1 = b
277copy_slot_unmasked             $2 = b2(0)
278bitwise_and_int                $1 &= $2
279copy_slot_unmasked             $2 = b3(0)
280bitwise_and_int                $1 &= $2
281copy_slot_unmasked             $2 = b4(0)
282bitwise_and_int                $1 &= $2
283bitwise_and_int                $0 &= $1
284copy_slot_unmasked             ok = $0
285swizzle_4                      $0..3 = ($0..3).xxxx
286copy_4_uniforms                $4..7 = colorRed
287copy_4_uniforms                $8..11 = colorGreen
288mix_4_ints                     $0..3 = mix($4..7, $8..11, $0..3)
289load_src                       src.rgba = $0..3
290