| store_src_rg coords = src.rg |
| init_lane_masks CondMask = LoopMask = RetMask = true |
| store_condition_mask $12 = CondMask |
| branch_if_no_lanes_active branch_if_no_lanes_active +61 (label 2 at #65) |
| store_return_mask $13 = RetMask |
| copy_constant expected(0) = 0x40400000 (3.0) |
| copy_constant expected(1) = 0x40000000 (2.0) |
| copy_constant expected(2) = 0x3F800000 (1.0) |
| splat_4_constants vec, c = 0 |
| store_loop_mask $14 = LoopMask |
| jump jump +42 (label 4 at #53) |
| label label 0x00000005 |
| branch_if_no_lanes_active branch_if_no_lanes_active +21 (label 6 at #34) |
| copy_constant r = 0 |
| label label 0x00000007 |
| copy_slot_unmasked $23 = r |
| copy_constant $27 = 0x00000002 (2.802597e-45) |
| copy_constant $28 = 0x00000001 (1.401298e-45) |
| copy_constant $29 = 0 |
| copy_from_indirect_unmasked $22 = Indirect($27 + $23) |
| copy_slot_unmasked $27 = c |
| mul_imm_int $27 *= 0x00000003 |
| copy_slot_unmasked $23 = r |
| copy_slot_unmasked $24 = $27 |
| add_int $23 += $24 |
| copy_from_indirect_uniform_unm $15 = Indirect(testMatrix3x3(0) + $23) |
| copy_to_indirect_masked Indirect(vec(0) + $22) = Mask($15) |
| copy_slot_unmasked $15 = r |
| add_imm_int $15 += 0x00000001 |
| copy_slot_masked r = Mask($15) |
| cmplt_imm_int $15 = lessThan($15, 0x00000003) |
| stack_rewind |
| branch_if_no_active_lanes_eq branch -18 (label 7 at #15) if no lanes of $15 == 0 |
| label label 0x00000006 |
| store_condition_mask $15 = CondMask |
| copy_3_slots_unmasked $16..18 = vec |
| copy_3_slots_unmasked $19..21 = expected |
| cmpne_3_floats $16..18 = notEqual($16..18, $19..21) |
| bitwise_or_int $17 |= $18 |
| bitwise_or_int $16 |= $17 |
| merge_condition_mask CondMask = $15 & $16 |
| copy_constant $17 = 0 |
| copy_slot_masked [test3x3].result = Mask($17) |
| mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) |
| load_condition_mask CondMask = $15 |
| copy_3_slots_unmasked $15..17 = expected |
| splat_3_constants $18..20 = 0x40400000 (3.0) |
| add_3_floats $15..17 += $18..20 |
| copy_3_slots_masked expected = Mask($15..17) |
| copy_slot_unmasked $15 = c |
| add_imm_int $15 += 0x00000001 |
| copy_slot_masked c = Mask($15) |
| label label 0x00000004 |
| copy_slot_unmasked $15 = c |
| cmplt_imm_int $15 = lessThan($15, 0x00000003) |
| merge_loop_mask LoopMask &= $15 |
| stack_rewind |
| branch_if_any_lanes_active branch_if_any_lanes_active -46 (label 5 at #12) |
| label label 0x00000003 |
| load_loop_mask LoopMask = $14 |
| copy_constant $14 = 0xFFFFFFFF |
| copy_slot_masked [test3x3].result = Mask($14) |
| load_return_mask RetMask = $13 |
| copy_slot_unmasked $13 = [test3x3].result |
| label label 0x00000002 |
| copy_constant $0 = 0 |
| merge_condition_mask CondMask = $12 & $13 |
| branch_if_no_lanes_active branch_if_no_lanes_active +66 (label 1 at #134) |
| store_return_mask $1 = RetMask |
| copy_constant expected₁(0) = 0x40800000 (4.0) |
| copy_constant expected₁(1) = 0x40400000 (3.0) |
| copy_constant expected₁(2) = 0x40000000 (2.0) |
| copy_constant expected₁(3) = 0x3F800000 (1.0) |
| splat_4_constants vec₁ = 0 |
| copy_constant c₁ = 0 |
| store_loop_mask $2 = LoopMask |
| jump jump +43 (label 10 at #120) |
| label label 0x0000000B |
| branch_if_no_lanes_active branch_if_no_lanes_active +22 (label 12 at #101) |
| copy_constant r₁ = 0 |
| label label 0x0000000D |
| copy_slot_unmasked $27 = r₁ |
| copy_constant $23 = 0x00000003 (4.203895e-45) |
| copy_constant $24 = 0x00000002 (2.802597e-45) |
| copy_constant $25 = 0x00000001 (1.401298e-45) |
| copy_constant $26 = 0 |
| copy_from_indirect_unmasked $22 = Indirect($23 + $27) |
| copy_slot_unmasked $23 = c₁ |
| mul_imm_int $23 *= 0x00000004 |
| copy_slot_unmasked $27 = r₁ |
| copy_slot_unmasked $28 = $23 |
| add_int $27 += $28 |
| copy_from_indirect_uniform_unm $3 = Indirect(testMatrix4x4(0) + $27) |
| copy_to_indirect_masked Indirect(vec₁(0) + $22) = Mask($3) |
| copy_slot_unmasked $3 = r₁ |
| add_imm_int $3 += 0x00000001 |
| copy_slot_masked r₁ = Mask($3) |
| cmplt_imm_int $3 = lessThan($3, 0x00000004) |
| stack_rewind |
| branch_if_no_active_lanes_eq branch -19 (label 13 at #81) if no lanes of $3 == 0 |
| label label 0x0000000C |
| store_condition_mask $3 = CondMask |
| copy_4_slots_unmasked $4..7 = vec₁ |
| copy_4_slots_unmasked $8..11 = expected₁ |
| 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_constant $5 = 0 |
| copy_slot_masked [test4x4].result = Mask($5) |
| mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) |
| load_condition_mask CondMask = $3 |
| copy_4_slots_unmasked $3..6 = expected₁ |
| splat_4_constants $7..10 = 0x40800000 (4.0) |
| add_4_floats $3..6 += $7..10 |
| copy_4_slots_masked expected₁ = Mask($3..6) |
| copy_slot_unmasked $3 = c₁ |
| add_imm_int $3 += 0x00000001 |
| copy_slot_masked c₁ = Mask($3) |
| label label 0x0000000A |
| copy_slot_unmasked $3 = c₁ |
| cmplt_imm_int $3 = lessThan($3, 0x00000004) |
| merge_loop_mask LoopMask &= $3 |
| stack_rewind |
| branch_if_any_lanes_active branch_if_any_lanes_active -47 (label 11 at #78) |
| label label 0x00000009 |
| load_loop_mask LoopMask = $2 |
| copy_constant $2 = 0xFFFFFFFF |
| copy_slot_masked [test4x4].result = Mask($2) |
| load_return_mask RetMask = $1 |
| copy_slot_unmasked $1 = [test4x4].result |
| label label 0x00000008 |
| copy_slot_masked $0 = Mask($1) |
| label label 0x00000001 |
| load_condition_mask CondMask = $12 |
| swizzle_4 $0..3 = ($0..3).xxxx |
| copy_4_uniforms $4..7 = colorRed |
| copy_4_uniforms $8..11 = colorGreen |
| mix_4_ints $0..3 = mix($4..7, $8..11, $0..3) |
| load_src src.rgba = $0..3 |