xref: /aosp_15_r20/external/skia/tests/sksl/shared/PostfixExpressions.skrp (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1378 instructions
2
3[immutable slots]
4i0 = 0x00000007 (9.809089e-45)
5i1 = 0x00000008 (1.121039e-44)
6i2 = 0x00000009 (1.261169e-44)
7i3 = 0x0000000A (1.401298e-44)
8i4 = 0x00000008 (1.121039e-44)
9i5 = 0x00000009 (1.261169e-44)
10i6 = 0x0000000A (1.401298e-44)
11i7 = 0x0000000B (1.541428e-44)
12i8 = 0x00000009 (1.261169e-44)
13i9 = 0x0000000A (1.401298e-44)
14i10 = 0x0000000B (1.541428e-44)
15i11 = 0x0000000C (1.681558e-44)
16i12 = 0x3F800000 (1.0)
17i13 = 0x40000000 (2.0)
18i14 = 0x40400000 (3.0)
19i15 = 0x40800000 (4.0)
20i16 = 0x40A00000 (5.0)
21i17 = 0x40C00000 (6.0)
22i18 = 0x40E00000 (7.0)
23i19 = 0x41000000 (8.0)
24i20 = 0x41100000 (9.0)
25i21 = 0x40000000 (2.0)
26i22 = 0x40400000 (3.0)
27i23 = 0x40800000 (4.0)
28i24 = 0x40A00000 (5.0)
29i25 = 0x40C00000 (6.0)
30i26 = 0x40E00000 (7.0)
31i27 = 0x41000000 (8.0)
32i28 = 0x41100000 (9.0)
33i29 = 0x41200000 (10.0)
34i30 = 0x40400000 (3.0)
35i31 = 0x40800000 (4.0)
36i32 = 0x40A00000 (5.0)
37i33 = 0x40C00000 (6.0)
38i34 = 0x40E00000 (7.0)
39i35 = 0x41000000 (8.0)
40i36 = 0x41100000 (9.0)
41i37 = 0x41200000 (10.0)
42i38 = 0x41300000 (11.0)
43
44store_src_rg                   c = src.rg
45init_lane_masks                CondMask = LoopMask = RetMask = true
46copy_constant                  ok = 0xFFFFFFFF
47copy_constant                  i = 0x00000005 (7.006492e-45)
48add_imm_int                    i += 0x00000001
49store_condition_mask           $28 = CondMask
50copy_slot_unmasked             $29 = ok
51copy_constant                  $0 = 0
52merge_condition_mask           CondMask = $28 & $29
53branch_if_no_lanes_active      branch_if_no_lanes_active +7 (label 0 at #17)
54copy_slot_unmasked             $1 = i
55copy_slot_unmasked             $2 = $1
56add_imm_int                    $2 += 0x00000001
57copy_slot_masked               i = Mask($2)
58cmpeq_imm_int                  $1 = equal($1, 0x00000006)
59copy_slot_masked               $0 = Mask($1)
60label                          label 0
61load_condition_mask            CondMask = $28
62copy_slot_unmasked             ok = $0
63copy_slot_unmasked             $1 = i
64cmpeq_imm_int                  $1 = equal($1, 0x00000007)
65bitwise_and_int                $0 &= $1
66copy_slot_unmasked             ok = $0
67store_condition_mask           $28 = CondMask
68copy_slot_unmasked             $29 = ok
69copy_constant                  $0 = 0
70merge_condition_mask           CondMask = $28 & $29
71branch_if_no_lanes_active      branch_if_no_lanes_active +7 (label 1 at #35)
72copy_slot_unmasked             $1 = i
73copy_slot_unmasked             $2 = $1
74add_imm_int                    $2 += 0xFFFFFFFF
75copy_slot_masked               i = Mask($2)
76cmpeq_imm_int                  $1 = equal($1, 0x00000007)
77copy_slot_masked               $0 = Mask($1)
78label                          label 0x00000001
79load_condition_mask            CondMask = $28
80copy_slot_unmasked             ok = $0
81copy_slot_unmasked             $1 = i
82cmpeq_imm_int                  $1 = equal($1, 0x00000006)
83bitwise_and_int                $0 &= $1
84copy_slot_unmasked             ok = $0
85add_imm_int                    i += 0xFFFFFFFF
86copy_2_slots_unmasked          $0..1 = ok, i
87cmpeq_imm_int                  $1 = equal($1, 0x00000005)
88bitwise_and_int                $0 &= $1
89copy_slot_unmasked             ok = $0
90copy_constant                  f = 0x3F000000 (0.5)
91add_imm_float                  f += 0x3F800000 (1.0)
92store_condition_mask           $28 = CondMask
93copy_slot_unmasked             $29 = ok
94copy_constant                  $0 = 0
95merge_condition_mask           CondMask = $28 & $29
96branch_if_no_lanes_active      branch_if_no_lanes_active +7 (label 2 at #60)
97copy_slot_unmasked             $1 = f
98copy_slot_unmasked             $2 = $1
99add_imm_float                  $2 += 0x3F800000 (1.0)
100copy_slot_masked               f = Mask($2)
101cmpeq_imm_float                $1 = equal($1, 0x3FC00000 (1.5))
102copy_slot_masked               $0 = Mask($1)
103label                          label 0x00000002
104load_condition_mask            CondMask = $28
105copy_slot_unmasked             ok = $0
106copy_slot_unmasked             $1 = f
107cmpeq_imm_float                $1 = equal($1, 0x40200000 (2.5))
108bitwise_and_int                $0 &= $1
109copy_slot_unmasked             ok = $0
110store_condition_mask           $28 = CondMask
111copy_slot_unmasked             $29 = ok
112copy_constant                  $0 = 0
113merge_condition_mask           CondMask = $28 & $29
114branch_if_no_lanes_active      branch_if_no_lanes_active +7 (label 3 at #78)
115copy_slot_unmasked             $1 = f
116copy_slot_unmasked             $2 = $1
117add_imm_float                  $2 += 0xBF800000 (-1.0)
118copy_slot_masked               f = Mask($2)
119cmpeq_imm_float                $1 = equal($1, 0x40200000 (2.5))
120copy_slot_masked               $0 = Mask($1)
121label                          label 0x00000003
122load_condition_mask            CondMask = $28
123copy_slot_unmasked             ok = $0
124copy_slot_unmasked             $1 = f
125cmpeq_imm_float                $1 = equal($1, 0x3FC00000 (1.5))
126bitwise_and_int                $0 &= $1
127copy_slot_unmasked             ok = $0
128add_imm_float                  f += 0xBF800000 (-1.0)
129copy_slot_unmasked             $0 = ok
130copy_slot_unmasked             $1 = f
131cmpeq_imm_float                $1 = equal($1, 0x3F000000 (0.5))
132bitwise_and_int                $0 &= $1
133copy_slot_unmasked             ok = $0
134splat_2_constants              f2 = 0x3F000000 (0.5)
135add_imm_float                  f2(0) += 0x3F800000 (1.0)
136store_condition_mask           $28 = CondMask
137copy_slot_unmasked             $29 = ok
138copy_constant                  $0 = 0
139merge_condition_mask           CondMask = $28 & $29
140branch_if_no_lanes_active      branch_if_no_lanes_active +7 (label 4 at #104)
141copy_slot_unmasked             $1 = f2(0)
142copy_slot_unmasked             $2 = $1
143add_imm_float                  $2 += 0x3F800000 (1.0)
144copy_slot_masked               f2(0) = Mask($2)
145cmpeq_imm_float                $1 = equal($1, 0x3FC00000 (1.5))
146copy_slot_masked               $0 = Mask($1)
147label                          label 0x00000004
148load_condition_mask            CondMask = $28
149copy_slot_unmasked             ok = $0
150copy_slot_unmasked             $1 = f2(0)
151cmpeq_imm_float                $1 = equal($1, 0x40200000 (2.5))
152bitwise_and_int                $0 &= $1
153copy_slot_unmasked             ok = $0
154store_condition_mask           $28 = CondMask
155copy_slot_unmasked             $29 = ok
156copy_constant                  $0 = 0
157merge_condition_mask           CondMask = $28 & $29
158branch_if_no_lanes_active      branch_if_no_lanes_active +7 (label 5 at #122)
159copy_slot_unmasked             $1 = f2(0)
160copy_slot_unmasked             $2 = $1
161add_imm_float                  $2 += 0xBF800000 (-1.0)
162copy_slot_masked               f2(0) = Mask($2)
163cmpeq_imm_float                $1 = equal($1, 0x40200000 (2.5))
164copy_slot_masked               $0 = Mask($1)
165label                          label 0x00000005
166load_condition_mask            CondMask = $28
167copy_slot_unmasked             ok = $0
168copy_slot_unmasked             $1 = f2(0)
169cmpeq_imm_float                $1 = equal($1, 0x3FC00000 (1.5))
170bitwise_and_int                $0 &= $1
171copy_slot_unmasked             ok = $0
172add_imm_float                  f2(0) += 0xBF800000 (-1.0)
173copy_slot_unmasked             $0 = ok
174copy_slot_unmasked             $1 = f2(0)
175cmpeq_imm_float                $1 = equal($1, 0x3F000000 (0.5))
176bitwise_and_int                $0 &= $1
177copy_slot_unmasked             ok = $0
178copy_2_slots_unmasked          $0..1 = f2
179add_imm_float                  $0 += 0x3F800000 (1.0)
180add_imm_float                  $1 += 0x3F800000 (1.0)
181copy_2_slots_unmasked          f2 = $0..1
182store_condition_mask           $28 = CondMask
183copy_slot_unmasked             $29 = ok
184copy_constant                  $0 = 0
185merge_condition_mask           CondMask = $28 & $29
186branch_if_no_lanes_active      branch_if_no_lanes_active +10 (label 6 at #153)
187copy_2_slots_unmasked          $1..2 = f2
188copy_2_slots_unmasked          $3..4 = $1..2
189add_imm_float                  $3 += 0x3F800000 (1.0)
190add_imm_float                  $4 += 0x3F800000 (1.0)
191copy_2_slots_masked            f2 = Mask($3..4)
192cmpeq_imm_float                $1 = equal($1, 0x3FC00000 (1.5))
193cmpeq_imm_float                $2 = equal($2, 0x3FC00000 (1.5))
194bitwise_and_int                $1 &= $2
195copy_slot_masked               $0 = Mask($1)
196label                          label 0x00000006
197load_condition_mask            CondMask = $28
198copy_slot_unmasked             ok = $0
199copy_2_slots_unmasked          $1..2 = f2
200cmpeq_imm_float                $1 = equal($1, 0x40200000 (2.5))
201cmpeq_imm_float                $2 = equal($2, 0x40200000 (2.5))
202bitwise_and_int                $1 &= $2
203bitwise_and_int                $0 &= $1
204copy_slot_unmasked             ok = $0
205store_condition_mask           $28 = CondMask
206copy_slot_unmasked             $29 = ok
207copy_constant                  $0 = 0
208merge_condition_mask           CondMask = $28 & $29
209branch_if_no_lanes_active      branch_if_no_lanes_active +10 (label 7 at #176)
210copy_2_slots_unmasked          $1..2 = f2
211copy_2_slots_unmasked          $3..4 = $1..2
212add_imm_float                  $3 += 0xBF800000 (-1.0)
213add_imm_float                  $4 += 0xBF800000 (-1.0)
214copy_2_slots_masked            f2 = Mask($3..4)
215cmpeq_imm_float                $1 = equal($1, 0x40200000 (2.5))
216cmpeq_imm_float                $2 = equal($2, 0x40200000 (2.5))
217bitwise_and_int                $1 &= $2
218copy_slot_masked               $0 = Mask($1)
219label                          label 0x00000007
220load_condition_mask            CondMask = $28
221copy_slot_unmasked             ok = $0
222copy_2_slots_unmasked          $1..2 = f2
223cmpeq_imm_float                $1 = equal($1, 0x3FC00000 (1.5))
224cmpeq_imm_float                $2 = equal($2, 0x3FC00000 (1.5))
225bitwise_and_int                $1 &= $2
226bitwise_and_int                $0 &= $1
227copy_slot_unmasked             ok = $0
228copy_2_slots_unmasked          $0..1 = f2
229add_imm_float                  $0 += 0xBF800000 (-1.0)
230add_imm_float                  $1 += 0xBF800000 (-1.0)
231copy_2_slots_unmasked          f2 = $0..1
232copy_slot_unmasked             $0 = ok
233copy_2_slots_unmasked          $1..2 = f2
234cmpeq_imm_float                $1 = equal($1, 0x3F000000 (0.5))
235cmpeq_imm_float                $2 = equal($2, 0x3F000000 (0.5))
236bitwise_and_int                $1 &= $2
237bitwise_and_int                $0 &= $1
238copy_slot_unmasked             ok = $0
239copy_4_immutables_unmasked     i4 = i0..3 [0x00000007 (9.809089e-45), 0x00000008 (1.121039e-44), 0x00000009 (1.261169e-44), 0x0000000A (1.401298e-44)]
240copy_4_slots_unmasked          $0..3 = i4
241splat_4_constants              $4..7 = 0x00000001 (1.401298e-45)
242add_4_ints                     $0..3 += $4..7
243copy_4_slots_unmasked          i4 = $0..3
244store_condition_mask           $28 = CondMask
245copy_slot_unmasked             $29 = ok
246copy_constant                  $0 = 0
247merge_condition_mask           CondMask = $28 & $29
248branch_if_no_lanes_active      branch_if_no_lanes_active +11 (label 8 at #216)
249copy_4_slots_unmasked          $1..4 = i4
250copy_4_slots_unmasked          $5..8 = $1..4
251splat_4_constants              $9..12 = 0x00000001 (1.401298e-45)
252add_4_ints                     $5..8 += $9..12
253copy_4_slots_masked            i4 = Mask($5..8)
254copy_4_immutables_unmasked     $5..8 = i4..7 [0x00000008 (1.121039e-44), 0x00000009 (1.261169e-44), 0x0000000A (1.401298e-44), 0x0000000B (1.541428e-44)]
255cmpeq_4_ints                   $1..4 = equal($1..4, $5..8)
256bitwise_and_2_ints             $1..2 &= $3..4
257bitwise_and_int                $1 &= $2
258copy_slot_masked               $0 = Mask($1)
259label                          label 0x00000008
260load_condition_mask            CondMask = $28
261copy_slot_unmasked             ok = $0
262copy_4_slots_unmasked          $1..4 = i4
263copy_4_immutables_unmasked     $5..8 = i8..11 [0x00000009 (1.261169e-44), 0x0000000A (1.401298e-44), 0x0000000B (1.541428e-44), 0x0000000C (1.681558e-44)]
264cmpeq_4_ints                   $1..4 = equal($1..4, $5..8)
265bitwise_and_2_ints             $1..2 &= $3..4
266bitwise_and_int                $1 &= $2
267bitwise_and_int                $0 &= $1
268copy_slot_unmasked             ok = $0
269store_condition_mask           $28 = CondMask
270copy_slot_unmasked             $29 = ok
271copy_constant                  $0 = 0
272merge_condition_mask           CondMask = $28 & $29
273branch_if_no_lanes_active      branch_if_no_lanes_active +11 (label 9 at #241)
274copy_4_slots_unmasked          $1..4 = i4
275copy_4_slots_unmasked          $5..8 = $1..4
276splat_4_constants              $9..12 = 0x00000001 (1.401298e-45)
277sub_4_ints                     $5..8 -= $9..12
278copy_4_slots_masked            i4 = Mask($5..8)
279copy_4_immutables_unmasked     $5..8 = i8..11 [0x00000009 (1.261169e-44), 0x0000000A (1.401298e-44), 0x0000000B (1.541428e-44), 0x0000000C (1.681558e-44)]
280cmpeq_4_ints                   $1..4 = equal($1..4, $5..8)
281bitwise_and_2_ints             $1..2 &= $3..4
282bitwise_and_int                $1 &= $2
283copy_slot_masked               $0 = Mask($1)
284label                          label 0x00000009
285load_condition_mask            CondMask = $28
286copy_slot_unmasked             ok = $0
287copy_4_slots_unmasked          $1..4 = i4
288copy_4_immutables_unmasked     $5..8 = i4..7 [0x00000008 (1.121039e-44), 0x00000009 (1.261169e-44), 0x0000000A (1.401298e-44), 0x0000000B (1.541428e-44)]
289cmpeq_4_ints                   $1..4 = equal($1..4, $5..8)
290bitwise_and_2_ints             $1..2 &= $3..4
291bitwise_and_int                $1 &= $2
292bitwise_and_int                $0 &= $1
293copy_slot_unmasked             ok = $0
294copy_4_slots_unmasked          $0..3 = i4
295splat_4_constants              $4..7 = 0xFFFFFFFF
296add_4_ints                     $0..3 += $4..7
297copy_4_slots_unmasked          i4 = $0..3
298copy_slot_unmasked             $0 = ok
299copy_4_slots_unmasked          $1..4 = i4
300copy_4_immutables_unmasked     $5..8 = i0..3 [0x00000007 (9.809089e-45), 0x00000008 (1.121039e-44), 0x00000009 (1.261169e-44), 0x0000000A (1.401298e-44)]
301cmpeq_4_ints                   $1..4 = equal($1..4, $5..8)
302bitwise_and_2_ints             $1..2 &= $3..4
303bitwise_and_int                $1 &= $2
304bitwise_and_int                $0 &= $1
305copy_slot_unmasked             ok = $0
306copy_4_immutables_unmasked     m3x3(0..3) = i12..15 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0)]
307copy_4_immutables_unmasked     m3x3(4..7) = i16..19 [0x40A00000 (5.0), 0x40C00000 (6.0), 0x40E00000 (7.0), 0x41000000 (8.0)]
308copy_constant                  m3x3(8) = 0x41100000 (9.0)
309copy_4_slots_unmasked          $0..3 = m3x3(0..3)
310copy_4_slots_unmasked          $4..7 = m3x3(4..7)
311copy_slot_unmasked             $8 = m3x3(8)
312splat_4_constants              $9..12 = 0x3F800000 (1.0)
313splat_4_constants              $13..16 = 0x3F800000 (1.0)
314copy_constant                  $17 = 0x3F800000 (1.0)
315add_n_floats                   $0..8 += $9..17
316copy_4_slots_unmasked          m3x3(0..3) = $0..3
317copy_4_slots_unmasked          m3x3(4..7) = $4..7
318copy_slot_unmasked             m3x3(8) = $8
319store_condition_mask           $28 = CondMask
320copy_slot_unmasked             $29 = ok
321copy_constant                  $0 = 0
322merge_condition_mask           CondMask = $28 & $29
323branch_if_no_lanes_active      branch_if_no_lanes_active +23 (label 10 at #303)
324copy_4_slots_unmasked          $1..4 = m3x3(0..3)
325copy_4_slots_unmasked          $5..8 = m3x3(4..7)
326copy_slot_unmasked             $9 = m3x3(8)
327copy_4_slots_unmasked          $10..13 = $1..4
328copy_4_slots_unmasked          $14..17 = $5..8
329copy_slot_unmasked             $18 = $9
330splat_4_constants              $19..22 = 0x3F800000 (1.0)
331splat_4_constants              $23..26 = 0x3F800000 (1.0)
332copy_constant                  $27 = 0x3F800000 (1.0)
333add_n_floats                   $10..18 += $19..27
334copy_4_slots_masked            m3x3(0..3) = Mask($10..13)
335copy_4_slots_masked            m3x3(4..7) = Mask($14..17)
336copy_slot_masked               m3x3(8) = Mask($18)
337copy_4_immutables_unmasked     $10..13 = i21..24 [0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0), 0x40A00000 (5.0)]
338copy_4_immutables_unmasked     $14..17 = i25..28 [0x40C00000 (6.0), 0x40E00000 (7.0), 0x41000000 (8.0), 0x41100000 (9.0)]
339copy_constant                  $18 = 0x41200000 (10.0)
340cmpeq_n_floats                 $1..9 = equal($1..9, $10..18)
341bitwise_and_4_ints             $2..5 &= $6..9
342bitwise_and_2_ints             $2..3 &= $4..5
343bitwise_and_int                $2 &= $3
344bitwise_and_int                $1 &= $2
345copy_slot_masked               $0 = Mask($1)
346label                          label 0x0000000A
347load_condition_mask            CondMask = $28
348copy_slot_unmasked             ok = $0
349copy_4_slots_unmasked          $1..4 = m3x3(0..3)
350copy_4_slots_unmasked          $5..8 = m3x3(4..7)
351copy_slot_unmasked             $9 = m3x3(8)
352copy_4_immutables_unmasked     $10..13 = i30..33 [0x40400000 (3.0), 0x40800000 (4.0), 0x40A00000 (5.0), 0x40C00000 (6.0)]
353copy_4_immutables_unmasked     $14..17 = i34..37 [0x40E00000 (7.0), 0x41000000 (8.0), 0x41100000 (9.0), 0x41200000 (10.0)]
354copy_constant                  $18 = 0x41300000 (11.0)
355cmpeq_n_floats                 $1..9 = equal($1..9, $10..18)
356bitwise_and_4_ints             $2..5 &= $6..9
357bitwise_and_2_ints             $2..3 &= $4..5
358bitwise_and_int                $2 &= $3
359bitwise_and_int                $1 &= $2
360bitwise_and_int                $0 &= $1
361copy_slot_unmasked             ok = $0
362store_condition_mask           $28 = CondMask
363copy_slot_unmasked             $29 = ok
364copy_constant                  $0 = 0
365merge_condition_mask           CondMask = $28 & $29
366branch_if_no_lanes_active      branch_if_no_lanes_active +23 (label 11 at #346)
367copy_4_slots_unmasked          $1..4 = m3x3(0..3)
368copy_4_slots_unmasked          $5..8 = m3x3(4..7)
369copy_slot_unmasked             $9 = m3x3(8)
370copy_4_slots_unmasked          $10..13 = $1..4
371copy_4_slots_unmasked          $14..17 = $5..8
372copy_slot_unmasked             $18 = $9
373splat_4_constants              $19..22 = 0x3F800000 (1.0)
374splat_4_constants              $23..26 = 0x3F800000 (1.0)
375copy_constant                  $27 = 0x3F800000 (1.0)
376sub_n_floats                   $10..18 -= $19..27
377copy_4_slots_masked            m3x3(0..3) = Mask($10..13)
378copy_4_slots_masked            m3x3(4..7) = Mask($14..17)
379copy_slot_masked               m3x3(8) = Mask($18)
380copy_4_immutables_unmasked     $10..13 = i30..33 [0x40400000 (3.0), 0x40800000 (4.0), 0x40A00000 (5.0), 0x40C00000 (6.0)]
381copy_4_immutables_unmasked     $14..17 = i34..37 [0x40E00000 (7.0), 0x41000000 (8.0), 0x41100000 (9.0), 0x41200000 (10.0)]
382copy_constant                  $18 = 0x41300000 (11.0)
383cmpeq_n_floats                 $1..9 = equal($1..9, $10..18)
384bitwise_and_4_ints             $2..5 &= $6..9
385bitwise_and_2_ints             $2..3 &= $4..5
386bitwise_and_int                $2 &= $3
387bitwise_and_int                $1 &= $2
388copy_slot_masked               $0 = Mask($1)
389label                          label 0x0000000B
390load_condition_mask            CondMask = $28
391copy_slot_unmasked             ok = $0
392copy_4_slots_unmasked          $1..4 = m3x3(0..3)
393copy_4_slots_unmasked          $5..8 = m3x3(4..7)
394copy_slot_unmasked             $9 = m3x3(8)
395copy_4_immutables_unmasked     $10..13 = i21..24 [0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0), 0x40A00000 (5.0)]
396copy_4_immutables_unmasked     $14..17 = i25..28 [0x40C00000 (6.0), 0x40E00000 (7.0), 0x41000000 (8.0), 0x41100000 (9.0)]
397copy_constant                  $18 = 0x41200000 (10.0)
398cmpeq_n_floats                 $1..9 = equal($1..9, $10..18)
399bitwise_and_4_ints             $2..5 &= $6..9
400bitwise_and_2_ints             $2..3 &= $4..5
401bitwise_and_int                $2 &= $3
402bitwise_and_int                $1 &= $2
403bitwise_and_int                $0 &= $1
404copy_slot_unmasked             ok = $0
405copy_4_slots_unmasked          $0..3 = m3x3(0..3)
406copy_4_slots_unmasked          $4..7 = m3x3(4..7)
407copy_slot_unmasked             $8 = m3x3(8)
408splat_4_constants              $9..12 = 0xBF800000 (-1.0)
409splat_4_constants              $13..16 = 0xBF800000 (-1.0)
410copy_constant                  $17 = 0xBF800000 (-1.0)
411add_n_floats                   $0..8 += $9..17
412copy_4_slots_unmasked          m3x3(0..3) = $0..3
413copy_4_slots_unmasked          m3x3(4..7) = $4..7
414copy_slot_unmasked             m3x3(8) = $8
415copy_slot_unmasked             $0 = ok
416copy_4_slots_unmasked          $1..4 = m3x3(0..3)
417copy_4_slots_unmasked          $5..8 = m3x3(4..7)
418copy_slot_unmasked             $9 = m3x3(8)
419copy_4_immutables_unmasked     $10..13 = i12..15 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0)]
420copy_4_immutables_unmasked     $14..17 = i16..19 [0x40A00000 (5.0), 0x40C00000 (6.0), 0x40E00000 (7.0), 0x41000000 (8.0)]
421copy_constant                  $18 = 0x41100000 (9.0)
422cmpeq_n_floats                 $1..9 = equal($1..9, $10..18)
423bitwise_and_4_ints             $2..5 &= $6..9
424bitwise_and_2_ints             $2..3 &= $4..5
425bitwise_and_int                $2 &= $3
426bitwise_and_int                $1 &= $2
427bitwise_and_int                $0 &= $1
428copy_slot_unmasked             ok = $0
429swizzle_4                      $0..3 = ($0..3).xxxx
430copy_4_uniforms                $4..7 = colorRed
431copy_4_uniforms                $8..11 = colorGreen
432mix_4_ints                     $0..3 = mix($4..7, $8..11, $0..3)
433load_src                       src.rgba = $0..3
434