xref: /aosp_15_r20/external/skia/tests/sksl/shared/TernaryComplexNesting.skrp (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
183 instructions
2
3store_src_rg                   coords = src.rg
4init_lane_masks                CondMask = LoopMask = RetMask = true
5splat_2_constants              colorBlue(0..1) = 0
6copy_2_uniforms                colorBlue(2..3) = colorWhite(2..3)
7copy_constant                  colorGreen(0) = 0
8copy_uniform                   colorGreen(1) = colorWhite(1)
9copy_constant                  colorGreen(2) = 0
10copy_uniform                   colorGreen(3) = colorWhite(3)
11copy_uniform                   colorRed(0) = colorWhite(0)
12splat_2_constants              colorRed(1..2) = 0
13copy_uniform                   colorRed(3) = colorWhite(3)
14store_condition_mask           $20 = CondMask
15branch_if_no_lanes_active      branch_if_no_lanes_active +7 (label 1 at #20)
16copy_4_uniforms                x = colorWhite
17copy_4_slots_unmasked          $21..24 = x
18copy_4_slots_unmasked          $25..28 = colorBlue
19cmpeq_4_floats                 $21..24 = equal($21..24, $25..28)
20bitwise_and_2_ints             $21..22 &= $23..24
21bitwise_and_int                $21 &= $22
22label                          label 0x00000001
23bitwise_xor_imm_int            $21 ^= 0xFFFFFFFF
24merge_condition_mask           CondMask = $20 & $21
25branch_if_no_lanes_active      branch_if_no_lanes_active +6 (label 3 at #29)
26copy_4_slots_unmasked          $0..3 = colorGreen
27copy_4_slots_unmasked          $4..7 = colorRed
28cmpeq_4_floats                 $0..3 = equal($0..3, $4..7)
29bitwise_and_2_ints             $0..1 &= $2..3
30bitwise_and_int                $0 &= $1
31label                          label 0x00000003
32swizzle_4                      $0..3 = ($0..3).xxxx
33copy_4_slots_unmasked          $4..7 = colorGreen
34copy_4_slots_unmasked          $8..11 = colorRed
35mix_4_ints                     $0..3 = mix($4..7, $8..11, $0..3)
36merge_inv_condition_mask       CondMask = $20 & ~$21
37branch_if_no_lanes_active      branch_if_no_lanes_active +6 (label 5 at #41)
38copy_4_slots_unmasked          $4..7 = colorRed
39copy_4_slots_unmasked          $8..11 = colorGreen
40cmpeq_4_floats                 $4..7 = equal($4..7, $8..11)
41bitwise_and_2_ints             $4..5 &= $6..7
42bitwise_and_int                $4 &= $5
43label                          label 0x00000005
44bitwise_xor_imm_int            $4 ^= 0xFFFFFFFF
45swizzle_4                      $4..7 = ($4..7).xxxx
46copy_4_uniforms                $8..11 = colorWhite
47copy_4_slots_unmasked          $12..15 = colorBlue
48mix_4_ints                     $4..7 = mix($8..11, $12..15, $4..7)
49copy_4_slots_masked            $0..3 = Mask($4..7)
50load_condition_mask            CondMask = $20
51copy_4_slots_unmasked          result = $0..3
52store_condition_mask           $20 = CondMask
53branch_if_no_lanes_active      branch_if_no_lanes_active +6 (label 7 at #57)
54copy_4_slots_unmasked          $21..24 = colorRed
55copy_4_slots_unmasked          $25..28 = colorBlue
56cmpeq_4_floats                 $21..24 = equal($21..24, $25..28)
57bitwise_and_2_ints             $21..22 &= $23..24
58bitwise_and_int                $21 &= $22
59label                          label 0x00000007
60merge_condition_mask           CondMask = $20 & $21
61copy_4_uniforms                $0..3 = colorWhite
62merge_inv_condition_mask       CondMask = $20 & ~$21
63store_condition_mask           $29 = CondMask
64branch_if_no_lanes_active      branch_if_no_lanes_active +6 (label 9 at #68)
65copy_4_slots_unmasked          $30..33 = colorRed
66copy_4_slots_unmasked          $34..37 = colorGreen
67cmpeq_4_floats                 $30..33 = equal($30..33, $34..37)
68bitwise_and_2_ints             $30..31 &= $32..33
69bitwise_and_int                $30 &= $31
70label                          label 0x00000009
71bitwise_xor_imm_int            $30 ^= 0xFFFFFFFF
72merge_condition_mask           CondMask = $29 & $30
73copy_4_slots_unmasked          $4..7 = result
74merge_inv_condition_mask       CondMask = $29 & ~$30
75branch_if_no_lanes_active      branch_if_no_lanes_active +7 (label 11 at #80)
76copy_4_uniforms                y = colorWhite
77copy_4_slots_unmasked          $8..11 = colorRed
78copy_4_slots_unmasked          $12..15 = y
79cmpeq_4_floats                 $8..11 = equal($8..11, $12..15)
80bitwise_and_2_ints             $8..9 &= $10..11
81bitwise_and_int                $8 &= $9
82label                          label 0x0000000B
83swizzle_4                      $8..11 = ($8..11).xxxx
84copy_4_slots_unmasked          $12..15 = colorRed
85copy_4_slots_unmasked          $16..19 = colorBlue
86mix_4_ints                     $8..11 = mix($12..15, $16..19, $8..11)
87copy_4_slots_masked            $4..7 = Mask($8..11)
88load_condition_mask            CondMask = $29
89copy_4_slots_masked            $0..3 = Mask($4..7)
90load_condition_mask            CondMask = $20
91load_src                       src.rgba = $0..3
92