    1. store_src_rg                   v0..1 = src.rg
    2. init_lane_masks                CondMask = LoopMask = RetMask = true
    3. copy_constant                  expected1(0) = 0xC0400000 (-3.0)
    4. copy_constant                  expected1(1) = 0x40C00000 (6.0)
    5. copy_constant                  expected1(2) = 0xC0400000 (-3.0)
    6. copy_constant                  expected2(0) = 0x40C00000 (6.0)
    7. copy_constant                  expected2(1) = 0xC1400000 (-12.0)
    8. copy_constant                  expected2(2) = 0x40C00000 (6.0)
    9. copy_3_constants               $10..12 = testMatrix3x3(0..2)
   10. copy_3_slots_unmasked          $4..6 = $10..12
   11. swizzle_3                      $4..6 = ($4..6).zxy
   12. swizzle_3                      $10..12 = ($10..12).yzx
   13. copy_3_constants               $13..15 = testMatrix3x3(3..5)
   14. copy_3_slots_unmasked          $7..9 = $13..15
   15. swizzle_3                      $7..9 = ($7..9).yzx
   16. mul_3_floats                   $4..6 *= $7..9
   17. swizzle_3                      $13..15 = ($13..15).zxy
   18. mul_3_floats                   $10..12 *= $13..15
   19. copy_3_slots_unmasked          $13..15 = $4..6
   20. sub_3_floats                   $10..12 -= $13..15
   21. copy_3_slots_unmasked          $13..15 = expected1
   22. cmpeq_3_floats                 $10..12 = equal($10..12, $13..15)
   23. bitwise_and_int                $11 &= $12
   24. bitwise_and_int                $10 &= $11
   25. copy_3_constants               $11..13 = testMatrix3x3(6..8)
   26. copy_3_slots_unmasked          $4..6 = $11..13
   27. swizzle_3                      $4..6 = ($4..6).zxy
   28. swizzle_3                      $11..13 = ($11..13).yzx
   29. copy_3_constants               $14..16 = testMatrix3x3(0..2)
   30. copy_3_slots_unmasked          $7..9 = $14..16
   31. swizzle_3                      $7..9 = ($7..9).yzx
   32. mul_3_floats                   $4..6 *= $7..9
   33. swizzle_3                      $14..16 = ($14..16).zxy
   34. mul_3_floats                   $11..13 *= $14..16
   35. copy_3_slots_unmasked          $14..16 = $4..6
   36. sub_3_floats                   $11..13 -= $14..16
   37. copy_3_slots_unmasked          $14..16 = expected2
   38. cmpeq_3_floats                 $11..13 = equal($11..13, $14..16)
   39. bitwise_and_int                $12 &= $13
   40. bitwise_and_int                $11 &= $12
   41. bitwise_and_int                $10 &= $11
   42. branch_if_no_active_lanes_eq   branch +3 (#45) if no lanes of $10 == 0xFFFFFFFF
   43. copy_4_constants               $0..3 = colorGreen
   44. jump                           jump +2 (#46)
   45. copy_4_constants               $0..3 = colorRed
   46. copy_4_slots_unmasked          [main].result = $0..3
   47. load_src                       src.rgba = [main].result
