    1. store_src_rg                   xy = src.rg
    2. init_lane_masks                CondMask = LoopMask = RetMask = true
    3. copy_constant                  expectedPos(0) = 0x3F800000 (1.0)
    4. copy_constant                  expectedPos(1) = 0x40000000 (2.0)
    5. copy_constant                  expectedPos(2) = 0x40400000 (3.0)
    6. copy_constant                  expectedPos(3) = 0x40800000 (4.0)
    7. copy_constant                  expectedNeg(0) = 0xBF800000 (-1.0)
    8. copy_constant                  expectedNeg(1) = 0xC0000000 (-2.0)
    9. copy_constant                  expectedNeg(2) = 0xC0400000 (-3.0)
   10. copy_constant                  expectedNeg(3) = 0xC0800000 (-4.0)
   11. copy_constant                  $0 = N(0)
   12. zero_slot_unmasked             $1 = 0
   13. copy_constant                  $2 = I(0)
   14. copy_constant                  $3 = NRef(0)
   15. mul_float                      $2 *= $3
   16. cmple_float                    $1 = lessThanEqual($1, $2)
   17. copy_constant                  $2 = 0x80000000 (-0.0)
   18. bitwise_and_int                $1 &= $2
   19. bitwise_xor_int                $0 ^= $1
   20. copy_slot_unmasked             $1 = expectedNeg(0)
   21. cmpeq_float                    $0 = equal($0, $1)
   22. copy_2_constants               $1..2 = N(0..1)
   23. zero_slot_unmasked             $3 = 0
   24. copy_2_constants               $4..5 = I(0..1)
   25. copy_2_constants               $6..7 = NRef(0..1)
   26. dot_2_floats                   $4 = dot($4..5, $6..7)
   27. cmple_float                    $3 = lessThanEqual($3, $4)
   28. copy_constant                  $4 = 0x80000000 (-0.0)
   29. bitwise_and_int                $3 &= $4
   30. copy_slot_unmasked             $4 = $3
   31. bitwise_xor_2_ints             $1..2 ^= $3..4
   32. copy_2_slots_unmasked          $3..4 = expectedNeg(0..1)
   33. cmpeq_2_floats                 $1..2 = equal($1..2, $3..4)
   34. bitwise_and_int                $1 &= $2
   35. bitwise_and_int                $0 &= $1
   36. copy_3_constants               $1..3 = N(0..2)
   37. zero_slot_unmasked             $4 = 0
   38. copy_3_constants               $5..7 = I(0..2)
   39. copy_3_constants               $8..10 = NRef(0..2)
   40. dot_3_floats                   $5 = dot($5..7, $8..10)
   41. cmple_float                    $4 = lessThanEqual($4, $5)
   42. copy_constant                  $5 = 0x80000000 (-0.0)
   43. bitwise_and_int                $4 &= $5
   44. swizzle_3                      $4..6 = ($4..6).xxx
   45. bitwise_xor_3_ints             $1..3 ^= $4..6
   46. copy_3_slots_unmasked          $4..6 = expectedPos(0..2)
   47. cmpeq_3_floats                 $1..3 = equal($1..3, $4..6)
   48. bitwise_and_int                $2 &= $3
   49. bitwise_and_int                $1 &= $2
   50. bitwise_and_int                $0 &= $1
   51. copy_4_constants               $1..4 = N
   52. zero_slot_unmasked             $5 = 0
   53. copy_4_constants               $6..9 = I
   54. copy_4_constants               $10..13 = NRef
   55. dot_4_floats                   $6 = dot($6..9, $10..13)
   56. cmple_float                    $5 = lessThanEqual($5, $6)
   57. copy_constant                  $6 = 0x80000000 (-0.0)
   58. bitwise_and_int                $5 &= $6
   59. swizzle_4                      $5..8 = ($5..8).xxxx
   60. bitwise_xor_4_ints             $1..4 ^= $5..8
   61. copy_4_slots_unmasked          $5..8 = expectedPos
   62. cmpeq_4_floats                 $1..4 = equal($1..4, $5..8)
   63. bitwise_and_2_ints             $1..2 &= $3..4
   64. bitwise_and_int                $1 &= $2
   65. bitwise_and_int                $0 &= $1
   66. copy_constant                  $1 = 0xBF800000 (-1.0)
   67. copy_slot_unmasked             $2 = expectedNeg(0)
   68. cmpeq_float                    $1 = equal($1, $2)
   69. bitwise_and_int                $0 &= $1
   70. copy_constant                  $1 = 0xBF800000 (-1.0)
   71. copy_constant                  $2 = 0xC0000000 (-2.0)
   72. copy_2_slots_unmasked          $3..4 = expectedNeg(0..1)
   73. cmpeq_2_floats                 $1..2 = equal($1..2, $3..4)
   74. bitwise_and_int                $1 &= $2
   75. bitwise_and_int                $0 &= $1
   76. copy_constant                  $1 = 0x3F800000 (1.0)
   77. copy_constant                  $2 = 0x40000000 (2.0)
   78. copy_constant                  $3 = 0x40400000 (3.0)
   79. copy_3_slots_unmasked          $4..6 = expectedPos(0..2)
   80. cmpeq_3_floats                 $1..3 = equal($1..3, $4..6)
   81. bitwise_and_int                $2 &= $3
   82. bitwise_and_int                $1 &= $2
   83. bitwise_and_int                $0 &= $1
   84. copy_constant                  $1 = 0x3F800000 (1.0)
   85. copy_constant                  $2 = 0x40000000 (2.0)
   86. copy_constant                  $3 = 0x40400000 (3.0)
   87. copy_constant                  $4 = 0x40800000 (4.0)
   88. copy_4_slots_unmasked          $5..8 = expectedPos
   89. cmpeq_4_floats                 $1..4 = equal($1..4, $5..8)
   90. bitwise_and_2_ints             $1..2 &= $3..4
   91. bitwise_and_int                $1 &= $2
   92. bitwise_and_int                $0 &= $1
   93. swizzle_4                      $0..3 = ($0..3).xxxx
   94. copy_4_constants               $4..7 = colorRed
   95. copy_4_constants               $8..11 = colorGreen
   96. mix_4_ints                     $0..3 = mix($4..7, $8..11, $0..3)
   97. load_src                       src.rgba = $0..3
