xref: /aosp_15_r20/external/skia/tests/sksl/folding/IntFoldingES2.skrp (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1184 instructions
2
3store_src_rg                   coords = src.rg
4init_lane_masks                CondMask = LoopMask = RetMask = true
5copy_uniform                   $0 = unknownInput
6cast_to_int_from_float         $0 = FloatToInt($0)
7copy_slot_unmasked             _0_unknown = $0
8copy_constant                  _1_ok = 0xFFFFFFFF
9copy_constant                  _2_x = 0x00000022 (4.764415e-44)
10copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
11cmpeq_imm_int                  $1 = equal($1, 0x00000022)
12bitwise_and_int                $0 &= $1
13copy_slot_unmasked             _1_ok = $0
14copy_constant                  _2_x = 0x0000001E (4.203895e-44)
15copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
16cmpeq_imm_int                  $1 = equal($1, 0x0000001E)
17bitwise_and_int                $0 &= $1
18copy_slot_unmasked             _1_ok = $0
19copy_constant                  _2_x = 0x00000040 (8.96831e-44)
20copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
21cmpeq_imm_int                  $1 = equal($1, 0x00000040)
22bitwise_and_int                $0 &= $1
23copy_slot_unmasked             _1_ok = $0
24copy_constant                  _2_x = 0x00000010 (2.242078e-44)
25copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
26cmpeq_imm_int                  $1 = equal($1, 0x00000010)
27bitwise_and_int                $0 &= $1
28copy_slot_unmasked             _1_ok = $0
29copy_constant                  _2_x = 0x00000001 (1.401298e-45)
30copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
31cmpeq_imm_int                  $1 = equal($1, 0x00000001)
32bitwise_and_int                $0 &= $1
33copy_slot_unmasked             _1_ok = $0
34copy_constant                  _2_x = 0xFFFFFFFE
35copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
36cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFFE)
37bitwise_and_int                $0 &= $1
38copy_slot_unmasked             _1_ok = $0
39copy_constant                  _2_x = 0x00000003 (4.203895e-45)
40copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
41cmpeq_imm_int                  $1 = equal($1, 0x00000003)
42bitwise_and_int                $0 &= $1
43copy_slot_unmasked             _1_ok = $0
44copy_constant                  _2_x = 0xFFFFFFFC
45copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
46cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFFC)
47bitwise_and_int                $0 &= $1
48copy_slot_unmasked             _1_ok = $0
49copy_constant                  _2_x = 0x00000005 (7.006492e-45)
50copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
51cmpeq_imm_int                  $1 = equal($1, 0x00000005)
52bitwise_and_int                $0 &= $1
53copy_slot_unmasked             _1_ok = $0
54copy_constant                  _2_x = 0xFFFFFFFA
55copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
56cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFFA)
57bitwise_and_int                $0 &= $1
58copy_slot_unmasked             _1_ok = $0
59copy_constant                  _2_x = 0x00000007 (9.809089e-45)
60copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
61cmpeq_imm_int                  $1 = equal($1, 0x00000007)
62bitwise_and_int                $0 &= $1
63copy_slot_unmasked             _1_ok = $0
64copy_constant                  _2_x = 0xFFFFFFF8
65copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
66cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFF8)
67bitwise_and_int                $0 &= $1
68copy_slot_unmasked             _1_ok = $0
69copy_constant                  _2_x = 0x00000009 (1.261169e-44)
70copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
71cmpeq_imm_int                  $1 = equal($1, 0x00000009)
72bitwise_and_int                $0 &= $1
73copy_slot_unmasked             _1_ok = $0
74copy_constant                  _2_x = 0xFFFFFFF6
75copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
76cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFF6)
77bitwise_and_int                $0 &= $1
78copy_slot_unmasked             _1_ok = $0
79copy_constant                  _2_x = 0x0000000B (1.541428e-44)
80copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
81cmpeq_imm_int                  $1 = equal($1, 0x0000000B)
82bitwise_and_int                $0 &= $1
83copy_slot_unmasked             _1_ok = $0
84copy_constant                  _2_x = 0xFFFFFFF4
85copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
86cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFF4)
87bitwise_and_int                $0 &= $1
88copy_slot_unmasked             _1_ok = $0
89copy_slot_unmasked             _2_x = _0_unknown
90copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
91copy_slot_unmasked             $2 = _0_unknown
92cmpeq_int                      $1 = equal($1, $2)
93bitwise_and_int                $0 &= $1
94copy_slot_unmasked             _1_ok = $0
95copy_slot_unmasked             _2_x = _0_unknown
96copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
97copy_slot_unmasked             $2 = _0_unknown
98cmpeq_int                      $1 = equal($1, $2)
99bitwise_and_int                $0 &= $1
100copy_slot_unmasked             _1_ok = $0
101copy_slot_unmasked             _2_x = _0_unknown
102copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
103copy_slot_unmasked             $2 = _0_unknown
104cmpeq_int                      $1 = equal($1, $2)
105bitwise_and_int                $0 &= $1
106copy_slot_unmasked             _1_ok = $0
107copy_constant                  _2_x = 0
108copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
109cmpeq_imm_int                  $1 = equal($1, 0)
110bitwise_and_int                $0 &= $1
111copy_slot_unmasked             _1_ok = $0
112copy_slot_unmasked             _2_x = _0_unknown
113copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
114copy_slot_unmasked             $2 = _0_unknown
115cmpeq_int                      $1 = equal($1, $2)
116bitwise_and_int                $0 &= $1
117copy_slot_unmasked             _1_ok = $0
118copy_slot_unmasked             _2_x = _0_unknown
119copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
120copy_slot_unmasked             $2 = _0_unknown
121cmpeq_int                      $1 = equal($1, $2)
122bitwise_and_int                $0 &= $1
123copy_slot_unmasked             _1_ok = $0
124copy_constant                  _2_x = 0
125copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
126cmpeq_imm_int                  $1 = equal($1, 0)
127bitwise_and_int                $0 &= $1
128copy_slot_unmasked             _1_ok = $0
129copy_slot_unmasked             _2_x = _0_unknown
130copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
131copy_slot_unmasked             $2 = _0_unknown
132cmpeq_int                      $1 = equal($1, $2)
133bitwise_and_int                $0 &= $1
134copy_slot_unmasked             _1_ok = $0
135copy_constant                  $0 = 0
136copy_slot_unmasked             $1 = _0_unknown
137div_int                        $0 /= $1
138copy_slot_unmasked             _2_x = $0
139copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
140cmpeq_imm_int                  $1 = equal($1, 0)
141bitwise_and_int                $0 &= $1
142copy_slot_unmasked             _1_ok = $0
143add_imm_int                    _2_x += 0x00000001
144copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
145cmpeq_imm_int                  $1 = equal($1, 0x00000001)
146bitwise_and_int                $0 &= $1
147copy_slot_unmasked             _1_ok = $0
148copy_slot_unmasked             $1 = _2_x
149cmpeq_imm_int                  $1 = equal($1, 0x00000001)
150bitwise_and_int                $0 &= $1
151copy_slot_unmasked             _1_ok = $0
152add_imm_int                    _2_x += 0xFFFFFFFE
153copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
154cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFFF)
155bitwise_and_int                $0 &= $1
156copy_slot_unmasked             _1_ok = $0
157copy_slot_unmasked             $1 = _2_x
158cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFFF)
159bitwise_and_int                $0 &= $1
160copy_slot_unmasked             _1_ok = $0
161copy_slot_unmasked             $1 = _2_x
162cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFFF)
163bitwise_and_int                $0 &= $1
164copy_slot_unmasked             _1_ok = $0
165mul_imm_int                    _2_x *= 0x00000002
166copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
167cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFFE)
168bitwise_and_int                $0 &= $1
169copy_slot_unmasked             _1_ok = $0
170copy_slot_unmasked             $1 = _2_x
171cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFFE)
172bitwise_and_int                $0 &= $1
173copy_slot_unmasked             _1_ok = $0
174copy_slot_unmasked             $0 = _2_x
175copy_constant                  $1 = 0x00000002 (2.802597e-45)
176div_int                        $0 /= $1
177copy_slot_unmasked             _2_x = $0
178copy_2_slots_unmasked          $0..1 = _1_ok, _2_x
179cmpeq_imm_int                  $1 = equal($1, 0xFFFFFFFF)
180bitwise_and_int                $0 &= $1
181copy_slot_unmasked             _1_ok = $0
182swizzle_4                      $0..3 = ($0..3).xxxx
183copy_4_uniforms                $4..7 = colorRed
184copy_4_uniforms                $8..11 = colorGreen
185mix_4_ints                     $0..3 = mix($4..7, $8..11, $0..3)
186load_src                       src.rgba = $0..3
187