143 instructions 2 3store_src_rg coords = src.rg 4init_lane_masks CondMask = LoopMask = RetMask = true 5splat_4_constants x = 0x3F800000 (1.0) 6store_loop_mask $0 = LoopMask 7label label 0x00000001 8copy_slot_unmasked $1 = x(0) 9add_imm_float $1 += 0xBE800000 (-0.25) 10copy_slot_masked x(0) = Mask($1) 11store_condition_mask $1 = CondMask 12copy_slot_unmasked $2 = x(0) 13cmple_imm_float $2 = lessThanEqual($2, 0) 14merge_condition_mask CondMask = $1 & $2 15branch_if_all_lanes_active branch_if_all_lanes_active +8 (label 0 at #21) 16mask_off_loop_mask LoopMask &= ~(CondMask & LoopMask & RetMask) 17load_condition_mask CondMask = $1 18copy_slot_unmasked $1 = x(3) 19cmpeq_imm_float $1 = equal($1, 0x3F800000 (1.0)) 20merge_loop_mask LoopMask &= $1 21stack_rewind 22branch_if_any_lanes_active branch_if_any_lanes_active -15 (label 1 at #5) 23label label 0 24load_loop_mask LoopMask = $0 25store_loop_mask $0 = LoopMask 26label label 0x00000003 27copy_constant $4 = 0 28copy_slot_unmasked $1 = x(2) 29add_imm_float $1 += 0xBE800000 (-0.25) 30copy_slot_masked x(2) = Mask($1) 31store_condition_mask $1 = CondMask 32copy_slot_unmasked $2 = x(3) 33cmpeq_imm_float $2 = equal($2, 0x3F800000 (1.0)) 34merge_condition_mask CondMask = $1 & $2 35continue_op $4 |= Mask(0xFFFFFFFF); LoopMask &= ~(CondMask & LoopMask & RetMask) 36load_condition_mask CondMask = $1 37copy_constant $1 = 0 38copy_slot_masked x(1) = Mask($1) 39reenable_loop_mask LoopMask |= $4 40copy_constant $1 = 0 41copy_slot_unmasked $2 = x(2) 42cmplt_float $1 = lessThan($1, $2) 43merge_loop_mask LoopMask &= $1 44stack_rewind 45branch_if_any_lanes_active branch_if_any_lanes_active -19 (label 3 at #24) 46label label 0x00000002 47load_loop_mask LoopMask = $0 48copy_4_slots_unmasked $0..3 = x 49load_src src.rgba = $0..3 50