    1. store_src_rg                   coords = src.rg
    2. init_lane_masks                CondMask = LoopMask = RetMask = true
    3. zero_4_slots_unmasked          result = 0
    4. zero_2_slots_unmasked          a, b = 0
    5. store_loop_mask                $0 = LoopMask
    6. jump                           jump +18 (label 1 at #24)
    7. label                          label 0x00000002
    8. copy_slot_unmasked             $1 = result(0)
    9. copy_slot_unmasked             $2 = a
   10. add_float                      $1 += $2
   11. copy_slot_masked               result(0) = Mask($1)
   12. copy_slot_unmasked             $1 = result(1)
   13. copy_slot_unmasked             $2 = b
   14. add_float                      $1 += $2
   15. copy_slot_masked               result(1) = Mask($1)
   16. copy_slot_unmasked             $1 = a
   17. copy_constant                  $2 = 0x3F800000 (1.0)
   18. add_float                      $1 += $2
   19. copy_slot_masked               a = Mask($1)
   20. copy_slot_unmasked             $1 = b
   21. copy_constant                  $2 = 0x3F800000 (1.0)
   22. add_float                      $1 += $2
   23. copy_slot_masked               b = Mask($1)
   24. label                          label 0x00000001
   25. copy_slot_unmasked             $1 = a
   26. copy_constant                  $2 = 0x41200000 (10.0)
   27. cmplt_float                    $1 = lessThan($1, $2)
   28. copy_slot_unmasked             $2 = b
   29. copy_constant                  $3 = 0x41200000 (10.0)
   30. cmplt_float                    $2 = lessThan($2, $3)
   31. bitwise_and_int                $1 &= $2
   32. merge_loop_mask                LoopMask &= $1
   33. stack_rewind
   34. branch_if_any_lanes_active     branch_if_any_lanes_active -27 (label 2 at #7)
   35. label                          label 0x00000000
   36. load_loop_mask                 LoopMask = $0
   37. zero_slot_unmasked             c = 0
   38. store_loop_mask                $0 = LoopMask
   39. jump                           jump +10 (label 4 at #49)
   40. label                          label 0x00000005
   41. copy_slot_unmasked             $1 = result(2)
   42. copy_constant                  $2 = 0x3F800000 (1.0)
   43. add_float                      $1 += $2
   44. copy_slot_masked               result(2) = Mask($1)
   45. copy_slot_unmasked             $1 = c
   46. copy_constant                  $2 = 0x00000001 (1.401298e-45)
   47. add_int                        $1 += $2
   48. copy_slot_masked               c = Mask($1)
   49. label                          label 0x00000004
   50. copy_slot_unmasked             $1 = c
   51. copy_constant                  $2 = 0x0000000A (1.401298e-44)
   52. cmplt_int                      $1 = lessThan($1, $2)
   53. merge_loop_mask                LoopMask &= $1
   54. stack_rewind
   55. branch_if_any_lanes_active     branch_if_any_lanes_active -15 (label 5 at #40)
   56. label                          label 0x00000003
   57. load_loop_mask                 LoopMask = $0
   58. zero_slot_unmasked             d[0] = 0
   59. copy_constant                  d[1] = 0x41200000 (10.0)
   60. copy_constant                  e[0] = 0x3F800000 (1.0)
   61. copy_constant                  e[1] = 0x40000000 (2.0)
   62. copy_constant                  e[2] = 0x40400000 (3.0)
   63. copy_constant                  e[3] = 0x40800000 (4.0)
   64. copy_constant                  f = 0x41100000 (9.0)
   65. store_loop_mask                $0 = LoopMask
   66. jump                           jump +10 (label 7 at #76)
   67. label                          label 0x00000008
   68. copy_slot_unmasked             $1 = e[0]
   69. copy_slot_unmasked             $2 = f
   70. mul_float                      $1 *= $2
   71. copy_slot_masked               result(3) = Mask($1)
   72. copy_slot_unmasked             $1 = d[0]
   73. copy_constant                  $2 = 0x3F800000 (1.0)
   74. add_float                      $1 += $2
   75. copy_slot_masked               d[0] = Mask($1)
   76. label                          label 0x00000007
   77. copy_2_slots_unmasked          $1..2 = d[0], d[1]
   78. cmplt_float                    $1 = lessThan($1, $2)
   79. merge_loop_mask                LoopMask &= $1
   80. stack_rewind
   81. branch_if_any_lanes_active     branch_if_any_lanes_active -14 (label 8 at #67)
   82. label                          label 0x00000006
   83. load_loop_mask                 LoopMask = $0
   84. store_loop_mask                $0 = LoopMask
   85. jump                           jump +4 (label 10 at #89)
   86. label                          label 0x0000000B
   87. branch_if_all_lanes_active     branch_if_all_lanes_active +5 (label 9 at #92)
   88. mask_off_loop_mask             LoopMask &= ~(CondMask & LoopMask & RetMask)
   89. label                          label 0x0000000A
   90. stack_rewind
   91. branch_if_any_lanes_active     branch_if_any_lanes_active -5 (label 11 at #86)
   92. label                          label 0x00000009
   93. load_loop_mask                 LoopMask = $0
   94. store_loop_mask                $0 = LoopMask
   95. jump                           jump +4 (label 13 at #99)
   96. label                          label 0x0000000E
   97. branch_if_all_lanes_active     branch_if_all_lanes_active +5 (label 12 at #102)
   98. mask_off_loop_mask             LoopMask &= ~(CondMask & LoopMask & RetMask)
   99. label                          label 0x0000000D
  100. stack_rewind
  101. branch_if_any_lanes_active     branch_if_any_lanes_active -5 (label 14 at #96)
  102. label                          label 0x0000000C
  103. load_loop_mask                 LoopMask = $0
  104. copy_4_slots_unmasked          $0..3 = result
  105. load_src                       src.rgba = $0..3
