xref: /aosp_15_r20/external/skia/tests/sksl/shared/ArrayComparison.skrp (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1175 instructions
2
3[immutable slots]
4i0 = 0x3F800000 (1.0)
5i1 = 0x40000000 (2.0)
6i2 = 0x40400000 (3.0)
7i3 = 0x40800000 (4.0)
8i4 = 0x40A00000 (5.0)
9i5 = 0x3F800000 (1.0)
10i6 = 0x40000000 (2.0)
11i7 = 0x40400000 (3.0)
12i8 = 0xC0800000 (-4.0)
13i9 = 0x40A00000 (5.0)
14i10 = 0x00000001 (1.401298e-45)
15i11 = 0x00000002 (2.802597e-45)
16i12 = 0x00000003 (4.203895e-45)
17i13 = 0x00000004 (5.605194e-45)
18i14 = 0x00000005 (7.006492e-45)
19i15 = 0x00000006 (8.407791e-45)
20i16 = 0x00000001 (1.401298e-45)
21i17 = 0x00000002 (2.802597e-45)
22i18 = 0x00000003 (4.203895e-45)
23i19 = 0x00000004 (5.605194e-45)
24i20 = 0x00000005 (7.006492e-45)
25i21 = 0xFFFFFFFA
26i22 = 0x3F800000 (1.0)
27i23 = 0
28i24 = 0
29i25 = 0x3F800000 (1.0)
30i26 = 0x40000000 (2.0)
31i27 = 0
32i28 = 0
33i29 = 0x40000000 (2.0)
34i30 = 0x40400000 (3.0)
35i31 = 0x40800000 (4.0)
36i32 = 0x40A00000 (5.0)
37i33 = 0x40C00000 (6.0)
38i34 = 0x3F800000 (1.0)
39i35 = 0
40i36 = 0
41i37 = 0x3F800000 (1.0)
42i38 = 0x40000000 (2.0)
43i39 = 0x40400000 (3.0)
44i40 = 0x40800000 (4.0)
45i41 = 0x40A00000 (5.0)
46i42 = 0x40C00000 (6.0)
47i43 = 0
48i44 = 0
49i45 = 0x40C00000 (6.0)
50i46 = 0x00000001 (1.401298e-45)
51i47 = 0x00000002 (2.802597e-45)
52i48 = 0
53i49 = 0
54i50 = 0x00000005 (7.006492e-45)
55i51 = 0x00000006 (8.407791e-45)
56
57store_src_rg                   coords = src.rg
58init_lane_masks                CondMask = LoopMask = RetMask = true
59copy_4_immutables_unmasked     $0..3 = i0..3 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0)]
60copy_constant                  $4 = 0x40A00000 (5.0)
61copy_4_immutables_unmasked     $5..8 = i0..3 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0)]
62copy_constant                  $9 = 0x40A00000 (5.0)
63cmpeq_n_floats                 $0..4 = equal($0..4, $5..9)
64bitwise_and_2_ints             $1..2 &= $3..4
65bitwise_and_int                $1 &= $2
66bitwise_and_int                $0 &= $1
67copy_4_immutables_unmasked     $1..4 = i0..3 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0)]
68copy_4_immutables_unmasked     $5..8 = i4..7 [0x40A00000 (5.0), 0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0)]
69copy_2_immutables_unmasked     $9..10 = i8..9 [0xC0800000 (-4.0), 0x40A00000 (5.0)]
70cmpne_n_floats                 $1..5 = notEqual($1..5, $6..10)
71bitwise_or_2_ints              $2..3 |= $4..5
72bitwise_or_int                 $2 |= $3
73bitwise_or_int                 $1 |= $2
74bitwise_and_int                $0 &= $1
75copy_4_uniforms                $1..4 = testArray[0], testArray[1], testArray[2], testArray[3]
76copy_4_uniforms                $5..8 = testArray[4], testArrayNegative[0], testArrayNegative[1], testArrayNegative[2]
77copy_2_uniforms                $9..10 = testArrayNegative[3], testArrayNegative[4]
78cmpne_n_floats                 $1..5 = notEqual($1..5, $6..10)
79bitwise_or_2_ints              $2..3 |= $4..5
80bitwise_or_int                 $2 |= $3
81bitwise_or_int                 $1 |= $2
82bitwise_and_int                $0 &= $1
83copy_4_uniforms                $1..4 = testArray[0], testArray[1], testArray[2], testArray[3]
84copy_uniform                   $5 = testArray[4]
85copy_4_immutables_unmasked     $6..9 = i0..3 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0)]
86copy_constant                  $10 = 0x40A00000 (5.0)
87cmpeq_n_floats                 $1..5 = equal($1..5, $6..10)
88bitwise_and_2_ints             $2..3 &= $4..5
89bitwise_and_int                $2 &= $3
90bitwise_and_int                $1 &= $2
91bitwise_and_int                $0 &= $1
92copy_4_uniforms                $1..4 = testArray[0], testArray[1], testArray[2], testArray[3]
93copy_uniform                   $5 = testArray[4]
94copy_4_immutables_unmasked     $6..9 = i5..8 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0xC0800000 (-4.0)]
95copy_constant                  $10 = 0x40A00000 (5.0)
96cmpne_n_floats                 $1..5 = notEqual($1..5, $6..10)
97bitwise_or_2_ints              $2..3 |= $4..5
98bitwise_or_int                 $2 |= $3
99bitwise_or_int                 $1 |= $2
100bitwise_and_int                $0 &= $1
101copy_4_immutables_unmasked     $1..4 = i0..3 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0)]
102copy_constant                  $5 = 0x40A00000 (5.0)
103copy_4_uniforms                $6..9 = testArray[0], testArray[1], testArray[2], testArray[3]
104copy_uniform                   $10 = testArray[4]
105cmpeq_n_floats                 $1..5 = equal($1..5, $6..10)
106bitwise_and_2_ints             $2..3 &= $4..5
107bitwise_and_int                $2 &= $3
108bitwise_and_int                $1 &= $2
109bitwise_and_int                $0 &= $1
110copy_4_immutables_unmasked     $1..4 = i5..8 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0xC0800000 (-4.0)]
111copy_constant                  $5 = 0x40A00000 (5.0)
112copy_4_uniforms                $6..9 = testArray[0], testArray[1], testArray[2], testArray[3]
113copy_uniform                   $10 = testArray[4]
114cmpne_n_floats                 $1..5 = notEqual($1..5, $6..10)
115bitwise_or_2_ints              $2..3 |= $4..5
116bitwise_or_int                 $2 |= $3
117bitwise_or_int                 $1 |= $2
118bitwise_and_int                $0 &= $1
119copy_3_immutables_unmasked     $1..3 = i10..12 [0x00000001 (1.401298e-45), 0x00000002 (2.802597e-45), 0x00000003 (4.203895e-45)]
120copy_3_immutables_unmasked     $4..6 = i10..12 [0x00000001 (1.401298e-45), 0x00000002 (2.802597e-45), 0x00000003 (4.203895e-45)]
121cmpeq_3_ints                   $1..3 = equal($1..3, $4..6)
122bitwise_and_int                $2 &= $3
123bitwise_and_int                $1 &= $2
124copy_3_immutables_unmasked     $2..4 = i13..15 [0x00000004 (5.605194e-45), 0x00000005 (7.006492e-45), 0x00000006 (8.407791e-45)]
125copy_3_immutables_unmasked     $5..7 = i13..15 [0x00000004 (5.605194e-45), 0x00000005 (7.006492e-45), 0x00000006 (8.407791e-45)]
126cmpeq_3_ints                   $2..4 = equal($2..4, $5..7)
127bitwise_and_int                $3 &= $4
128bitwise_and_int                $2 &= $3
129bitwise_and_int                $1 &= $2
130bitwise_and_int                $0 &= $1
131copy_3_immutables_unmasked     $1..3 = i10..12 [0x00000001 (1.401298e-45), 0x00000002 (2.802597e-45), 0x00000003 (4.203895e-45)]
132copy_3_immutables_unmasked     $4..6 = i16..18 [0x00000001 (1.401298e-45), 0x00000002 (2.802597e-45), 0x00000003 (4.203895e-45)]
133cmpne_3_ints                   $1..3 = notEqual($1..3, $4..6)
134bitwise_or_int                 $2 |= $3
135bitwise_or_int                 $1 |= $2
136copy_3_immutables_unmasked     $2..4 = i13..15 [0x00000004 (5.605194e-45), 0x00000005 (7.006492e-45), 0x00000006 (8.407791e-45)]
137copy_3_immutables_unmasked     $5..7 = i19..21 [0x00000004 (5.605194e-45), 0x00000005 (7.006492e-45), 0xFFFFFFFA]
138cmpne_3_ints                   $2..4 = notEqual($2..4, $5..7)
139bitwise_or_int                 $3 |= $4
140bitwise_or_int                 $2 |= $3
141bitwise_or_int                 $1 |= $2
142bitwise_and_int                $0 &= $1
143copy_4_immutables_unmasked     $1..4 = i22..25 [0x3F800000 (1.0), 0, 0, 0x3F800000 (1.0)]
144copy_4_immutables_unmasked     $5..8 = i22..25 [0x3F800000 (1.0), 0, 0, 0x3F800000 (1.0)]
145cmpeq_4_floats                 $1..4 = equal($1..4, $5..8)
146bitwise_and_2_ints             $1..2 &= $3..4
147bitwise_and_int                $1 &= $2
148copy_4_immutables_unmasked     $2..5 = i26..29 [0x40000000 (2.0), 0, 0, 0x40000000 (2.0)]
149copy_4_immutables_unmasked     $6..9 = i26..29 [0x40000000 (2.0), 0, 0, 0x40000000 (2.0)]
150cmpeq_4_floats                 $2..5 = equal($2..5, $6..9)
151bitwise_and_2_ints             $2..3 &= $4..5
152bitwise_and_int                $2 &= $3
153copy_4_immutables_unmasked     $3..6 = i30..33 [0x40400000 (3.0), 0x40800000 (4.0), 0x40A00000 (5.0), 0x40C00000 (6.0)]
154copy_4_immutables_unmasked     $7..10 = i30..33 [0x40400000 (3.0), 0x40800000 (4.0), 0x40A00000 (5.0), 0x40C00000 (6.0)]
155cmpeq_4_floats                 $3..6 = equal($3..6, $7..10)
156bitwise_and_2_ints             $3..4 &= $5..6
157bitwise_and_int                $3 &= $4
158bitwise_and_int                $2 &= $3
159bitwise_and_int                $1 &= $2
160bitwise_and_int                $0 &= $1
161copy_4_immutables_unmasked     $1..4 = i22..25 [0x3F800000 (1.0), 0, 0, 0x3F800000 (1.0)]
162copy_4_immutables_unmasked     $5..8 = i34..37 [0x3F800000 (1.0), 0, 0, 0x3F800000 (1.0)]
163cmpne_4_floats                 $1..4 = notEqual($1..4, $5..8)
164bitwise_or_2_ints              $1..2 |= $3..4
165bitwise_or_int                 $1 |= $2
166copy_4_immutables_unmasked     $2..5 = i26..29 [0x40000000 (2.0), 0, 0, 0x40000000 (2.0)]
167copy_4_immutables_unmasked     $6..9 = i38..41 [0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0), 0x40A00000 (5.0)]
168cmpne_4_floats                 $2..5 = notEqual($2..5, $6..9)
169bitwise_or_2_ints              $2..3 |= $4..5
170bitwise_or_int                 $2 |= $3
171copy_4_immutables_unmasked     $3..6 = i30..33 [0x40400000 (3.0), 0x40800000 (4.0), 0x40A00000 (5.0), 0x40C00000 (6.0)]
172copy_4_immutables_unmasked     $7..10 = i42..45 [0x40C00000 (6.0), 0, 0, 0x40C00000 (6.0)]
173cmpne_4_floats                 $3..6 = notEqual($3..6, $7..10)
174bitwise_or_2_ints              $3..4 |= $5..6
175bitwise_or_int                 $3 |= $4
176bitwise_or_int                 $2 |= $3
177bitwise_or_int                 $1 |= $2
178bitwise_and_int                $0 &= $1
179copy_constant                  $1 = 0x00000001 (1.401298e-45)
180copy_constant                  $2 = 0x00000001 (1.401298e-45)
181cmpne_int                      $1 = notEqual($1, $2)
182copy_constant                  $2 = 0x00000002 (2.802597e-45)
183copy_constant                  $3 = 0x00000002 (2.802597e-45)
184cmpne_int                      $2 = notEqual($2, $3)
185bitwise_or_int                 $1 |= $2
186copy_constant                  $2 = 0x00000003 (4.203895e-45)
187copy_constant                  $3 = 0
188cmpne_int                      $2 = notEqual($2, $3)
189copy_constant                  $3 = 0x00000004 (5.605194e-45)
190copy_constant                  $4 = 0
191cmpne_int                      $3 = notEqual($3, $4)
192bitwise_or_int                 $2 |= $3
193copy_constant                  $3 = 0x00000005 (7.006492e-45)
194copy_constant                  $4 = 0x00000005 (7.006492e-45)
195cmpne_int                      $3 = notEqual($3, $4)
196copy_constant                  $4 = 0x00000006 (8.407791e-45)
197copy_constant                  $5 = 0x00000006 (8.407791e-45)
198cmpne_int                      $4 = notEqual($4, $5)
199bitwise_or_int                 $3 |= $4
200bitwise_or_int                 $2 |= $3
201bitwise_or_int                 $1 |= $2
202bitwise_and_int                $0 &= $1
203copy_constant                  $1 = 0x00000001 (1.401298e-45)
204copy_constant                  $2 = 0x00000001 (1.401298e-45)
205cmpeq_int                      $1 = equal($1, $2)
206copy_constant                  $2 = 0x00000002 (2.802597e-45)
207copy_constant                  $3 = 0x00000002 (2.802597e-45)
208cmpeq_int                      $2 = equal($2, $3)
209bitwise_and_int                $1 &= $2
210copy_constant                  $2 = 0x00000003 (4.203895e-45)
211copy_constant                  $3 = 0x00000003 (4.203895e-45)
212cmpeq_int                      $2 = equal($2, $3)
213copy_constant                  $3 = 0x00000004 (5.605194e-45)
214copy_constant                  $4 = 0x00000004 (5.605194e-45)
215cmpeq_int                      $3 = equal($3, $4)
216bitwise_and_int                $2 &= $3
217copy_constant                  $3 = 0x00000005 (7.006492e-45)
218copy_constant                  $4 = 0x00000005 (7.006492e-45)
219cmpeq_int                      $3 = equal($3, $4)
220copy_constant                  $4 = 0x00000006 (8.407791e-45)
221copy_constant                  $5 = 0x00000006 (8.407791e-45)
222cmpeq_int                      $4 = equal($4, $5)
223bitwise_and_int                $3 &= $4
224bitwise_and_int                $2 &= $3
225bitwise_and_int                $1 &= $2
226bitwise_and_int                $0 &= $1
227swizzle_4                      $0..3 = ($0..3).xxxx
228copy_4_uniforms                $4..7 = colorRed
229copy_4_uniforms                $8..11 = colorGreen
230mix_4_ints                     $0..3 = mix($4..7, $8..11, $0..3)
231load_src                       src.rgba = $0..3
232