84 instructions store_src_rg v0..1 = src.rg init_lane_masks CondMask = LoopMask = RetMask = true splat_2_constants colorBlue(0..1) = 0 copy_uniform colorBlue(2) = colorWhite(2) copy_constant colorBlue(3) = 0x3F800000 (1.0) copy_constant colorGreen(0) = 0 copy_uniform colorGreen(1) = colorWhite(1) copy_constant colorGreen(2) = 0 copy_constant colorGreen(3) = 0x3F800000 (1.0) copy_uniform colorRed(0) = colorWhite(0) splat_2_constants colorRed(1..2) = 0 copy_constant colorRed(3) = 0x3F800000 (1.0) store_return_mask $0 = RetMask splat_4_constants result = 0 store_condition_mask $1 = CondMask copy_4_uniforms $2..5 = colorWhite copy_4_slots_unmasked $6..9 = colorBlue cmpne_4_floats $2..5 = notEqual($2..5, $6..9) bitwise_or_2_ints $2..3 |= $4..5 bitwise_or_int $2 |= $3 merge_condition_mask CondMask = $1 & $2 store_condition_mask $3 = CondMask copy_4_slots_unmasked $4..7 = colorGreen copy_4_slots_unmasked $8..11 = colorRed cmpeq_4_floats $4..7 = equal($4..7, $8..11) bitwise_and_2_ints $4..5 &= $6..7 bitwise_and_int $4 &= $5 merge_condition_mask CondMask = $3 & $4 copy_4_slots_unmasked $5..8 = colorRed copy_4_slots_masked result = Mask($5..8) merge_inv_condition_mask CondMask = $3 & ~$4 copy_4_slots_unmasked $5..8 = colorGreen copy_4_slots_masked result = Mask($5..8) load_condition_mask CondMask = $3 merge_inv_condition_mask CondMask = $1 & ~$2 store_condition_mask $3 = CondMask copy_4_slots_unmasked $4..7 = colorRed copy_4_slots_unmasked $8..11 = colorGreen cmpne_4_floats $4..7 = notEqual($4..7, $8..11) bitwise_or_2_ints $4..5 |= $6..7 bitwise_or_int $4 |= $5 merge_condition_mask CondMask = $3 & $4 copy_4_slots_unmasked $5..8 = colorBlue copy_4_slots_masked result = Mask($5..8) merge_inv_condition_mask CondMask = $3 & ~$4 copy_4_uniforms $5..8 = colorWhite copy_4_slots_masked result = Mask($5..8) load_condition_mask CondMask = $3 load_condition_mask CondMask = $1 copy_4_slots_unmasked $2..5 = colorRed copy_4_slots_unmasked $6..9 = colorBlue cmpeq_4_floats $2..5 = equal($2..5, $6..9) bitwise_and_2_ints $2..3 &= $4..5 bitwise_and_int $2 &= $3 merge_condition_mask CondMask = $1 & $2 copy_4_uniforms $3..6 = colorWhite copy_4_slots_masked [ifElseTest].result = Mask($3..6) mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) load_condition_mask CondMask = $1 copy_4_slots_unmasked $2..5 = colorRed copy_4_slots_unmasked $6..9 = colorGreen cmpne_4_floats $2..5 = notEqual($2..5, $6..9) bitwise_or_2_ints $2..3 |= $4..5 bitwise_or_int $2 |= $3 merge_condition_mask CondMask = $1 & $2 copy_4_slots_unmasked $3..6 = result copy_4_slots_masked [ifElseTest].result = Mask($3..6) mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) load_condition_mask CondMask = $1 copy_4_slots_unmasked $2..5 = colorRed copy_4_uniforms $6..9 = colorWhite cmpeq_4_floats $2..5 = equal($2..5, $6..9) bitwise_and_2_ints $2..3 &= $4..5 bitwise_and_int $2 &= $3 merge_condition_mask CondMask = $1 & $2 copy_4_slots_unmasked $3..6 = colorBlue copy_4_slots_masked [ifElseTest].result = Mask($3..6) mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) load_condition_mask CondMask = $1 copy_4_slots_unmasked $1..4 = colorRed copy_4_slots_masked [ifElseTest].result = Mask($1..4) load_return_mask RetMask = $0 copy_4_slots_unmasked $0..3 = [ifElseTest].result label label 0 load_src src.rgba = $0..3