xref: /aosp_15_r20/external/skia/tests/sksl/intrinsics/Trunc.skrp (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker34 instructions
2*c8dee2aaSAndroid Build Coastguard Worker
3*c8dee2aaSAndroid Build Coastguard Worker[immutable slots]
4*c8dee2aaSAndroid Build Coastguard Workeri0 = 0xBF800000 (-1.0)
5*c8dee2aaSAndroid Build Coastguard Workeri1 = 0
6*c8dee2aaSAndroid Build Coastguard Workeri2 = 0
7*c8dee2aaSAndroid Build Coastguard Workeri3 = 0x40000000 (2.0)
8*c8dee2aaSAndroid Build Coastguard Worker
9*c8dee2aaSAndroid Build Coastguard Workerstore_src_rg                   coords = src.rg
10*c8dee2aaSAndroid Build Coastguard Workerinit_lane_masks                CondMask = LoopMask = RetMask = true
11*c8dee2aaSAndroid Build Coastguard Workercopy_uniform                   $4 = testInputs(0)
12*c8dee2aaSAndroid Build Coastguard Workercast_to_int_from_float         $4 = FloatToInt($4)
13*c8dee2aaSAndroid Build Coastguard Workercast_to_float_from_int         $4 = IntToFloat($4)
14*c8dee2aaSAndroid Build Coastguard Workercmpeq_imm_float                $4 = equal($4, 0xBF800000 (-1.0))
15*c8dee2aaSAndroid Build Coastguard Workercopy_2_uniforms                $5..6 = testInputs(0..1)
16*c8dee2aaSAndroid Build Coastguard Workercast_to_int_from_2_floats      $5..6 = FloatToInt($5..6)
17*c8dee2aaSAndroid Build Coastguard Workercast_to_float_from_2_ints      $5..6 = IntToFloat($5..6)
18*c8dee2aaSAndroid Build Coastguard Workercopy_2_immutables_unmasked     $7..8 = i0..1 [0xBF800000 (-1.0), 0]
19*c8dee2aaSAndroid Build Coastguard Workercmpeq_2_floats                 $5..6 = equal($5..6, $7..8)
20*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int                $5 &= $6
21*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int                $4 &= $5
22*c8dee2aaSAndroid Build Coastguard Workercopy_3_uniforms                $5..7 = testInputs(0..2)
23*c8dee2aaSAndroid Build Coastguard Workercast_to_int_from_3_floats      $5..7 = FloatToInt($5..7)
24*c8dee2aaSAndroid Build Coastguard Workercast_to_float_from_3_ints      $5..7 = IntToFloat($5..7)
25*c8dee2aaSAndroid Build Coastguard Workercopy_3_immutables_unmasked     $8..10 = i0..2 [0xBF800000 (-1.0), 0, 0]
26*c8dee2aaSAndroid Build Coastguard Workercmpeq_3_floats                 $5..7 = equal($5..7, $8..10)
27*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int                $6 &= $7
28*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int                $5 &= $6
29*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int                $4 &= $5
30*c8dee2aaSAndroid Build Coastguard Workercopy_4_uniforms                $5..8 = testInputs
31*c8dee2aaSAndroid Build Coastguard Workercast_to_int_from_4_floats      $5..8 = FloatToInt($5..8)
32*c8dee2aaSAndroid Build Coastguard Workercast_to_float_from_4_ints      $5..8 = IntToFloat($5..8)
33*c8dee2aaSAndroid Build Coastguard Workercopy_4_immutables_unmasked     $9..12 = i0..3 [0xBF800000 (-1.0), 0, 0, 0x40000000 (2.0)]
34*c8dee2aaSAndroid Build Coastguard Workercmpeq_4_floats                 $5..8 = equal($5..8, $9..12)
35*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_2_ints             $5..6 &= $7..8
36*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int                $5 &= $6
37*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int                $4 &= $5
38*c8dee2aaSAndroid Build Coastguard Workerbranch_if_no_active_lanes_eq   branch +3 (label 0 at #33) if no lanes of $4 == 0xFFFFFFFF
39*c8dee2aaSAndroid Build Coastguard Workercopy_4_uniforms                $0..3 = colorGreen
40*c8dee2aaSAndroid Build Coastguard Workerjump                           jump +3 (label 1 at #35)
41*c8dee2aaSAndroid Build Coastguard Workerlabel                          label 0
42*c8dee2aaSAndroid Build Coastguard Workercopy_4_uniforms                $0..3 = colorRed
43*c8dee2aaSAndroid Build Coastguard Workerlabel                          label 0x00000001
44*c8dee2aaSAndroid Build Coastguard Workerload_src                       src.rgba = $0..3
45