blob: 6e3e84cc300661305970cb4f1a6ae1fa75a4103c [file] [log] [blame]
867 instructions
[immutable slots]
i0 = 0
i1 = 0
i2 = 0
i3 = 0
i4 = 0
i5 = 0
i6 = 0
i7 = 0
i8 = 0
i9 = 0
i10 = 0
i11 = 0
i12 = 0
i13 = 0
i14 = 0
i15 = 0
i16 = 0
i17 = 0
i18 = 0
i19 = 0
i20 = 0
i21 = 0
i22 = 0
i23 = 0
i24 = 0
i25 = 0
i26 = 0
i27 = 0
i28 = 0
i29 = 0x3F800000 (1.0)
i30 = 0x3F800000 (1.0)
i31 = 0x3F800000 (1.0)
i32 = 0x3F800000 (1.0)
i33 = 0x3F800000 (1.0)
i34 = 0x3F800000 (1.0)
i35 = 0x3F800000 (1.0)
i36 = 0x3F800000 (1.0)
i37 = 0x3F800000 (1.0)
i38 = 0x3F800000 (1.0)
i39 = 0x3F800000 (1.0)
i40 = 0x3F800000 (1.0)
i41 = 0x3F800000 (1.0)
i42 = 0x3F800000 (1.0)
i43 = 0x3F800000 (1.0)
i44 = 0x3F800000 (1.0)
i45 = 0x3F800000 (1.0)
i46 = 0x3F800000 (1.0)
i47 = 0x3F800000 (1.0)
i48 = 0x3F800000 (1.0)
i49 = 0x3F800000 (1.0)
i50 = 0x3F800000 (1.0)
i51 = 0x3F800000 (1.0)
i52 = 0x3F800000 (1.0)
i53 = 0x3F800000 (1.0)
i54 = 0x3F800000 (1.0)
i55 = 0x3F800000 (1.0)
i56 = 0x3F800000 (1.0)
i57 = 0x3F800000 (1.0)
store_src_rg coords = src.rg
init_lane_masks CondMask = LoopMask = RetMask = true
store_condition_mask $51 = CondMask
store_condition_mask $82 = CondMask
store_condition_mask $98 = CondMask
store_condition_mask $150 = CondMask
store_condition_mask $181 = CondMask
branch_if_no_lanes_active branch_if_no_lanes_active +67 (label 6 at #75)
store_return_mask $182 = RetMask
splat_4_constants m = 0
splat_4_constants mm = 0
copy_4_uniforms $183..186 = testMatrix2x2
copy_4_slots_masked m = Mask($183..186)
copy_4_uniforms $183..186 = testMatrix2x2
copy_4_slots_masked m = Mask($183..186)
store_condition_mask $183 = CondMask
copy_4_slots_unmasked $184..187 = m
copy_4_uniforms $188..191 = testMatrix2x2
cmpne_4_floats $184..187 = notEqual($184..187, $188..191)
bitwise_or_2_ints $184..185 |= $186..187
bitwise_or_int $184 |= $185
merge_condition_mask CondMask = $183 & $184
copy_constant $185 = 0
copy_slot_masked [test_no_op_scalar_X_mat2].result = Mask($185)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $183
copy_4_slots_unmasked $184..187 = m
copy_4_uniforms $188..191 = testMatrix2x2
cmpne_4_floats $184..187 = notEqual($184..187, $188..191)
bitwise_or_2_ints $184..185 |= $186..187
bitwise_or_int $184 |= $185
merge_condition_mask CondMask = $183 & $184
copy_constant $185 = 0
copy_slot_masked [test_no_op_scalar_X_mat2].result = Mask($185)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $183
copy_4_slots_unmasked $184..187 = m
copy_4_uniforms $188..191 = testMatrix2x2
cmpne_4_floats $184..187 = notEqual($184..187, $188..191)
bitwise_or_2_ints $184..185 |= $186..187
bitwise_or_int $184 |= $185
merge_condition_mask CondMask = $183 & $184
copy_constant $185 = 0
copy_slot_masked [test_no_op_scalar_X_mat2].result = Mask($185)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $183
copy_4_slots_unmasked $183..186 = m
splat_4_constants $187..190 = 0x80000000 (-0.0)
bitwise_xor_4_ints $183..186 ^= $187..190
copy_4_slots_masked m = Mask($183..186)
store_condition_mask $183 = CondMask
copy_4_slots_unmasked $184..187 = m
copy_4_uniforms $188..191 = testMatrix2x2
splat_4_constants $192..195 = 0x80000000 (-0.0)
bitwise_xor_4_ints $188..191 ^= $192..195
cmpne_4_floats $184..187 = notEqual($184..187, $188..191)
bitwise_or_2_ints $184..185 |= $186..187
bitwise_or_int $184 |= $185
merge_condition_mask CondMask = $183 & $184
copy_constant $185 = 0
copy_slot_masked [test_no_op_scalar_X_mat2].result = Mask($185)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $183
splat_4_constants $183..186 = 0
copy_4_slots_masked mm = Mask($183..186)
splat_4_constants $183..186 = 0
copy_4_slots_masked mm = Mask($183..186)
splat_4_constants $187..190 = 0
cmpeq_4_floats $183..186 = equal($183..186, $187..190)
bitwise_and_2_ints $183..184 &= $185..186
bitwise_and_int $183 &= $184
copy_slot_masked [test_no_op_scalar_X_mat2].result = Mask($183)
load_return_mask RetMask = $182
copy_slot_unmasked $182 = [test_no_op_scalar_X_mat2].result
label label 0x00000006
copy_constant $151 = 0
merge_condition_mask CondMask = $181 & $182
branch_if_no_lanes_active branch_if_no_lanes_active +124 (label 5 at #202)
store_return_mask $152 = RetMask
splat_4_constants m₁(0..3) = 0
splat_4_constants m₁(4..7) = 0
splat_4_constants m₁(8), mm₁(0..2) = 0
splat_4_constants mm₁(3..6) = 0
splat_2_constants mm₁(7..8) = 0
copy_4_uniforms $153..156 = testMatrix3x3(0..3)
copy_4_uniforms $157..160 = testMatrix3x3(4..7)
copy_uniform $161 = testMatrix3x3(8)
copy_4_slots_masked m₁(0..3) = Mask($153..156)
copy_4_slots_masked m₁(4..7) = Mask($157..160)
copy_slot_masked m₁(8) = Mask($161)
copy_4_uniforms $153..156 = testMatrix3x3(0..3)
copy_4_uniforms $157..160 = testMatrix3x3(4..7)
copy_uniform $161 = testMatrix3x3(8)
copy_4_slots_masked m₁(0..3) = Mask($153..156)
copy_4_slots_masked m₁(4..7) = Mask($157..160)
copy_slot_masked m₁(8) = Mask($161)
store_condition_mask $153 = CondMask
copy_4_slots_unmasked $154..157 = m₁(0..3)
copy_4_slots_unmasked $158..161 = m₁(4..7)
copy_slot_unmasked $162 = m₁(8)
copy_4_uniforms $163..166 = testMatrix3x3(0..3)
copy_4_uniforms $167..170 = testMatrix3x3(4..7)
copy_uniform $171 = testMatrix3x3(8)
cmpne_n_floats $154..162 = notEqual($154..162, $163..171)
bitwise_or_4_ints $155..158 |= $159..162
bitwise_or_2_ints $155..156 |= $157..158
bitwise_or_int $155 |= $156
bitwise_or_int $154 |= $155
merge_condition_mask CondMask = $153 & $154
copy_constant $155 = 0
copy_slot_masked [test_no_op_scalar_X_mat3].result = Mask($155)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $153
copy_4_slots_unmasked $154..157 = m₁(0..3)
copy_4_slots_unmasked $158..161 = m₁(4..7)
copy_slot_unmasked $162 = m₁(8)
copy_4_uniforms $163..166 = testMatrix3x3(0..3)
copy_4_uniforms $167..170 = testMatrix3x3(4..7)
copy_uniform $171 = testMatrix3x3(8)
cmpne_n_floats $154..162 = notEqual($154..162, $163..171)
bitwise_or_4_ints $155..158 |= $159..162
bitwise_or_2_ints $155..156 |= $157..158
bitwise_or_int $155 |= $156
bitwise_or_int $154 |= $155
merge_condition_mask CondMask = $153 & $154
copy_constant $155 = 0
copy_slot_masked [test_no_op_scalar_X_mat3].result = Mask($155)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $153
copy_4_slots_unmasked $154..157 = m₁(0..3)
copy_4_slots_unmasked $158..161 = m₁(4..7)
copy_slot_unmasked $162 = m₁(8)
copy_4_uniforms $163..166 = testMatrix3x3(0..3)
copy_4_uniforms $167..170 = testMatrix3x3(4..7)
copy_uniform $171 = testMatrix3x3(8)
cmpne_n_floats $154..162 = notEqual($154..162, $163..171)
bitwise_or_4_ints $155..158 |= $159..162
bitwise_or_2_ints $155..156 |= $157..158
bitwise_or_int $155 |= $156
bitwise_or_int $154 |= $155
merge_condition_mask CondMask = $153 & $154
copy_constant $155 = 0
copy_slot_masked [test_no_op_scalar_X_mat3].result = Mask($155)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $153
copy_4_slots_unmasked $153..156 = m₁(0..3)
copy_4_slots_unmasked $157..160 = m₁(4..7)
copy_slot_unmasked $161 = m₁(8)
splat_4_constants $162..165 = 0x80000000 (-0.0)
splat_4_constants $166..169 = 0x80000000 (-0.0)
copy_constant $170 = 0x80000000 (-0.0)
bitwise_xor_n_ints $153..161 ^= $162..170
copy_4_slots_masked m₁(0..3) = Mask($153..156)
copy_4_slots_masked m₁(4..7) = Mask($157..160)
copy_slot_masked m₁(8) = Mask($161)
store_condition_mask $153 = CondMask
copy_4_slots_unmasked $154..157 = m₁(0..3)
copy_4_slots_unmasked $158..161 = m₁(4..7)
copy_slot_unmasked $162 = m₁(8)
copy_4_uniforms $163..166 = testMatrix3x3(0..3)
copy_4_uniforms $167..170 = testMatrix3x3(4..7)
copy_uniform $171 = testMatrix3x3(8)
splat_4_constants $172..175 = 0x80000000 (-0.0)
splat_4_constants $176..179 = 0x80000000 (-0.0)
copy_constant $180 = 0x80000000 (-0.0)
bitwise_xor_n_ints $163..171 ^= $172..180
cmpne_n_floats $154..162 = notEqual($154..162, $163..171)
bitwise_or_4_ints $155..158 |= $159..162
bitwise_or_2_ints $155..156 |= $157..158
bitwise_or_int $155 |= $156
bitwise_or_int $154 |= $155
merge_condition_mask CondMask = $153 & $154
copy_constant $155 = 0
copy_slot_masked [test_no_op_scalar_X_mat3].result = Mask($155)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $153
splat_4_constants $153..156 = 0
splat_4_constants $157..160 = 0
copy_constant $161 = 0
copy_4_slots_masked mm₁(0..3) = Mask($153..156)
copy_4_slots_masked mm₁(4..7) = Mask($157..160)
copy_slot_masked mm₁(8) = Mask($161)
splat_4_constants $153..156 = 0
splat_4_constants $157..160 = 0
copy_constant $161 = 0
copy_4_slots_masked mm₁(0..3) = Mask($153..156)
copy_4_slots_masked mm₁(4..7) = Mask($157..160)
copy_slot_masked mm₁(8) = Mask($161)
splat_4_constants $162..165 = 0
splat_4_constants $166..169 = 0
copy_constant $170 = 0
cmpeq_n_floats $153..161 = equal($153..161, $162..170)
bitwise_and_4_ints $154..157 &= $158..161
bitwise_and_2_ints $154..155 &= $156..157
bitwise_and_int $154 &= $155
bitwise_and_int $153 &= $154
copy_slot_masked [test_no_op_scalar_X_mat3].result = Mask($153)
load_return_mask RetMask = $152
copy_slot_unmasked $152 = [test_no_op_scalar_X_mat3].result
label label 0x00000007
copy_slot_masked $151 = Mask($152)
label label 0x00000005
load_condition_mask CondMask = $181
copy_constant $99 = 0
merge_condition_mask CondMask = $150 & $151
branch_if_no_lanes_active branch_if_no_lanes_active +157 (label 4 at #363)
store_return_mask $100 = RetMask
copy_4_uniforms testMatrix4x4(0..3) = testInputs
copy_4_uniforms testMatrix4x4(4..7) = testInputs
copy_4_uniforms testMatrix4x4(8..11) = testInputs
copy_4_uniforms testMatrix4x4(12..15) = testInputs
splat_4_constants m₂(0..3) = 0
splat_4_constants m₂(4..7) = 0
splat_4_constants m₂(8..11) = 0
splat_4_constants m₂(12..15) = 0
splat_4_constants mm₂(0..3) = 0
splat_4_constants mm₂(4..7) = 0
splat_4_constants mm₂(8..11) = 0
splat_4_constants mm₂(12..15) = 0
copy_4_slots_unmasked $101..104 = testMatrix4x4(0..3)
copy_4_slots_unmasked $105..108 = testMatrix4x4(4..7)
copy_4_slots_unmasked $109..112 = testMatrix4x4(8..11)
copy_4_slots_unmasked $113..116 = testMatrix4x4(12..15)
copy_4_slots_masked m₂(0..3) = Mask($101..104)
copy_4_slots_masked m₂(4..7) = Mask($105..108)
copy_4_slots_masked m₂(8..11) = Mask($109..112)
copy_4_slots_masked m₂(12..15) = Mask($113..116)
copy_4_slots_unmasked $101..104 = testMatrix4x4(0..3)
copy_4_slots_unmasked $105..108 = testMatrix4x4(4..7)
copy_4_slots_unmasked $109..112 = testMatrix4x4(8..11)
copy_4_slots_unmasked $113..116 = testMatrix4x4(12..15)
copy_4_slots_masked m₂(0..3) = Mask($101..104)
copy_4_slots_masked m₂(4..7) = Mask($105..108)
copy_4_slots_masked m₂(8..11) = Mask($109..112)
copy_4_slots_masked m₂(12..15) = Mask($113..116)
store_condition_mask $101 = CondMask
copy_4_slots_unmasked $102..105 = m₂(0..3)
copy_4_slots_unmasked $106..109 = m₂(4..7)
copy_4_slots_unmasked $110..113 = m₂(8..11)
copy_4_slots_unmasked $114..117 = m₂(12..15)
copy_4_slots_unmasked $118..121 = testMatrix4x4(0..3)
copy_4_slots_unmasked $122..125 = testMatrix4x4(4..7)
copy_4_slots_unmasked $126..129 = testMatrix4x4(8..11)
copy_4_slots_unmasked $130..133 = testMatrix4x4(12..15)
cmpne_n_floats $102..117 = notEqual($102..117, $118..133)
bitwise_or_4_ints $110..113 |= $114..117
bitwise_or_4_ints $106..109 |= $110..113
bitwise_or_4_ints $102..105 |= $106..109
bitwise_or_2_ints $102..103 |= $104..105
bitwise_or_int $102 |= $103
merge_condition_mask CondMask = $101 & $102
copy_constant $103 = 0
copy_slot_masked [test_no_op_scalar_X_mat4].result = Mask($103)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $101
copy_4_slots_unmasked $102..105 = m₂(0..3)
copy_4_slots_unmasked $106..109 = m₂(4..7)
copy_4_slots_unmasked $110..113 = m₂(8..11)
copy_4_slots_unmasked $114..117 = m₂(12..15)
copy_4_slots_unmasked $118..121 = testMatrix4x4(0..3)
copy_4_slots_unmasked $122..125 = testMatrix4x4(4..7)
copy_4_slots_unmasked $126..129 = testMatrix4x4(8..11)
copy_4_slots_unmasked $130..133 = testMatrix4x4(12..15)
cmpne_n_floats $102..117 = notEqual($102..117, $118..133)
bitwise_or_4_ints $110..113 |= $114..117
bitwise_or_4_ints $106..109 |= $110..113
bitwise_or_4_ints $102..105 |= $106..109
bitwise_or_2_ints $102..103 |= $104..105
bitwise_or_int $102 |= $103
merge_condition_mask CondMask = $101 & $102
copy_constant $103 = 0
copy_slot_masked [test_no_op_scalar_X_mat4].result = Mask($103)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $101
copy_4_slots_unmasked $102..105 = m₂(0..3)
copy_4_slots_unmasked $106..109 = m₂(4..7)
copy_4_slots_unmasked $110..113 = m₂(8..11)
copy_4_slots_unmasked $114..117 = m₂(12..15)
copy_4_slots_unmasked $118..121 = testMatrix4x4(0..3)
copy_4_slots_unmasked $122..125 = testMatrix4x4(4..7)
copy_4_slots_unmasked $126..129 = testMatrix4x4(8..11)
copy_4_slots_unmasked $130..133 = testMatrix4x4(12..15)
cmpne_n_floats $102..117 = notEqual($102..117, $118..133)
bitwise_or_4_ints $110..113 |= $114..117
bitwise_or_4_ints $106..109 |= $110..113
bitwise_or_4_ints $102..105 |= $106..109
bitwise_or_2_ints $102..103 |= $104..105
bitwise_or_int $102 |= $103
merge_condition_mask CondMask = $101 & $102
copy_constant $103 = 0
copy_slot_masked [test_no_op_scalar_X_mat4].result = Mask($103)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $101
copy_4_slots_unmasked $101..104 = m₂(0..3)
copy_4_slots_unmasked $105..108 = m₂(4..7)
copy_4_slots_unmasked $109..112 = m₂(8..11)
copy_4_slots_unmasked $113..116 = m₂(12..15)
splat_4_constants $117..120 = 0x80000000 (-0.0)
splat_4_constants $121..124 = 0x80000000 (-0.0)
splat_4_constants $125..128 = 0x80000000 (-0.0)
splat_4_constants $129..132 = 0x80000000 (-0.0)
bitwise_xor_n_ints $101..116 ^= $117..132
copy_4_slots_masked m₂(0..3) = Mask($101..104)
copy_4_slots_masked m₂(4..7) = Mask($105..108)
copy_4_slots_masked m₂(8..11) = Mask($109..112)
copy_4_slots_masked m₂(12..15) = Mask($113..116)
store_condition_mask $101 = CondMask
copy_4_slots_unmasked $102..105 = m₂(0..3)
copy_4_slots_unmasked $106..109 = m₂(4..7)
copy_4_slots_unmasked $110..113 = m₂(8..11)
copy_4_slots_unmasked $114..117 = m₂(12..15)
copy_4_slots_unmasked $118..121 = testMatrix4x4(0..3)
copy_4_slots_unmasked $122..125 = testMatrix4x4(4..7)
copy_4_slots_unmasked $126..129 = testMatrix4x4(8..11)
copy_4_slots_unmasked $130..133 = testMatrix4x4(12..15)
splat_4_constants $134..137 = 0x80000000 (-0.0)
splat_4_constants $138..141 = 0x80000000 (-0.0)
splat_4_constants $142..145 = 0x80000000 (-0.0)
splat_4_constants $146..149 = 0x80000000 (-0.0)
bitwise_xor_n_ints $118..133 ^= $134..149
cmpne_n_floats $102..117 = notEqual($102..117, $118..133)
bitwise_or_4_ints $110..113 |= $114..117
bitwise_or_4_ints $106..109 |= $110..113
bitwise_or_4_ints $102..105 |= $106..109
bitwise_or_2_ints $102..103 |= $104..105
bitwise_or_int $102 |= $103
merge_condition_mask CondMask = $101 & $102
copy_constant $103 = 0
copy_slot_masked [test_no_op_scalar_X_mat4].result = Mask($103)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $101
splat_4_constants $101..104 = 0
splat_4_constants $105..108 = 0
splat_4_constants $109..112 = 0
splat_4_constants $113..116 = 0
copy_4_slots_masked mm₂(0..3) = Mask($101..104)
copy_4_slots_masked mm₂(4..7) = Mask($105..108)
copy_4_slots_masked mm₂(8..11) = Mask($109..112)
copy_4_slots_masked mm₂(12..15) = Mask($113..116)
splat_4_constants $101..104 = 0
splat_4_constants $105..108 = 0
splat_4_constants $109..112 = 0
splat_4_constants $113..116 = 0
copy_4_slots_masked mm₂(0..3) = Mask($101..104)
copy_4_slots_masked mm₂(4..7) = Mask($105..108)
copy_4_slots_masked mm₂(8..11) = Mask($109..112)
copy_4_slots_masked mm₂(12..15) = Mask($113..116)
splat_4_constants $117..120 = 0
splat_4_constants $121..124 = 0
splat_4_constants $125..128 = 0
splat_4_constants $129..132 = 0
cmpeq_n_floats $101..116 = equal($101..116, $117..132)
bitwise_and_4_ints $109..112 &= $113..116
bitwise_and_4_ints $105..108 &= $109..112
bitwise_and_4_ints $101..104 &= $105..108
bitwise_and_2_ints $101..102 &= $103..104
bitwise_and_int $101 &= $102
copy_slot_masked [test_no_op_scalar_X_mat4].result = Mask($101)
load_return_mask RetMask = $100
copy_slot_unmasked $100 = [test_no_op_scalar_X_mat4].result
label label 0x00000008
copy_slot_masked $99 = Mask($100)
label label 0x00000004
load_condition_mask CondMask = $150
copy_constant $83 = 0
merge_condition_mask CondMask = $98 & $99
branch_if_no_lanes_active branch_if_no_lanes_active +108 (label 3 at #475)
store_return_mask $84 = RetMask
splat_4_constants m = 0
splat_4_constants mm = 0
copy_uniform scalar = testInputs(0)
copy_constant $85 = 0
copy_slot_unmasked $86 = scalar
swizzle_4 $85..88 = ($85..88).yxxy
copy_4_slots_masked m = Mask($85..88)
copy_constant $85 = 0
copy_slot_unmasked $86 = scalar
swizzle_4 $85..88 = ($85..88).yxxy
copy_4_slots_masked m = Mask($85..88)
store_condition_mask $85 = CondMask
copy_4_slots_unmasked $86..89 = m
copy_constant $90 = 0
copy_slot_unmasked $91 = scalar
swizzle_4 $90..93 = ($90..93).yxxy
cmpne_4_floats $86..89 = notEqual($86..89, $90..93)
bitwise_or_2_ints $86..87 |= $88..89
bitwise_or_int $86 |= $87
merge_condition_mask CondMask = $85 & $86
copy_constant $87 = 0
copy_slot_masked [test_no_op_mat2_X_scalar].result = Mask($87)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $85
copy_slot_unmasked $85 = scalar
swizzle_4 $85..88 = ($85..88).xxxx
splat_4_constants $89..92 = 0x3F800000 (1.0)
div_4_floats $85..88 /= $89..92
copy_4_slots_masked m = Mask($85..88)
store_condition_mask $85 = CondMask
copy_4_slots_unmasked $86..89 = m
copy_slot_unmasked $90 = scalar
copy_slot_unmasked $91 = scalar
copy_slot_unmasked $92 = scalar
copy_slot_unmasked $93 = scalar
cmpne_4_floats $86..89 = notEqual($86..89, $90..93)
bitwise_or_2_ints $86..87 |= $88..89
bitwise_or_int $86 |= $87
merge_condition_mask CondMask = $85 & $86
copy_constant $87 = 0
copy_slot_masked [test_no_op_mat2_X_scalar].result = Mask($87)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $85
copy_slot_unmasked $85 = scalar
swizzle_4 $85..88 = ($85..88).xxxx
splat_4_constants $89..92 = 0
add_4_floats $85..88 += $89..92
copy_4_slots_masked m = Mask($85..88)
splat_4_constants $85..88 = 0
copy_slot_unmasked $89 = scalar
swizzle_4 $89..92 = ($89..92).xxxx
add_4_floats $85..88 += $89..92
copy_4_slots_masked m = Mask($85..88)
store_condition_mask $85 = CondMask
copy_4_slots_unmasked $86..89 = m
copy_slot_unmasked $90 = scalar
copy_slot_unmasked $91 = scalar
copy_slot_unmasked $92 = scalar
copy_slot_unmasked $93 = scalar
cmpne_4_floats $86..89 = notEqual($86..89, $90..93)
bitwise_or_2_ints $86..87 |= $88..89
bitwise_or_int $86 |= $87
merge_condition_mask CondMask = $85 & $86
copy_constant $87 = 0
copy_slot_masked [test_no_op_mat2_X_scalar].result = Mask($87)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $85
copy_slot_unmasked $85 = scalar
swizzle_4 $85..88 = ($85..88).xxxx
splat_4_constants $89..92 = 0
sub_4_floats $85..88 -= $89..92
copy_4_slots_masked m = Mask($85..88)
splat_4_constants $85..88 = 0
copy_slot_unmasked $89 = scalar
swizzle_4 $89..92 = ($89..92).xxxx
sub_4_floats $85..88 -= $89..92
copy_4_slots_masked m = Mask($85..88)
store_condition_mask $85 = CondMask
copy_4_slots_unmasked $86..89 = m
copy_slot_unmasked $90 = scalar
copy_slot_unmasked $91 = scalar
copy_slot_unmasked $92 = scalar
copy_slot_unmasked $93 = scalar
splat_4_constants $94..97 = 0x80000000 (-0.0)
bitwise_xor_4_ints $90..93 ^= $94..97
cmpne_4_floats $86..89 = notEqual($86..89, $90..93)
bitwise_or_2_ints $86..87 |= $88..89
bitwise_or_int $86 |= $87
merge_condition_mask CondMask = $85 & $86
copy_constant $87 = 0
copy_slot_masked [test_no_op_mat2_X_scalar].result = Mask($87)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $85
splat_4_constants $85..88 = 0
copy_4_slots_masked mm = Mask($85..88)
splat_4_constants $85..88 = 0
copy_4_slots_masked mm = Mask($85..88)
splat_4_constants $89..92 = 0
cmpeq_4_floats $85..88 = equal($85..88, $89..92)
bitwise_and_2_ints $85..86 &= $87..88
bitwise_and_int $85 &= $86
copy_slot_masked [test_no_op_mat2_X_scalar].result = Mask($85)
load_return_mask RetMask = $84
copy_slot_unmasked $84 = [test_no_op_mat2_X_scalar].result
label label 0x00000009
copy_slot_masked $83 = Mask($84)
label label 0x00000003
load_condition_mask CondMask = $98
copy_constant $52 = 0
merge_condition_mask CondMask = $82 & $83
branch_if_no_lanes_active branch_if_no_lanes_active +176 (label 2 at #655)
store_return_mask $53 = RetMask
splat_4_constants m₄(0..3) = 0
splat_4_constants m₄(4..7) = 0
splat_4_constants m₄(8), mm₄(0..2) = 0
splat_4_constants mm₄(3..6) = 0
splat_2_constants mm₄(7..8) = 0
copy_uniform scalar = testInputs(0)
copy_slot_unmasked $54 = scalar
swizzle_3 $54..56 = ($54..56).xxx
copy_3_slots_unmasked scalar3 = $54..56
copy_constant $54 = 0
copy_slot_unmasked $55 = scalar
shuffle $54..62 = ($54..62)[1 0 0 0 1 0 0 0 1]
copy_4_slots_masked m₄(0..3) = Mask($54..57)
copy_4_slots_masked m₄(4..7) = Mask($58..61)
copy_slot_masked m₄(8) = Mask($62)
copy_constant $54 = 0
copy_slot_unmasked $55 = scalar
shuffle $54..62 = ($54..62)[1 0 0 0 1 0 0 0 1]
copy_4_slots_masked m₄(0..3) = Mask($54..57)
copy_4_slots_masked m₄(4..7) = Mask($58..61)
copy_slot_masked m₄(8) = Mask($62)
stack_rewind
store_condition_mask $54 = CondMask
copy_4_slots_unmasked $55..58 = m₄(0..3)
copy_4_slots_unmasked $59..62 = m₄(4..7)
copy_slot_unmasked $63 = m₄(8)
copy_constant $64 = 0
copy_slot_unmasked $65 = scalar
shuffle $64..72 = ($64..72)[1 0 0 0 1 0 0 0 1]
cmpne_n_floats $55..63 = notEqual($55..63, $64..72)
bitwise_or_4_ints $56..59 |= $60..63
bitwise_or_2_ints $56..57 |= $58..59
bitwise_or_int $56 |= $57
bitwise_or_int $55 |= $56
merge_condition_mask CondMask = $54 & $55
copy_constant $56 = 0
copy_slot_masked [test_no_op_mat3_X_scalar].result = Mask($56)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $54
copy_slot_unmasked $54 = scalar
swizzle_4 $54..57 = ($54..57).xxxx
copy_4_slots_unmasked $58..61 = $54..57
copy_slot_unmasked $62 = $61
splat_4_constants $63..66 = 0x3F800000 (1.0)
splat_4_constants $67..70 = 0x3F800000 (1.0)
copy_constant $71 = 0x3F800000 (1.0)
div_n_floats $54..62 /= $63..71
copy_4_slots_masked m₄(0..3) = Mask($54..57)
copy_4_slots_masked m₄(4..7) = Mask($58..61)
copy_slot_masked m₄(8) = Mask($62)
store_condition_mask $54 = CondMask
copy_4_slots_unmasked $55..58 = m₄(0..3)
copy_4_slots_unmasked $59..62 = m₄(4..7)
copy_slot_unmasked $63 = m₄(8)
copy_3_slots_unmasked $64..66 = scalar3
copy_3_slots_unmasked $67..69 = scalar3
copy_3_slots_unmasked $70..72 = scalar3
cmpne_n_floats $55..63 = notEqual($55..63, $64..72)
bitwise_or_4_ints $56..59 |= $60..63
bitwise_or_2_ints $56..57 |= $58..59
bitwise_or_int $56 |= $57
bitwise_or_int $55 |= $56
merge_condition_mask CondMask = $54 & $55
copy_constant $56 = 0
copy_slot_masked [test_no_op_mat3_X_scalar].result = Mask($56)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $54
copy_slot_unmasked $54 = scalar
swizzle_4 $54..57 = ($54..57).xxxx
copy_4_slots_unmasked $58..61 = $54..57
copy_slot_unmasked $62 = $61
splat_4_constants $63..66 = 0
splat_4_constants $67..70 = 0
copy_constant $71 = 0
add_n_floats $54..62 += $63..71
copy_4_slots_masked m₄(0..3) = Mask($54..57)
copy_4_slots_masked m₄(4..7) = Mask($58..61)
copy_slot_masked m₄(8) = Mask($62)
splat_4_constants $54..57 = 0
splat_4_constants $58..61 = 0
copy_constant $62 = 0
copy_slot_unmasked $63 = scalar
swizzle_4 $63..66 = ($63..66).xxxx
copy_4_slots_unmasked $67..70 = $63..66
copy_slot_unmasked $71 = $70
add_n_floats $54..62 += $63..71
copy_4_slots_masked m₄(0..3) = Mask($54..57)
copy_4_slots_masked m₄(4..7) = Mask($58..61)
copy_slot_masked m₄(8) = Mask($62)
store_condition_mask $54 = CondMask
copy_4_slots_unmasked $55..58 = m₄(0..3)
copy_4_slots_unmasked $59..62 = m₄(4..7)
copy_slot_unmasked $63 = m₄(8)
copy_3_slots_unmasked $64..66 = scalar3
copy_3_slots_unmasked $67..69 = scalar3
copy_3_slots_unmasked $70..72 = scalar3
cmpne_n_floats $55..63 = notEqual($55..63, $64..72)
bitwise_or_4_ints $56..59 |= $60..63
bitwise_or_2_ints $56..57 |= $58..59
bitwise_or_int $56 |= $57
bitwise_or_int $55 |= $56
merge_condition_mask CondMask = $54 & $55
copy_constant $56 = 0
copy_slot_masked [test_no_op_mat3_X_scalar].result = Mask($56)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $54
copy_slot_unmasked $54 = scalar
swizzle_4 $54..57 = ($54..57).xxxx
copy_4_slots_unmasked $58..61 = $54..57
copy_slot_unmasked $62 = $61
splat_4_constants $63..66 = 0
splat_4_constants $67..70 = 0
copy_constant $71 = 0
sub_n_floats $54..62 -= $63..71
copy_4_slots_masked m₄(0..3) = Mask($54..57)
copy_4_slots_masked m₄(4..7) = Mask($58..61)
copy_slot_masked m₄(8) = Mask($62)
splat_4_constants $54..57 = 0
splat_4_constants $58..61 = 0
copy_constant $62 = 0
copy_slot_unmasked $63 = scalar
swizzle_4 $63..66 = ($63..66).xxxx
copy_4_slots_unmasked $67..70 = $63..66
copy_slot_unmasked $71 = $70
sub_n_floats $54..62 -= $63..71
copy_4_slots_masked m₄(0..3) = Mask($54..57)
copy_4_slots_masked m₄(4..7) = Mask($58..61)
copy_slot_masked m₄(8) = Mask($62)
store_condition_mask $54 = CondMask
copy_4_slots_unmasked $55..58 = m₄(0..3)
copy_4_slots_unmasked $59..62 = m₄(4..7)
copy_slot_unmasked $63 = m₄(8)
copy_3_slots_unmasked $64..66 = scalar3
copy_3_slots_unmasked $67..69 = scalar3
copy_3_slots_unmasked $70..72 = scalar3
splat_4_constants $73..76 = 0x80000000 (-0.0)
splat_4_constants $77..80 = 0x80000000 (-0.0)
copy_constant $81 = 0x80000000 (-0.0)
bitwise_xor_n_ints $64..72 ^= $73..81
cmpne_n_floats $55..63 = notEqual($55..63, $64..72)
bitwise_or_4_ints $56..59 |= $60..63
bitwise_or_2_ints $56..57 |= $58..59
bitwise_or_int $56 |= $57
bitwise_or_int $55 |= $56
merge_condition_mask CondMask = $54 & $55
copy_constant $56 = 0
copy_slot_masked [test_no_op_mat3_X_scalar].result = Mask($56)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $54
splat_4_constants $54..57 = 0
splat_4_constants $58..61 = 0
copy_constant $62 = 0
copy_4_slots_masked mm₄(0..3) = Mask($54..57)
copy_4_slots_masked mm₄(4..7) = Mask($58..61)
copy_slot_masked mm₄(8) = Mask($62)
splat_4_constants $54..57 = 0
splat_4_constants $58..61 = 0
copy_constant $62 = 0
copy_4_slots_masked mm₄(0..3) = Mask($54..57)
copy_4_slots_masked mm₄(4..7) = Mask($58..61)
copy_slot_masked mm₄(8) = Mask($62)
splat_4_constants $63..66 = 0
splat_4_constants $67..70 = 0
copy_constant $71 = 0
cmpeq_n_floats $54..62 = equal($54..62, $63..71)
bitwise_and_4_ints $55..58 &= $59..62
bitwise_and_2_ints $55..56 &= $57..58
bitwise_and_int $55 &= $56
bitwise_and_int $54 &= $55
copy_slot_masked [test_no_op_mat3_X_scalar].result = Mask($54)
load_return_mask RetMask = $53
copy_slot_unmasked $53 = [test_no_op_mat3_X_scalar].result
label label 0x0000000A
copy_slot_masked $52 = Mask($53)
label label 0x00000002
load_condition_mask CondMask = $82
copy_constant $0 = 0
merge_condition_mask CondMask = $51 & $52
branch_if_no_lanes_active branch_if_no_lanes_active +213 (label 1 at #872)
store_return_mask $1 = RetMask
splat_4_constants m₅(0..3) = 0
splat_4_constants m₅(4..7) = 0
splat_4_constants m₅(8..11) = 0
splat_4_constants m₅(12..15) = 0
splat_4_constants mm₅(0..3) = 0
splat_4_constants mm₅(4..7) = 0
splat_4_constants mm₅(8..11) = 0
splat_4_constants mm₅(12..15) = 0
copy_uniform scalar = testInputs(0)
copy_slot_unmasked $2 = scalar
swizzle_4 $2..5 = ($2..5).xxxx
copy_4_slots_unmasked scalar4 = $2..5
copy_constant $2 = 0
copy_slot_unmasked $3 = scalar
shuffle $2..17 = ($2..17)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
copy_4_slots_masked m₅(0..3) = Mask($2..5)
copy_4_slots_masked m₅(4..7) = Mask($6..9)
copy_4_slots_masked m₅(8..11) = Mask($10..13)
copy_4_slots_masked m₅(12..15) = Mask($14..17)
copy_constant $2 = 0
copy_slot_unmasked $3 = scalar
shuffle $2..17 = ($2..17)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
copy_4_slots_masked m₅(0..3) = Mask($2..5)
copy_4_slots_masked m₅(4..7) = Mask($6..9)
copy_4_slots_masked m₅(8..11) = Mask($10..13)
copy_4_slots_masked m₅(12..15) = Mask($14..17)
store_condition_mask $2 = CondMask
copy_4_slots_unmasked $3..6 = m₅(0..3)
copy_4_slots_unmasked $7..10 = m₅(4..7)
copy_4_slots_unmasked $11..14 = m₅(8..11)
copy_4_slots_unmasked $15..18 = m₅(12..15)
copy_constant $19 = 0
copy_slot_unmasked $20 = scalar
shuffle $19..34 = ($19..34)[1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
cmpne_n_floats $3..18 = notEqual($3..18, $19..34)
bitwise_or_4_ints $11..14 |= $15..18
bitwise_or_4_ints $7..10 |= $11..14
bitwise_or_4_ints $3..6 |= $7..10
bitwise_or_2_ints $3..4 |= $5..6
bitwise_or_int $3 |= $4
merge_condition_mask CondMask = $2 & $3
copy_constant $4 = 0
copy_slot_masked [test_no_op_mat4_X_scalar].result = Mask($4)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $2
copy_slot_unmasked $2 = scalar
swizzle_4 $2..5 = ($2..5).xxxx
copy_4_slots_unmasked $6..9 = $2..5
copy_4_slots_unmasked $10..13 = $6..9
copy_4_slots_unmasked $14..17 = $10..13
splat_4_constants $18..21 = 0x3F800000 (1.0)
splat_4_constants $22..25 = 0x3F800000 (1.0)
splat_4_constants $26..29 = 0x3F800000 (1.0)
splat_4_constants $30..33 = 0x3F800000 (1.0)
div_n_floats $2..17 /= $18..33
copy_4_slots_masked m₅(0..3) = Mask($2..5)
copy_4_slots_masked m₅(4..7) = Mask($6..9)
copy_4_slots_masked m₅(8..11) = Mask($10..13)
copy_4_slots_masked m₅(12..15) = Mask($14..17)
store_condition_mask $2 = CondMask
copy_4_slots_unmasked $3..6 = m₅(0..3)
copy_4_slots_unmasked $7..10 = m₅(4..7)
copy_4_slots_unmasked $11..14 = m₅(8..11)
copy_4_slots_unmasked $15..18 = m₅(12..15)
copy_4_slots_unmasked $19..22 = scalar4
copy_4_slots_unmasked $23..26 = scalar4
copy_4_slots_unmasked $27..30 = scalar4
copy_4_slots_unmasked $31..34 = scalar4
cmpne_n_floats $3..18 = notEqual($3..18, $19..34)
bitwise_or_4_ints $11..14 |= $15..18
bitwise_or_4_ints $7..10 |= $11..14
bitwise_or_4_ints $3..6 |= $7..10
bitwise_or_2_ints $3..4 |= $5..6
bitwise_or_int $3 |= $4
merge_condition_mask CondMask = $2 & $3
copy_constant $4 = 0
copy_slot_masked [test_no_op_mat4_X_scalar].result = Mask($4)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $2
copy_slot_unmasked $2 = scalar
swizzle_4 $2..5 = ($2..5).xxxx
copy_4_slots_unmasked $6..9 = $2..5
copy_4_slots_unmasked $10..13 = $6..9
copy_4_slots_unmasked $14..17 = $10..13
splat_4_constants $18..21 = 0
splat_4_constants $22..25 = 0
splat_4_constants $26..29 = 0
splat_4_constants $30..33 = 0
add_n_floats $2..17 += $18..33
copy_4_slots_masked m₅(0..3) = Mask($2..5)
copy_4_slots_masked m₅(4..7) = Mask($6..9)
copy_4_slots_masked m₅(8..11) = Mask($10..13)
copy_4_slots_masked m₅(12..15) = Mask($14..17)
splat_4_constants $2..5 = 0
splat_4_constants $6..9 = 0
splat_4_constants $10..13 = 0
splat_4_constants $14..17 = 0
copy_slot_unmasked $18 = scalar
swizzle_4 $18..21 = ($18..21).xxxx
copy_4_slots_unmasked $22..25 = $18..21
copy_4_slots_unmasked $26..29 = $22..25
copy_4_slots_unmasked $30..33 = $26..29
add_n_floats $2..17 += $18..33
copy_4_slots_masked m₅(0..3) = Mask($2..5)
copy_4_slots_masked m₅(4..7) = Mask($6..9)
copy_4_slots_masked m₅(8..11) = Mask($10..13)
copy_4_slots_masked m₅(12..15) = Mask($14..17)
store_condition_mask $2 = CondMask
copy_4_slots_unmasked $3..6 = m₅(0..3)
copy_4_slots_unmasked $7..10 = m₅(4..7)
copy_4_slots_unmasked $11..14 = m₅(8..11)
copy_4_slots_unmasked $15..18 = m₅(12..15)
copy_4_slots_unmasked $19..22 = scalar4
copy_4_slots_unmasked $23..26 = scalar4
copy_4_slots_unmasked $27..30 = scalar4
copy_4_slots_unmasked $31..34 = scalar4
cmpne_n_floats $3..18 = notEqual($3..18, $19..34)
bitwise_or_4_ints $11..14 |= $15..18
bitwise_or_4_ints $7..10 |= $11..14
bitwise_or_4_ints $3..6 |= $7..10
bitwise_or_2_ints $3..4 |= $5..6
bitwise_or_int $3 |= $4
merge_condition_mask CondMask = $2 & $3
copy_constant $4 = 0
copy_slot_masked [test_no_op_mat4_X_scalar].result = Mask($4)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $2
copy_slot_unmasked $2 = scalar
swizzle_4 $2..5 = ($2..5).xxxx
copy_4_slots_unmasked $6..9 = $2..5
copy_4_slots_unmasked $10..13 = $6..9
copy_4_slots_unmasked $14..17 = $10..13
splat_4_constants $18..21 = 0
splat_4_constants $22..25 = 0
splat_4_constants $26..29 = 0
splat_4_constants $30..33 = 0
sub_n_floats $2..17 -= $18..33
copy_4_slots_masked m₅(0..3) = Mask($2..5)
copy_4_slots_masked m₅(4..7) = Mask($6..9)
copy_4_slots_masked m₅(8..11) = Mask($10..13)
copy_4_slots_masked m₅(12..15) = Mask($14..17)
splat_4_constants $2..5 = 0
splat_4_constants $6..9 = 0
splat_4_constants $10..13 = 0
splat_4_constants $14..17 = 0
copy_slot_unmasked $18 = scalar
swizzle_4 $18..21 = ($18..21).xxxx
copy_4_slots_unmasked $22..25 = $18..21
copy_4_slots_unmasked $26..29 = $22..25
copy_4_slots_unmasked $30..33 = $26..29
sub_n_floats $2..17 -= $18..33
copy_4_slots_masked m₅(0..3) = Mask($2..5)
copy_4_slots_masked m₅(4..7) = Mask($6..9)
copy_4_slots_masked m₅(8..11) = Mask($10..13)
copy_4_slots_masked m₅(12..15) = Mask($14..17)
store_condition_mask $2 = CondMask
copy_4_slots_unmasked $3..6 = m₅(0..3)
copy_4_slots_unmasked $7..10 = m₅(4..7)
copy_4_slots_unmasked $11..14 = m₅(8..11)
copy_4_slots_unmasked $15..18 = m₅(12..15)
copy_4_slots_unmasked $19..22 = scalar4
copy_4_slots_unmasked $23..26 = scalar4
copy_4_slots_unmasked $27..30 = scalar4
copy_4_slots_unmasked $31..34 = scalar4
splat_4_constants $35..38 = 0x80000000 (-0.0)
splat_4_constants $39..42 = 0x80000000 (-0.0)
splat_4_constants $43..46 = 0x80000000 (-0.0)
splat_4_constants $47..50 = 0x80000000 (-0.0)
bitwise_xor_n_ints $19..34 ^= $35..50
cmpne_n_floats $3..18 = notEqual($3..18, $19..34)
bitwise_or_4_ints $11..14 |= $15..18
bitwise_or_4_ints $7..10 |= $11..14
bitwise_or_4_ints $3..6 |= $7..10
bitwise_or_2_ints $3..4 |= $5..6
bitwise_or_int $3 |= $4
merge_condition_mask CondMask = $2 & $3
copy_constant $4 = 0
copy_slot_masked [test_no_op_mat4_X_scalar].result = Mask($4)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $2
splat_4_constants $2..5 = 0
splat_4_constants $6..9 = 0
splat_4_constants $10..13 = 0
splat_4_constants $14..17 = 0
copy_4_slots_masked mm₅(0..3) = Mask($2..5)
copy_4_slots_masked mm₅(4..7) = Mask($6..9)
copy_4_slots_masked mm₅(8..11) = Mask($10..13)
copy_4_slots_masked mm₅(12..15) = Mask($14..17)
splat_4_constants $2..5 = 0
splat_4_constants $6..9 = 0
splat_4_constants $10..13 = 0
splat_4_constants $14..17 = 0
copy_4_slots_masked mm₅(0..3) = Mask($2..5)
copy_4_slots_masked mm₅(4..7) = Mask($6..9)
copy_4_slots_masked mm₅(8..11) = Mask($10..13)
copy_4_slots_masked mm₅(12..15) = Mask($14..17)
splat_4_constants $18..21 = 0
splat_4_constants $22..25 = 0
splat_4_constants $26..29 = 0
splat_4_constants $30..33 = 0
cmpeq_n_floats $2..17 = equal($2..17, $18..33)
bitwise_and_4_ints $10..13 &= $14..17
bitwise_and_4_ints $6..9 &= $10..13
bitwise_and_4_ints $2..5 &= $6..9
bitwise_and_2_ints $2..3 &= $4..5
bitwise_and_int $2 &= $3
copy_slot_masked [test_no_op_mat4_X_scalar].result = Mask($2)
load_return_mask RetMask = $1
copy_slot_unmasked $1 = [test_no_op_mat4_X_scalar].result
label label 0x0000000B
copy_slot_masked $0 = Mask($1)
label label 0x00000001
load_condition_mask CondMask = $51
swizzle_4 $0..3 = ($0..3).xxxx
copy_4_uniforms $4..7 = colorRed
copy_4_uniforms $8..11 = colorGreen
mix_4_ints $0..3 = mix($4..7, $8..11, $0..3)
load_src src.rgba = $0..3