| store_src_rg coords = src.rg |
| init_lane_masks CondMask = LoopMask = RetMask = true |
| copy_4_uniforms v = testInputs |
| copy_constant $0 = 0 |
| copy_4_slots_unmasked $1..4 = v |
| swizzle_3 $1..3 = ($1..3).zyx |
| copy_4_slots_unmasked v = $0..3 |
| splat_2_constants $0..1 = 0 |
| copy_4_slots_unmasked $2..5 = v |
| swizzle_1 $3 = ($3..5).z |
| copy_4_slots_unmasked v = $0..3 |
| splat_2_constants $0..1 = 0x3F800000 (1.0) |
| copy_4_slots_unmasked $2..5 = v |
| swizzle_2 $2..3 = ($2..5).wx |
| copy_4_slots_unmasked v = $0..3 |
| swizzle_2 $0..1 = ($0..2).zy |
| splat_2_constants v(2..3) = 0x3F800000 (1.0) |
| copy_2_slots_unmasked v(0..1) = $0..1 |
| copy_4_slots_unmasked $0..3 = v |
| swizzle_2 $0..1 = ($0..1).xx |
| splat_2_constants v(2..3) = 0x3F800000 (1.0) |
| copy_2_slots_unmasked v(0..1) = $0..1 |
| copy_4_slots_unmasked $0..3 = v |
| swizzle_4 $0..3 = ($0..3).wzwz |
| copy_4_slots_unmasked v = $0..3 |
| copy_4_slots_unmasked v₁ = $0..3 |
| store_return_mask $0 = RetMask |
| copy_constant x = 0x00000001 (1.401298e-45) |
| store_loop_mask $1 = LoopMask |
| jump jump +8 (label 2 at #38) |
| label label 0x00000003 |
| copy_slot_unmasked $2 = v₁(0) |
| copy_slot_masked [fn].result = Mask($2) |
| mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) |
| copy_slot_unmasked $2 = x |
| add_imm_int $2 += 0x00000001 |
| copy_slot_masked x = Mask($2) |
| label label 0x00000002 |
| copy_slot_unmasked $2 = x |
| cmple_imm_int $2 = lessThanEqual($2, 0x00000002) |
| merge_loop_mask LoopMask &= $2 |
| stack_rewind |
| branch_if_any_lanes_active branch_if_any_lanes_active -12 (label 3 at #31) |
| label label 0x00000001 |
| load_loop_mask LoopMask = $1 |
| load_return_mask RetMask = $0 |
| copy_slot_unmasked $0 = [fn].result |
| label label 0 |
| copy_constant $1 = 0x42F60000 (123.0) |
| copy_constant $2 = 0x43E40000 (456.0) |
| swizzle_4 $0..3 = ($0..3).yyzz |
| copy_4_slots_unmasked v = $0..3 |
| copy_4_slots_unmasked v₁ = $0..3 |
| store_return_mask $0 = RetMask |
| copy_constant x = 0x00000001 (1.401298e-45) |
| store_loop_mask $1 = LoopMask |
| jump jump +8 (label 6 at #65) |
| label label 0x00000007 |
| copy_slot_unmasked $2 = v₁(0) |
| copy_slot_masked [fn].result = Mask($2) |
| mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) |
| copy_slot_unmasked $2 = x |
| add_imm_int $2 += 0x00000001 |
| copy_slot_masked x = Mask($2) |
| label label 0x00000006 |
| copy_slot_unmasked $2 = x |
| cmple_imm_int $2 = lessThanEqual($2, 0x00000002) |
| merge_loop_mask LoopMask &= $2 |
| stack_rewind |
| branch_if_any_lanes_active branch_if_any_lanes_active -12 (label 7 at #58) |
| label label 0x00000005 |
| load_loop_mask LoopMask = $1 |
| load_return_mask RetMask = $0 |
| copy_slot_unmasked $0 = [fn].result |
| label label 0x00000004 |
| copy_constant $1 = 0x42F60000 (123.0) |
| copy_constant $2 = 0x43E40000 (456.0) |
| swizzle_4 $0..3 = ($0..3).yyzz |
| copy_4_slots_unmasked v = $0..3 |
| copy_constant $0 = 0x42F60000 (123.0) |
| splat_2_constants $1..2 = 0x43E40000 (456.0) |
| copy_4_slots_unmasked v₁ = v |
| store_return_mask $3 = RetMask |
| copy_constant x = 0x00000001 (1.401298e-45) |
| store_loop_mask $4 = LoopMask |
| jump jump +8 (label 10 at #94) |
| label label 0x0000000B |
| copy_slot_unmasked $5 = v₁(0) |
| copy_slot_masked [fn].result = Mask($5) |
| mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) |
| copy_slot_unmasked $5 = x |
| add_imm_int $5 += 0x00000001 |
| copy_slot_masked x = Mask($5) |
| label label 0x0000000A |
| copy_slot_unmasked $5 = x |
| cmple_imm_int $5 = lessThanEqual($5, 0x00000002) |
| merge_loop_mask LoopMask &= $5 |
| stack_rewind |
| branch_if_any_lanes_active branch_if_any_lanes_active -12 (label 11 at #87) |
| label label 0x00000009 |
| load_loop_mask LoopMask = $4 |
| load_return_mask RetMask = $3 |
| copy_slot_unmasked $3 = [fn].result |
| label label 0x00000008 |
| copy_4_slots_unmasked v = $0..3 |
| copy_constant $0 = 0x42F60000 (123.0) |
| splat_2_constants $1..2 = 0x43E40000 (456.0) |
| copy_4_slots_unmasked v₁ = v |
| store_return_mask $3 = RetMask |
| copy_constant x = 0x00000001 (1.401298e-45) |
| store_loop_mask $4 = LoopMask |
| jump jump +8 (label 14 at #120) |
| label label 0x0000000F |
| copy_slot_unmasked $5 = v₁(0) |
| copy_slot_masked [fn].result = Mask($5) |
| mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) |
| copy_slot_unmasked $5 = x |
| add_imm_int $5 += 0x00000001 |
| copy_slot_masked x = Mask($5) |
| label label 0x0000000E |
| copy_slot_unmasked $5 = x |
| cmple_imm_int $5 = lessThanEqual($5, 0x00000002) |
| merge_loop_mask LoopMask &= $5 |
| stack_rewind |
| branch_if_any_lanes_active branch_if_any_lanes_active -12 (label 15 at #113) |
| label label 0x0000000D |
| load_loop_mask LoopMask = $4 |
| load_return_mask RetMask = $3 |
| copy_slot_unmasked $3 = [fn].result |
| label label 0x0000000C |
| copy_4_slots_unmasked v = $0..3 |
| copy_4_slots_unmasked v₁ = $0..3 |
| store_return_mask $0 = RetMask |
| copy_constant x = 0x00000001 (1.401298e-45) |
| store_loop_mask $1 = LoopMask |
| jump jump +8 (label 18 at #144) |
| label label 0x00000013 |
| copy_slot_unmasked $2 = v₁(0) |
| copy_slot_masked [fn].result = Mask($2) |
| mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) |
| copy_slot_unmasked $2 = x |
| add_imm_int $2 += 0x00000001 |
| copy_slot_masked x = Mask($2) |
| label label 0x00000012 |
| copy_slot_unmasked $2 = x |
| cmple_imm_int $2 = lessThanEqual($2, 0x00000002) |
| merge_loop_mask LoopMask &= $2 |
| stack_rewind |
| branch_if_any_lanes_active branch_if_any_lanes_active -12 (label 19 at #137) |
| label label 0x00000011 |
| load_loop_mask LoopMask = $1 |
| load_return_mask RetMask = $0 |
| copy_slot_unmasked $0 = [fn].result |
| label label 0x00000010 |
| copy_constant $1 = 0x42F60000 (123.0) |
| copy_constant $2 = 0x43E40000 (456.0) |
| swizzle_4 $0..3 = ($0..3).yxxz |
| copy_4_slots_unmasked v = $0..3 |
| copy_4_slots_unmasked v₁ = $0..3 |
| store_return_mask $0 = RetMask |
| copy_constant x = 0x00000001 (1.401298e-45) |
| store_loop_mask $1 = LoopMask |
| jump jump +8 (label 22 at #171) |
| label label 0x00000017 |
| copy_slot_unmasked $2 = v₁(0) |
| copy_slot_masked [fn].result = Mask($2) |
| mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) |
| copy_slot_unmasked $2 = x |
| add_imm_int $2 += 0x00000001 |
| copy_slot_masked x = Mask($2) |
| label label 0x00000016 |
| copy_slot_unmasked $2 = x |
| cmple_imm_int $2 = lessThanEqual($2, 0x00000002) |
| merge_loop_mask LoopMask &= $2 |
| stack_rewind |
| branch_if_any_lanes_active branch_if_any_lanes_active -12 (label 23 at #164) |
| label label 0x00000015 |
| load_loop_mask LoopMask = $1 |
| load_return_mask RetMask = $0 |
| copy_slot_unmasked $0 = [fn].result |
| label label 0x00000014 |
| copy_constant $1 = 0x42F60000 (123.0) |
| copy_constant $2 = 0x43E40000 (456.0) |
| swizzle_4 $0..3 = ($0..3).yxxz |
| copy_4_slots_unmasked v = $0..3 |
| splat_2_constants v(0..1) = 0x3F800000 (1.0) |
| copy_constant v(2) = 0x40000000 (2.0) |
| copy_constant v(3) = 0x40400000 (3.0) |
| copy_3_uniforms v(0..2) = colorRed(0..2) |
| copy_constant v(3) = 0x3F800000 (1.0) |
| copy_uniform v(0) = colorRed(0) |
| copy_constant v(1) = 0x3F800000 (1.0) |
| copy_2_uniforms v(2..3) = colorRed(1..2) |
| copy_4_slots_unmasked $0..3 = v |
| swizzle_copy_4_slots_masked (v).wzyx = Mask($0..3) |
| copy_2_slots_unmasked $0..1 = v(1..2) |
| swizzle_copy_2_slots_masked (v).xw = Mask($0..1) |
| copy_4_slots_unmasked $0..3 = v |
| swizzle_2 $0..1 = ($0..3).ww |
| copy_constant $2 = 0x3F800000 (1.0) |
| swizzle_copy_3_slots_masked (v(0..2)).zyx = Mask($0..2) |
| copy_4_slots_unmasked $0..3 = v |
| splat_4_constants $4..7 = 0x3F800000 (1.0) |
| cmpeq_4_floats $0..3 = equal($0..3, $4..7) |
| bitwise_and_2_ints $0..1 &= $2..3 |
| bitwise_and_int $0 &= $1 |
| 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 |