1*c8dee2aaSAndroid Build Coastguard Worker129 instructions 2*c8dee2aaSAndroid Build Coastguard Worker 3*c8dee2aaSAndroid Build Coastguard Worker[immutable slots] 4*c8dee2aaSAndroid Build Coastguard Workeri0 = 0x3F800000 (1.0) 5*c8dee2aaSAndroid Build Coastguard Workeri1 = 0x40000000 (2.0) 6*c8dee2aaSAndroid Build Coastguard Workeri2 = 0x40400000 (3.0) 7*c8dee2aaSAndroid Build Coastguard Workeri3 = 0x40800000 (4.0) 8*c8dee2aaSAndroid Build Coastguard Workeri4 = 0xBF800000 (-1.0) 9*c8dee2aaSAndroid Build Coastguard Workeri5 = 0xC0000000 (-2.0) 10*c8dee2aaSAndroid Build Coastguard Workeri6 = 0xC0400000 (-3.0) 11*c8dee2aaSAndroid Build Coastguard Workeri7 = 0xC0800000 (-4.0) 12*c8dee2aaSAndroid Build Coastguard Worker 13*c8dee2aaSAndroid Build Coastguard Workerstore_src_rg xy = src.rg 14*c8dee2aaSAndroid Build Coastguard Workerinit_lane_masks CondMask = LoopMask = RetMask = true 15*c8dee2aaSAndroid Build Coastguard Workercopy_constant $0 = 0x3F800000 (1.0) 16*c8dee2aaSAndroid Build Coastguard Workercopy_constant $1 = 0 17*c8dee2aaSAndroid Build Coastguard Workersplat_2_constants $2..3 = 0x7149F2CA (1e+30) 18*c8dee2aaSAndroid Build Coastguard Workermul_float $2 *= $3 19*c8dee2aaSAndroid Build Coastguard Workercmple_float $1 = lessThanEqual($1, $2) 20*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_imm_int $1 &= 0x80000000 21*c8dee2aaSAndroid Build Coastguard Workerbitwise_xor_int $0 ^= $1 22*c8dee2aaSAndroid Build Coastguard Workercopy_slot_unmasked huge = $0 23*c8dee2aaSAndroid Build Coastguard Workersplat_2_constants $0..1 = 0x3F800000 (1.0) 24*c8dee2aaSAndroid Build Coastguard Workercopy_constant $2 = 0 25*c8dee2aaSAndroid Build Coastguard Workersplat_4_constants $3..6 = 0x7149F2CA (1e+30) 26*c8dee2aaSAndroid Build Coastguard Workerdot_2_floats $3 = dot($3..4, $5..6) 27*c8dee2aaSAndroid Build Coastguard Workercmple_float $2 = lessThanEqual($2, $3) 28*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_imm_int $2 &= 0x80000000 29*c8dee2aaSAndroid Build Coastguard Workercopy_slot_unmasked $3 = $2 30*c8dee2aaSAndroid Build Coastguard Workerbitwise_xor_2_ints $0..1 ^= $2..3 31*c8dee2aaSAndroid Build Coastguard Workercopy_2_slots_unmasked huge2 = $0..1 32*c8dee2aaSAndroid Build Coastguard Workersplat_3_constants $0..2 = 0x3F800000 (1.0) 33*c8dee2aaSAndroid Build Coastguard Workercopy_constant $3 = 0 34*c8dee2aaSAndroid Build Coastguard Workersplat_4_constants $4..7 = 0x7149F2CA (1e+30) 35*c8dee2aaSAndroid Build Coastguard Workersplat_2_constants $8..9 = 0x7149F2CA (1e+30) 36*c8dee2aaSAndroid Build Coastguard Workerdot_3_floats $4 = dot($4..6, $7..9) 37*c8dee2aaSAndroid Build Coastguard Workercmple_float $3 = lessThanEqual($3, $4) 38*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_imm_int $3 &= 0x80000000 39*c8dee2aaSAndroid Build Coastguard Workerswizzle_3 $3..5 = ($3..5).xxx 40*c8dee2aaSAndroid Build Coastguard Workerbitwise_xor_3_ints $0..2 ^= $3..5 41*c8dee2aaSAndroid Build Coastguard Workercopy_3_slots_unmasked huge3 = $0..2 42*c8dee2aaSAndroid Build Coastguard Workersplat_4_constants $0..3 = 0x3F800000 (1.0) 43*c8dee2aaSAndroid Build Coastguard Workercopy_constant $4 = 0 44*c8dee2aaSAndroid Build Coastguard Workersplat_4_constants $5..8 = 0x7149F2CA (1e+30) 45*c8dee2aaSAndroid Build Coastguard Workersplat_4_constants $9..12 = 0x7149F2CA (1e+30) 46*c8dee2aaSAndroid Build Coastguard Workerdot_4_floats $5 = dot($5..8, $9..12) 47*c8dee2aaSAndroid Build Coastguard Workercmple_float $4 = lessThanEqual($4, $5) 48*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_imm_int $4 &= 0x80000000 49*c8dee2aaSAndroid Build Coastguard Workerswizzle_4 $4..7 = ($4..7).xxxx 50*c8dee2aaSAndroid Build Coastguard Workerbitwise_xor_4_ints $0..3 ^= $4..7 51*c8dee2aaSAndroid Build Coastguard Workercopy_4_slots_unmasked huge4 = $0..3 52*c8dee2aaSAndroid Build Coastguard Workercopy_slot_unmasked $0 = huge 53*c8dee2aaSAndroid Build Coastguard Workerswizzle_4 $0..3 = ($0..3).xxxx 54*c8dee2aaSAndroid Build Coastguard Workercopy_2_slots_unmasked $4..5 = huge2 55*c8dee2aaSAndroid Build Coastguard Workerswizzle_4 $4..7 = ($4..7).xxxx 56*c8dee2aaSAndroid Build Coastguard Workeradd_4_floats $0..3 += $4..7 57*c8dee2aaSAndroid Build Coastguard Workercopy_4_slots_unmasked expectedPos = $0..3 58*c8dee2aaSAndroid Build Coastguard Workercopy_3_slots_unmasked $0..2 = huge3 59*c8dee2aaSAndroid Build Coastguard Workerswizzle_4 $0..3 = ($0..3).xxxx 60*c8dee2aaSAndroid Build Coastguard Workercopy_4_slots_unmasked $4..7 = huge4 61*c8dee2aaSAndroid Build Coastguard Workerswizzle_4 $4..7 = ($4..7).xxxx 62*c8dee2aaSAndroid Build Coastguard Workeradd_4_floats $0..3 += $4..7 63*c8dee2aaSAndroid Build Coastguard Workercopy_4_slots_unmasked expectedNeg = $0..3 64*c8dee2aaSAndroid Build Coastguard Workercopy_4_immutables_unmasked expectedPos = i0..3 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0)] 65*c8dee2aaSAndroid Build Coastguard Workercopy_4_immutables_unmasked expectedNeg = i4..7 [0xBF800000 (-1.0), 0xC0000000 (-2.0), 0xC0400000 (-3.0), 0xC0800000 (-4.0)] 66*c8dee2aaSAndroid Build Coastguard Workercopy_uniform $0 = N(0) 67*c8dee2aaSAndroid Build Coastguard Workercopy_constant $1 = 0 68*c8dee2aaSAndroid Build Coastguard Workercopy_uniform $2 = I(0) 69*c8dee2aaSAndroid Build Coastguard Workercopy_uniform $3 = NRef(0) 70*c8dee2aaSAndroid Build Coastguard Workermul_float $2 *= $3 71*c8dee2aaSAndroid Build Coastguard Workercmple_float $1 = lessThanEqual($1, $2) 72*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_imm_int $1 &= 0x80000000 73*c8dee2aaSAndroid Build Coastguard Workerbitwise_xor_int $0 ^= $1 74*c8dee2aaSAndroid Build Coastguard Workercopy_slot_unmasked $1 = expectedNeg(0) 75*c8dee2aaSAndroid Build Coastguard Workercmpeq_float $0 = equal($0, $1) 76*c8dee2aaSAndroid Build Coastguard Workercopy_2_uniforms $1..2 = N(0..1) 77*c8dee2aaSAndroid Build Coastguard Workercopy_constant $3 = 0 78*c8dee2aaSAndroid Build Coastguard Workercopy_2_uniforms $4..5 = I(0..1) 79*c8dee2aaSAndroid Build Coastguard Workercopy_2_uniforms $6..7 = NRef(0..1) 80*c8dee2aaSAndroid Build Coastguard Workerdot_2_floats $4 = dot($4..5, $6..7) 81*c8dee2aaSAndroid Build Coastguard Workercmple_float $3 = lessThanEqual($3, $4) 82*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_imm_int $3 &= 0x80000000 83*c8dee2aaSAndroid Build Coastguard Workercopy_slot_unmasked $4 = $3 84*c8dee2aaSAndroid Build Coastguard Workerbitwise_xor_2_ints $1..2 ^= $3..4 85*c8dee2aaSAndroid Build Coastguard Workercopy_2_slots_unmasked $3..4 = expectedNeg(0..1) 86*c8dee2aaSAndroid Build Coastguard Workercmpeq_2_floats $1..2 = equal($1..2, $3..4) 87*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $1 &= $2 88*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $0 &= $1 89*c8dee2aaSAndroid Build Coastguard Workercopy_3_uniforms $1..3 = N(0..2) 90*c8dee2aaSAndroid Build Coastguard Workercopy_constant $4 = 0 91*c8dee2aaSAndroid Build Coastguard Workercopy_3_uniforms $5..7 = I(0..2) 92*c8dee2aaSAndroid Build Coastguard Workercopy_3_uniforms $8..10 = NRef(0..2) 93*c8dee2aaSAndroid Build Coastguard Workerdot_3_floats $5 = dot($5..7, $8..10) 94*c8dee2aaSAndroid Build Coastguard Workercmple_float $4 = lessThanEqual($4, $5) 95*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_imm_int $4 &= 0x80000000 96*c8dee2aaSAndroid Build Coastguard Workerswizzle_3 $4..6 = ($4..6).xxx 97*c8dee2aaSAndroid Build Coastguard Workerbitwise_xor_3_ints $1..3 ^= $4..6 98*c8dee2aaSAndroid Build Coastguard Workercopy_3_slots_unmasked $4..6 = expectedPos(0..2) 99*c8dee2aaSAndroid Build Coastguard Workercmpeq_3_floats $1..3 = equal($1..3, $4..6) 100*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $2 &= $3 101*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $1 &= $2 102*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $0 &= $1 103*c8dee2aaSAndroid Build Coastguard Workercopy_4_uniforms $1..4 = N 104*c8dee2aaSAndroid Build Coastguard Workercopy_constant $5 = 0 105*c8dee2aaSAndroid Build Coastguard Workercopy_4_uniforms $6..9 = I 106*c8dee2aaSAndroid Build Coastguard Workercopy_4_uniforms $10..13 = NRef 107*c8dee2aaSAndroid Build Coastguard Workerdot_4_floats $6 = dot($6..9, $10..13) 108*c8dee2aaSAndroid Build Coastguard Workercmple_float $5 = lessThanEqual($5, $6) 109*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_imm_int $5 &= 0x80000000 110*c8dee2aaSAndroid Build Coastguard Workerswizzle_4 $5..8 = ($5..8).xxxx 111*c8dee2aaSAndroid Build Coastguard Workerbitwise_xor_4_ints $1..4 ^= $5..8 112*c8dee2aaSAndroid Build Coastguard Workercopy_4_slots_unmasked $5..8 = expectedPos 113*c8dee2aaSAndroid Build Coastguard Workercmpeq_4_floats $1..4 = equal($1..4, $5..8) 114*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_2_ints $1..2 &= $3..4 115*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $1 &= $2 116*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $0 &= $1 117*c8dee2aaSAndroid Build Coastguard Workercopy_slot_unmasked $1 = expectedNeg(0) 118*c8dee2aaSAndroid Build Coastguard Workercmpeq_imm_float $1 = equal($1, 0xBF800000 (-1.0)) 119*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $0 &= $1 120*c8dee2aaSAndroid Build Coastguard Workercopy_2_immutables_unmasked $1..2 = i4..5 [0xBF800000 (-1.0), 0xC0000000 (-2.0)] 121*c8dee2aaSAndroid Build Coastguard Workercopy_2_slots_unmasked $3..4 = expectedNeg(0..1) 122*c8dee2aaSAndroid Build Coastguard Workercmpeq_2_floats $1..2 = equal($1..2, $3..4) 123*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $1 &= $2 124*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $0 &= $1 125*c8dee2aaSAndroid Build Coastguard Workercopy_3_immutables_unmasked $1..3 = i0..2 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0)] 126*c8dee2aaSAndroid Build Coastguard Workercopy_3_slots_unmasked $4..6 = expectedPos(0..2) 127*c8dee2aaSAndroid Build Coastguard Workercmpeq_3_floats $1..3 = equal($1..3, $4..6) 128*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $2 &= $3 129*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $1 &= $2 130*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $0 &= $1 131*c8dee2aaSAndroid Build Coastguard Workercopy_4_immutables_unmasked $1..4 = i0..3 [0x3F800000 (1.0), 0x40000000 (2.0), 0x40400000 (3.0), 0x40800000 (4.0)] 132*c8dee2aaSAndroid Build Coastguard Workercopy_4_slots_unmasked $5..8 = expectedPos 133*c8dee2aaSAndroid Build Coastguard Workercmpeq_4_floats $1..4 = equal($1..4, $5..8) 134*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_2_ints $1..2 &= $3..4 135*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $1 &= $2 136*c8dee2aaSAndroid Build Coastguard Workerbitwise_and_int $0 &= $1 137*c8dee2aaSAndroid Build Coastguard Workerswizzle_4 $0..3 = ($0..3).xxxx 138*c8dee2aaSAndroid Build Coastguard Workercopy_4_uniforms $4..7 = colorRed 139*c8dee2aaSAndroid Build Coastguard Workercopy_4_uniforms $8..11 = colorGreen 140*c8dee2aaSAndroid Build Coastguard Workermix_4_ints $0..3 = mix($4..7, $8..11, $0..3) 141*c8dee2aaSAndroid Build Coastguard Workerload_src src.rgba = $0..3 142