1. store_src_rg coords = src.rg 2. init_lane_masks CondMask = LoopMask = RetMask = true 3. copy_constant $0 = colorGreen(0) 4. cast_to_int_from_float $0 = FloatToInt($0) 5. copy_slot_unmasked zero = $0 6. copy_constant $0 = colorGreen(1) 7. cast_to_int_from_float $0 = FloatToInt($0) 8. copy_slot_unmasked one = $0 9. copy_slot_unmasked x = zero 10. store_loop_mask $0 = LoopMask 11. jump jump +61 (label 0 at #72) 12. label label 0x00000001 13. copy_slot_unmasked y = one 14. store_loop_mask $1 = LoopMask 15. jump jump +45 (label 2 at #60) 16. label label 0x00000003 17. copy_slot_unmasked _0_x = x 18. zero_slot_unmasked _1_result = 0 19. store_loop_mask $2 = LoopMask 20. jump jump +10 (label 4 at #30) 21. label label 0x00000005 22. copy_slot_unmasked $3 = _1_result 23. copy_constant $4 = 0x00000001 (1.401298e-45) 24. add_int $3 += $4 25. copy_slot_masked _1_result = Mask($3) 26. copy_slot_unmasked $3 = _0_x 27. copy_slot_unmasked $4 = y 28. sub_int $3 -= $4 29. copy_slot_masked _0_x = Mask($3) 30. label label 0x00000004 31. copy_2_slots_unmasked $3..4 = y, _0_x 32. cmple_int $3 = lessThanEqual($3, $4) 33. merge_loop_mask LoopMask &= $3 34. stack_rewind 35. branch_if_any_active_lanes branch_if_any_active_lanes -14 (label 5 at #21) 36. load_loop_mask LoopMask = $2 37. store_condition_mask $2 = CondMask 38. copy_2_slots_unmasked $3..4 = x, y 39. div_int $3 /= $4 40. copy_slot_unmasked $4 = _1_result 41. cmpne_int $3 = notEqual($3, $4) 42. merge_condition_mask CondMask = $2 & $3 43. copy_constant $4 = 0x3F800000 (1.0) 44. copy_slot_unmasked $5 = x 45. cast_to_float_from_int $5 = IntToFloat($5) 46. copy_constant $6 = 0x3B808081 (0.003921569) 47. mul_float $5 *= $6 48. copy_slot_unmasked $6 = y 49. cast_to_float_from_int $6 = IntToFloat($6) 50. copy_constant $7 = 0x3B808081 (0.003921569) 51. mul_float $6 *= $7 52. copy_constant $7 = 0x3F800000 (1.0) 53. copy_4_slots_masked [main].result = Mask($4..7) 54. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) 55. load_condition_mask CondMask = $2 56. copy_slot_unmasked $2 = y 57. copy_constant $3 = 0x00000001 (1.401298e-45) 58. add_int $2 += $3 59. copy_slot_masked y = Mask($2) 60. label label 0x00000002 61. copy_slot_unmasked $2 = y 62. copy_constant $3 = 0x00000064 (1.401298e-43) 63. cmplt_int $2 = lessThan($2, $3) 64. merge_loop_mask LoopMask &= $2 65. stack_rewind 66. branch_if_any_active_lanes branch_if_any_active_lanes -50 (label 3 at #16) 67. load_loop_mask LoopMask = $1 68. copy_slot_unmasked $1 = x 69. copy_constant $2 = 0x00000001 (1.401298e-45) 70. add_int $1 += $2 71. copy_slot_masked x = Mask($1) 72. label label 0x00000000 73. copy_slot_unmasked $1 = x 74. copy_constant $2 = 0x00000064 (1.401298e-43) 75. cmplt_int $1 = lessThan($1, $2) 76. merge_loop_mask LoopMask &= $1 77. stack_rewind 78. branch_if_any_active_lanes branch_if_any_active_lanes -66 (label 1 at #12) 79. load_loop_mask LoopMask = $0 80. copy_4_constants $0..3 = colorGreen 81. copy_4_slots_masked [main].result = Mask($0..3) 82. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) 83. load_src src.rgba = [main].result