1. store_src_rg coords = src.rg 2. init_lane_masks CondMask = LoopMask = RetMask = true 3. zero_slot_unmasked constGreen(0) = 0 4. copy_constant constGreen(1) = 0x3F800000 (1.0) 5. zero_slot_unmasked constGreen(2) = 0 6. copy_constant constGreen(3) = 0x3F800000 (1.0) 7. zero_2_slots_unmasked expectedA(0..1) = 0 8. copy_constant expectedA(2) = 0x3F800000 (1.0) 9. copy_constant expectedA(3) = 0x3F800000 (1.0) 10. copy_constant expectedB(0) = 0x3F800000 (1.0) 11. copy_constant expectedB(1) = 0x3F800000 (1.0) 12. zero_2_slots_unmasked expectedB(2..3) = 0 13. copy_constant $0 = 0x3F000000 (0.5) 14. copy_constant $1 = testInputs(0) 15. cmplt_float $0 = lessThan($0, $1) 16. copy_constant $1 = 0x3F800000 (1.0) 17. bitwise_and_int $0 &= $1 18. copy_slot_unmasked $1 = expectedA(0) 19. cmpeq_float $0 = equal($0, $1) 20. copy_constant $1 = 0x3F000000 (0.5) 21. copy_slot_unmasked $2 = $1 22. copy_2_constants $3..4 = testInputs(0..1) 23. cmplt_2_floats $1..2 = lessThan($1..2, $3..4) 24. copy_constant $3 = 0x3F800000 (1.0) 25. copy_slot_unmasked $4 = $3 26. bitwise_and_2_ints $1..2 &= $3..4 27. copy_2_slots_unmasked $3..4 = expectedA(0..1) 28. cmpeq_2_floats $1..2 = equal($1..2, $3..4) 29. bitwise_and_int $1 &= $2 30. bitwise_and_int $0 &= $1 31. copy_constant $1 = 0x3F000000 (0.5) 32. swizzle_3 $1..3 = ($1..3).xxx 33. copy_3_constants $4..6 = testInputs(0..2) 34. cmplt_3_floats $1..3 = lessThan($1..3, $4..6) 35. copy_constant $4 = 0x3F800000 (1.0) 36. swizzle_3 $4..6 = ($4..6).xxx 37. bitwise_and_3_ints $1..3 &= $4..6 38. copy_3_slots_unmasked $4..6 = expectedA(0..2) 39. cmpeq_3_floats $1..3 = equal($1..3, $4..6) 40. bitwise_and_int $2 &= $3 41. bitwise_and_int $1 &= $2 42. bitwise_and_int $0 &= $1 43. copy_constant $1 = 0x3F000000 (0.5) 44. swizzle_4 $1..4 = ($1..4).xxxx 45. copy_4_constants $5..8 = testInputs 46. cmplt_4_floats $1..4 = lessThan($1..4, $5..8) 47. copy_constant $5 = 0x3F800000 (1.0) 48. swizzle_4 $5..8 = ($5..8).xxxx 49. bitwise_and_4_ints $1..4 &= $5..8 50. copy_4_slots_unmasked $5..8 = expectedA 51. cmpeq_4_floats $1..4 = equal($1..4, $5..8) 52. bitwise_and_2_ints $1..2 &= $3..4 53. bitwise_and_int $1 &= $2 54. bitwise_and_int $0 &= $1 55. zero_slot_unmasked $1 = 0 56. copy_slot_unmasked $2 = expectedA(0) 57. cmpeq_float $1 = equal($1, $2) 58. bitwise_and_int $0 &= $1 59. zero_2_slots_unmasked $1..2 = 0 60. copy_2_slots_unmasked $3..4 = expectedA(0..1) 61. cmpeq_2_floats $1..2 = equal($1..2, $3..4) 62. bitwise_and_int $1 &= $2 63. bitwise_and_int $0 &= $1 64. zero_2_slots_unmasked $1..2 = 0 65. copy_constant $3 = 0x3F800000 (1.0) 66. copy_3_slots_unmasked $4..6 = expectedA(0..2) 67. cmpeq_3_floats $1..3 = equal($1..3, $4..6) 68. bitwise_and_int $2 &= $3 69. bitwise_and_int $1 &= $2 70. bitwise_and_int $0 &= $1 71. zero_2_slots_unmasked $1..2 = 0 72. copy_constant $3 = 0x3F800000 (1.0) 73. copy_constant $4 = 0x3F800000 (1.0) 74. copy_4_slots_unmasked $5..8 = expectedA 75. cmpeq_4_floats $1..4 = equal($1..4, $5..8) 76. bitwise_and_2_ints $1..2 &= $3..4 77. bitwise_and_int $1 &= $2 78. bitwise_and_int $0 &= $1 79. copy_constant $1 = testInputs(0) 80. zero_slot_unmasked $2 = 0 81. cmplt_float $1 = lessThan($1, $2) 82. copy_constant $2 = 0x3F800000 (1.0) 83. bitwise_and_int $1 &= $2 84. copy_slot_unmasked $2 = expectedB(0) 85. cmpeq_float $1 = equal($1, $2) 86. bitwise_and_int $0 &= $1 87. copy_2_constants $1..2 = testInputs(0..1) 88. zero_slot_unmasked $3 = 0 89. copy_constant $4 = 0x3F800000 (1.0) 90. cmplt_2_floats $1..2 = lessThan($1..2, $3..4) 91. copy_constant $3 = 0x3F800000 (1.0) 92. copy_slot_unmasked $4 = $3 93. bitwise_and_2_ints $1..2 &= $3..4 94. copy_2_slots_unmasked $3..4 = expectedB(0..1) 95. cmpeq_2_floats $1..2 = equal($1..2, $3..4) 96. bitwise_and_int $1 &= $2 97. bitwise_and_int $0 &= $1 98. copy_3_constants $1..3 = testInputs(0..2) 99. zero_slot_unmasked $4 = 0 100. copy_constant $5 = 0x3F800000 (1.0) 101. zero_slot_unmasked $6 = 0 102. cmplt_3_floats $1..3 = lessThan($1..3, $4..6) 103. copy_constant $4 = 0x3F800000 (1.0) 104. swizzle_3 $4..6 = ($4..6).xxx 105. bitwise_and_3_ints $1..3 &= $4..6 106. copy_3_slots_unmasked $4..6 = expectedB(0..2) 107. cmpeq_3_floats $1..3 = equal($1..3, $4..6) 108. bitwise_and_int $2 &= $3 109. bitwise_and_int $1 &= $2 110. bitwise_and_int $0 &= $1 111. copy_4_constants $1..4 = testInputs 112. copy_4_slots_unmasked $5..8 = constGreen 113. cmplt_4_floats $1..4 = lessThan($1..4, $5..8) 114. copy_constant $5 = 0x3F800000 (1.0) 115. swizzle_4 $5..8 = ($5..8).xxxx 116. bitwise_and_4_ints $1..4 &= $5..8 117. copy_4_slots_unmasked $5..8 = expectedB 118. cmpeq_4_floats $1..4 = equal($1..4, $5..8) 119. bitwise_and_2_ints $1..2 &= $3..4 120. bitwise_and_int $1 &= $2 121. bitwise_and_int $0 &= $1 122. copy_constant $1 = 0x3F800000 (1.0) 123. copy_slot_unmasked $2 = expectedB(0) 124. cmpeq_float $1 = equal($1, $2) 125. bitwise_and_int $0 &= $1 126. copy_constant $1 = 0x3F800000 (1.0) 127. copy_slot_unmasked $2 = $1 128. copy_2_slots_unmasked $3..4 = expectedB(0..1) 129. cmpeq_2_floats $1..2 = equal($1..2, $3..4) 130. bitwise_and_int $1 &= $2 131. bitwise_and_int $0 &= $1 132. copy_constant $1 = 0x3F800000 (1.0) 133. copy_constant $2 = 0x3F800000 (1.0) 134. zero_slot_unmasked $3 = 0 135. copy_3_slots_unmasked $4..6 = expectedB(0..2) 136. cmpeq_3_floats $1..3 = equal($1..3, $4..6) 137. bitwise_and_int $2 &= $3 138. bitwise_and_int $1 &= $2 139. bitwise_and_int $0 &= $1 140. copy_constant $1 = 0x3F800000 (1.0) 141. copy_constant $2 = 0x3F800000 (1.0) 142. zero_2_slots_unmasked $3..4 = 0 143. copy_4_slots_unmasked $5..8 = expectedB 144. cmpeq_4_floats $1..4 = equal($1..4, $5..8) 145. bitwise_and_2_ints $1..2 &= $3..4 146. bitwise_and_int $1 &= $2 147. bitwise_and_int $0 &= $1 148. swizzle_4 $0..3 = ($0..3).xxxx 149. copy_4_constants $4..7 = colorRed 150. copy_4_constants $8..11 = colorGreen 151. mix_4_ints $0..3 = mix($4..7, $8..11, $0..3) 152. copy_4_slots_unmasked [main].result = $0..3 153. load_src src.rgba = [main].result