blob: deceae685a34a2b0427d69394182fe19cd1a3079 [file] [log] [blame]
447 instructions
[immutable slots]
i0 = 0xBF800000 (-1.0)
i1 = 0xBF800000 (-1.0)
i2 = 0x3F800000 (1.0)
i3 = 0x3F800000 (1.0)
i4 = 0
i5 = 0
i6 = 0x40400000 (3.0)
i7 = 0x40E00000 (7.0)
i8 = 0x40800000 (4.0)
i9 = 0x40C00000 (6.0)
i10 = 0xC0400000 (-3.0)
i11 = 0xC0E00000 (-7.0)
i12 = 0xC0800000 (-4.0)
i13 = 0xC0C00000 (-6.0)
i14 = 0xBF800000 (-1.0)
i15 = 0xBF800000 (-1.0)
i16 = 0xBF800000 (-1.0)
i17 = 0x3F800000 (1.0)
i18 = 0x3F800000 (1.0)
i19 = 0x3F800000 (1.0)
i20 = 0
i21 = 0
i22 = 0
i23 = 0x40C00000 (6.0)
i24 = 0x41700000 (15.0)
i25 = 0x41C00000 (24.0)
i26 = 0x41400000 (12.0)
i27 = 0x41700000 (15.0)
i28 = 0x41900000 (18.0)
i29 = 0xC0C00000 (-6.0)
i30 = 0xC1700000 (-15.0)
i31 = 0xC1C00000 (-24.0)
i32 = 0xC1400000 (-12.0)
i33 = 0xC1700000 (-15.0)
i34 = 0xC1900000 (-18.0)
i35 = 0xBF800000 (-1.0)
i36 = 0xBF800000 (-1.0)
i37 = 0xBF800000 (-1.0)
i38 = 0xBF800000 (-1.0)
i39 = 0x3F800000 (1.0)
i40 = 0x3F800000 (1.0)
i41 = 0x3F800000 (1.0)
i42 = 0x3F800000 (1.0)
i43 = 0
i44 = 0
i45 = 0
i46 = 0
i47 = 0x40800000 (4.0)
i48 = 0x41000000 (8.0)
i49 = 0x41400000 (12.0)
i50 = 0x41800000 (16.0)
i51 = 0xC0800000 (-4.0)
i52 = 0xC1000000 (-8.0)
i53 = 0xC1400000 (-12.0)
i54 = 0xC1800000 (-16.0)
store_src_rg coords = src.rg
init_lane_masks CondMask = LoopMask = RetMask = true
store_condition_mask $26 = CondMask
store_condition_mask $44 = CondMask
store_condition_mask $55 = CondMask
store_condition_mask $71 = CondMask
store_condition_mask $84 = CondMask
branch_if_no_lanes_active branch_if_no_lanes_active +56 (label 6 at #64)
store_return_mask $85 = RetMask
splat_4_constants v, vv = 0
copy_2_uniforms $86..87 = testInputs(0..1)
copy_2_slots_masked v = Mask($86..87)
copy_2_uniforms $86..87 = testInputs(0..1)
copy_2_slots_masked v = Mask($86..87)
store_condition_mask $86 = CondMask
copy_2_slots_unmasked $87..88 = v
copy_2_uniforms $89..90 = testInputs(0..1)
cmpne_2_floats $87..88 = notEqual($87..88, $89..90)
bitwise_or_int $87 |= $88
merge_condition_mask CondMask = $86 & $87
copy_constant $88 = 0
copy_slot_masked [test_no_op_mat2_X_vec2].result = Mask($88)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $86
copy_2_slots_unmasked $87..88 = v
copy_2_uniforms $89..90 = testInputs(0..1)
cmpne_2_floats $87..88 = notEqual($87..88, $89..90)
bitwise_or_int $87 |= $88
merge_condition_mask CondMask = $86 & $87
copy_constant $88 = 0
copy_slot_masked [test_no_op_mat2_X_vec2].result = Mask($88)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $86
copy_2_uniforms $86..87 = testInputs(0..1)
bitwise_xor_imm_int $86 ^= 0x80000000
bitwise_xor_imm_int $87 ^= 0x80000000
copy_2_slots_masked v = Mask($86..87)
copy_2_uniforms $86..87 = testInputs(0..1)
bitwise_xor_imm_int $86 ^= 0x80000000
bitwise_xor_imm_int $87 ^= 0x80000000
copy_2_slots_masked v = Mask($86..87)
store_condition_mask $86 = CondMask
copy_2_slots_unmasked $87..88 = v
copy_2_uniforms $89..90 = testInputs(0..1)
bitwise_xor_imm_int $89 ^= 0x80000000
bitwise_xor_imm_int $90 ^= 0x80000000
cmpne_2_floats $87..88 = notEqual($87..88, $89..90)
bitwise_or_int $87 |= $88
merge_condition_mask CondMask = $86 & $87
copy_constant $88 = 0
copy_slot_masked [test_no_op_mat2_X_vec2].result = Mask($88)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $86
splat_2_constants $86..87 = 0
copy_2_slots_masked vv = Mask($86..87)
splat_2_constants $86..87 = 0
copy_2_slots_masked vv = Mask($86..87)
cmpeq_imm_float $86 = equal($86, 0)
cmpeq_imm_float $87 = equal($87, 0)
bitwise_and_int $86 &= $87
copy_slot_masked [test_no_op_mat2_X_vec2].result = Mask($86)
load_return_mask RetMask = $85
copy_slot_unmasked $85 = [test_no_op_mat2_X_vec2].result
label label 0x00000006
copy_constant $72 = 0
merge_condition_mask CondMask = $84 & $85
branch_if_no_lanes_active branch_if_no_lanes_active +63 (label 5 at #130)
store_return_mask $73 = RetMask
splat_4_constants v₁, vv₁(0) = 0
splat_2_constants vv₁(1..2) = 0
copy_3_uniforms $74..76 = testInputs(0..2)
copy_3_slots_masked v = Mask($74..76)
copy_3_uniforms $74..76 = testInputs(0..2)
copy_3_slots_masked v = Mask($74..76)
store_condition_mask $74 = CondMask
copy_3_slots_unmasked $75..77 = v
copy_3_uniforms $78..80 = testInputs(0..2)
cmpne_3_floats $75..77 = notEqual($75..77, $78..80)
bitwise_or_int $76 |= $77
bitwise_or_int $75 |= $76
merge_condition_mask CondMask = $74 & $75
copy_constant $76 = 0
copy_slot_masked [test_no_op_mat3_X_vec3].result = Mask($76)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $74
copy_3_slots_unmasked $75..77 = v
copy_3_uniforms $78..80 = testInputs(0..2)
cmpne_3_floats $75..77 = notEqual($75..77, $78..80)
bitwise_or_int $76 |= $77
bitwise_or_int $75 |= $76
merge_condition_mask CondMask = $74 & $75
copy_constant $76 = 0
copy_slot_masked [test_no_op_mat3_X_vec3].result = Mask($76)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $74
copy_3_uniforms $74..76 = testInputs(0..2)
splat_3_constants $77..79 = 0x80000000 (-0.0)
bitwise_xor_3_ints $74..76 ^= $77..79
copy_3_slots_masked v = Mask($74..76)
copy_3_uniforms $74..76 = testInputs(0..2)
splat_3_constants $77..79 = 0x80000000 (-0.0)
bitwise_xor_3_ints $74..76 ^= $77..79
copy_3_slots_masked v = Mask($74..76)
store_condition_mask $74 = CondMask
copy_3_slots_unmasked $75..77 = v
copy_3_uniforms $78..80 = testInputs(0..2)
splat_3_constants $81..83 = 0x80000000 (-0.0)
bitwise_xor_3_ints $78..80 ^= $81..83
cmpne_3_floats $75..77 = notEqual($75..77, $78..80)
bitwise_or_int $76 |= $77
bitwise_or_int $75 |= $76
merge_condition_mask CondMask = $74 & $75
copy_constant $76 = 0
copy_slot_masked [test_no_op_mat3_X_vec3].result = Mask($76)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $74
splat_3_constants $74..76 = 0
copy_3_slots_masked vv = Mask($74..76)
splat_3_constants $74..76 = 0
copy_3_slots_masked vv = Mask($74..76)
splat_3_constants $77..79 = 0
cmpeq_3_floats $74..76 = equal($74..76, $77..79)
bitwise_and_int $75 &= $76
bitwise_and_int $74 &= $75
copy_slot_masked [test_no_op_mat3_X_vec3].result = Mask($74)
load_return_mask RetMask = $73
copy_slot_unmasked $73 = [test_no_op_mat3_X_vec3].result
label label 0x00000007
copy_slot_masked $72 = Mask($73)
label label 0x00000005
load_condition_mask CondMask = $84
copy_constant $56 = 0
merge_condition_mask CondMask = $71 & $72
branch_if_no_lanes_active branch_if_no_lanes_active +63 (label 4 at #197)
store_return_mask $57 = RetMask
splat_4_constants v = 0
splat_4_constants vv = 0
copy_4_uniforms $58..61 = testInputs
copy_4_slots_masked v = Mask($58..61)
copy_4_uniforms $58..61 = testInputs
copy_4_slots_masked v = Mask($58..61)
store_condition_mask $58 = CondMask
copy_4_slots_unmasked $59..62 = v
copy_4_uniforms $63..66 = testInputs
cmpne_4_floats $59..62 = notEqual($59..62, $63..66)
bitwise_or_2_ints $59..60 |= $61..62
bitwise_or_int $59 |= $60
merge_condition_mask CondMask = $58 & $59
copy_constant $60 = 0
copy_slot_masked [test_no_op_mat4_X_vec4].result = Mask($60)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $58
copy_4_slots_unmasked $59..62 = v
copy_4_uniforms $63..66 = testInputs
cmpne_4_floats $59..62 = notEqual($59..62, $63..66)
bitwise_or_2_ints $59..60 |= $61..62
bitwise_or_int $59 |= $60
merge_condition_mask CondMask = $58 & $59
copy_constant $60 = 0
copy_slot_masked [test_no_op_mat4_X_vec4].result = Mask($60)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $58
copy_4_uniforms $58..61 = testInputs
splat_4_constants $62..65 = 0x80000000 (-0.0)
bitwise_xor_4_ints $58..61 ^= $62..65
copy_4_slots_masked v = Mask($58..61)
copy_4_uniforms $58..61 = testInputs
splat_4_constants $62..65 = 0x80000000 (-0.0)
bitwise_xor_4_ints $58..61 ^= $62..65
copy_4_slots_masked v = Mask($58..61)
store_condition_mask $58 = CondMask
copy_4_slots_unmasked $59..62 = v
copy_4_uniforms $63..66 = testInputs
splat_4_constants $67..70 = 0x80000000 (-0.0)
bitwise_xor_4_ints $63..66 ^= $67..70
cmpne_4_floats $59..62 = notEqual($59..62, $63..66)
bitwise_or_2_ints $59..60 |= $61..62
bitwise_or_int $59 |= $60
merge_condition_mask CondMask = $58 & $59
copy_constant $60 = 0
copy_slot_masked [test_no_op_mat4_X_vec4].result = Mask($60)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $58
splat_4_constants $58..61 = 0
copy_4_slots_masked vv = Mask($58..61)
splat_4_constants $58..61 = 0
copy_4_slots_masked vv = Mask($58..61)
splat_4_constants $62..65 = 0
cmpeq_4_floats $58..61 = equal($58..61, $62..65)
bitwise_and_2_ints $58..59 &= $60..61
bitwise_and_int $58 &= $59
copy_slot_masked [test_no_op_mat4_X_vec4].result = Mask($58)
load_return_mask RetMask = $57
copy_slot_unmasked $57 = [test_no_op_mat4_X_vec4].result
label label 0x00000008
copy_slot_masked $56 = Mask($57)
label label 0x00000004
load_condition_mask CondMask = $71
copy_constant $45 = 0
merge_condition_mask CondMask = $55 & $56
branch_if_no_lanes_active branch_if_no_lanes_active +69 (label 3 at #270)
store_return_mask $46 = RetMask
splat_4_constants v₃, vv = 0
splat_2_constants $47..48 = 0
copy_2_slots_masked vv = Mask($47..48)
store_condition_mask $47 = CondMask
copy_2_slots_unmasked $48..49 = vv
cmpne_imm_float $48 = notEqual($48, 0)
cmpne_imm_float $49 = notEqual($49, 0)
bitwise_or_int $48 |= $49
merge_condition_mask CondMask = $47 & $48
copy_constant $49 = 0
copy_slot_masked [test_no_op_vec2_X_mat2].result = Mask($49)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $47
splat_2_constants $49..50 = 0x3F800000 (1.0)
copy_4_uniforms $51..54 = testMatrix2x2
matrix_multiply_2 mat2x1($47..48) = mat2x1($49..50) * mat2x2($51..54)
copy_2_slots_masked v = Mask($47..48)
store_condition_mask $47 = CondMask
copy_2_slots_unmasked $48..49 = v
copy_2_immutables_unmasked $50..51 = i6..7 [0x40400000 (3.0), 0x40E00000 (7.0)]
cmpne_2_floats $48..49 = notEqual($48..49, $50..51)
bitwise_or_int $48 |= $49
merge_condition_mask CondMask = $47 & $48
copy_constant $49 = 0
copy_slot_masked [test_no_op_vec2_X_mat2].result = Mask($49)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $47
copy_4_uniforms $49..52 = testMatrix2x2
splat_2_constants $53..54 = 0x3F800000 (1.0)
matrix_multiply_2 mat1x2($47..48) = mat2x2($49..52) * mat1x2($53..54)
copy_2_slots_masked v = Mask($47..48)
store_condition_mask $47 = CondMask
copy_2_slots_unmasked $48..49 = v
copy_2_immutables_unmasked $50..51 = i8..9 [0x40800000 (4.0), 0x40C00000 (6.0)]
cmpne_2_floats $48..49 = notEqual($48..49, $50..51)
bitwise_or_int $48 |= $49
merge_condition_mask CondMask = $47 & $48
copy_constant $49 = 0
copy_slot_masked [test_no_op_vec2_X_mat2].result = Mask($49)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $47
splat_2_constants $49..50 = 0xBF800000 (-1.0)
copy_4_uniforms $51..54 = testMatrix2x2
matrix_multiply_2 mat2x1($47..48) = mat2x1($49..50) * mat2x2($51..54)
copy_2_slots_masked v = Mask($47..48)
store_condition_mask $47 = CondMask
copy_2_slots_unmasked $48..49 = v
copy_2_immutables_unmasked $50..51 = i10..11 [0xC0400000 (-3.0), 0xC0E00000 (-7.0)]
cmpne_2_floats $48..49 = notEqual($48..49, $50..51)
bitwise_or_int $48 |= $49
merge_condition_mask CondMask = $47 & $48
copy_constant $49 = 0
copy_slot_masked [test_no_op_vec2_X_mat2].result = Mask($49)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $47
copy_4_uniforms $49..52 = testMatrix2x2
splat_2_constants $53..54 = 0xBF800000 (-1.0)
matrix_multiply_2 mat1x2($47..48) = mat2x2($49..52) * mat1x2($53..54)
copy_2_slots_masked v = Mask($47..48)
copy_2_immutables_unmasked $49..50 = i12..13 [0xC0800000 (-4.0), 0xC0C00000 (-6.0)]
cmpeq_2_floats $47..48 = equal($47..48, $49..50)
bitwise_and_int $47 &= $48
copy_slot_masked [test_no_op_vec2_X_mat2].result = Mask($47)
load_return_mask RetMask = $46
copy_slot_unmasked $46 = [test_no_op_vec2_X_mat2].result
label label 0x00000009
copy_slot_masked $45 = Mask($46)
label label 0x00000003
load_condition_mask CondMask = $55
copy_constant $27 = 0
merge_condition_mask CondMask = $44 & $45
branch_if_no_lanes_active branch_if_no_lanes_active +83 (label 2 at #357)
store_return_mask $28 = RetMask
splat_4_constants v₄, vv₄(0) = 0
splat_2_constants vv₄(1..2) = 0
splat_3_constants $29..31 = 0
copy_3_slots_masked vv = Mask($29..31)
store_condition_mask $29 = CondMask
copy_3_slots_unmasked $30..32 = vv
splat_3_constants $33..35 = 0
cmpne_3_floats $30..32 = notEqual($30..32, $33..35)
bitwise_or_int $31 |= $32
bitwise_or_int $30 |= $31
merge_condition_mask CondMask = $29 & $30
copy_constant $31 = 0
copy_slot_masked [test_no_op_vec3_X_mat3].result = Mask($31)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $29
splat_3_constants $32..34 = 0x3F800000 (1.0)
copy_4_uniforms $35..38 = testMatrix3x3(0..3)
copy_4_uniforms $39..42 = testMatrix3x3(4..7)
copy_uniform $43 = testMatrix3x3(8)
matrix_multiply_3 mat3x1($29..31) = mat3x1($32..34) * mat3x3($35..43)
copy_3_slots_masked v = Mask($29..31)
store_condition_mask $29 = CondMask
copy_3_slots_unmasked $30..32 = v
copy_3_immutables_unmasked $33..35 = i23..25 [0x40C00000 (6.0), 0x41700000 (15.0), 0x41C00000 (24.0)]
cmpne_3_floats $30..32 = notEqual($30..32, $33..35)
bitwise_or_int $31 |= $32
bitwise_or_int $30 |= $31
merge_condition_mask CondMask = $29 & $30
copy_constant $31 = 0
copy_slot_masked [test_no_op_vec3_X_mat3].result = Mask($31)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $29
copy_4_uniforms $32..35 = testMatrix3x3(0..3)
copy_4_uniforms $36..39 = testMatrix3x3(4..7)
copy_uniform $40 = testMatrix3x3(8)
splat_3_constants $41..43 = 0x3F800000 (1.0)
matrix_multiply_3 mat1x3($29..31) = mat3x3($32..40) * mat1x3($41..43)
copy_3_slots_masked v = Mask($29..31)
store_condition_mask $29 = CondMask
copy_3_slots_unmasked $30..32 = v
copy_3_immutables_unmasked $33..35 = i26..28 [0x41400000 (12.0), 0x41700000 (15.0), 0x41900000 (18.0)]
cmpne_3_floats $30..32 = notEqual($30..32, $33..35)
bitwise_or_int $31 |= $32
bitwise_or_int $30 |= $31
merge_condition_mask CondMask = $29 & $30
copy_constant $31 = 0
copy_slot_masked [test_no_op_vec3_X_mat3].result = Mask($31)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $29
splat_3_constants $32..34 = 0xBF800000 (-1.0)
copy_4_uniforms $35..38 = testMatrix3x3(0..3)
copy_4_uniforms $39..42 = testMatrix3x3(4..7)
copy_uniform $43 = testMatrix3x3(8)
matrix_multiply_3 mat3x1($29..31) = mat3x1($32..34) * mat3x3($35..43)
copy_3_slots_masked v = Mask($29..31)
store_condition_mask $29 = CondMask
copy_3_slots_unmasked $30..32 = v
copy_3_immutables_unmasked $33..35 = i29..31 [0xC0C00000 (-6.0), 0xC1700000 (-15.0), 0xC1C00000 (-24.0)]
cmpne_3_floats $30..32 = notEqual($30..32, $33..35)
bitwise_or_int $31 |= $32
bitwise_or_int $30 |= $31
merge_condition_mask CondMask = $29 & $30
copy_constant $31 = 0
copy_slot_masked [test_no_op_vec3_X_mat3].result = Mask($31)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $29
copy_4_uniforms $32..35 = testMatrix3x3(0..3)
copy_4_uniforms $36..39 = testMatrix3x3(4..7)
copy_uniform $40 = testMatrix3x3(8)
splat_3_constants $41..43 = 0xBF800000 (-1.0)
matrix_multiply_3 mat1x3($29..31) = mat3x3($32..40) * mat1x3($41..43)
copy_3_slots_masked v = Mask($29..31)
copy_3_immutables_unmasked $32..34 = i32..34 [0xC1400000 (-12.0), 0xC1700000 (-15.0), 0xC1900000 (-18.0)]
cmpeq_3_floats $29..31 = equal($29..31, $32..34)
bitwise_and_int $30 &= $31
bitwise_and_int $29 &= $30
copy_slot_masked [test_no_op_vec3_X_mat3].result = Mask($29)
load_return_mask RetMask = $28
copy_slot_unmasked $28 = [test_no_op_vec3_X_mat3].result
label label 0x0000000A
copy_slot_masked $27 = Mask($28)
label label 0x00000002
load_condition_mask CondMask = $44
copy_constant $0 = 0
merge_condition_mask CondMask = $26 & $27
branch_if_no_lanes_active branch_if_no_lanes_active +91 (label 1 at #452)
store_return_mask $1 = RetMask
copy_4_uniforms testMatrix4x4(0..3) = testMatrix2x2
copy_4_uniforms testMatrix4x4(4..7) = testMatrix2x2
copy_4_uniforms testMatrix4x4(8..11) = testMatrix2x2
copy_4_uniforms testMatrix4x4(12..15) = testMatrix2x2
splat_4_constants v = 0
splat_4_constants vv = 0
splat_4_constants $2..5 = 0
copy_4_slots_masked vv = Mask($2..5)
store_condition_mask $2 = CondMask
copy_4_slots_unmasked $3..6 = vv
splat_4_constants $7..10 = 0
cmpne_4_floats $3..6 = notEqual($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_vec4_X_mat4].result = Mask($4)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $2
splat_4_constants $6..9 = 0x3F800000 (1.0)
copy_4_slots_unmasked $10..13 = testMatrix4x4(0..3)
copy_4_slots_unmasked $14..17 = testMatrix4x4(4..7)
copy_4_slots_unmasked $18..21 = testMatrix4x4(8..11)
copy_4_slots_unmasked $22..25 = testMatrix4x4(12..15)
matrix_multiply_4 mat4x1($2..5) = mat4x1($6..9) * mat4x4($10..25)
copy_4_slots_masked v = Mask($2..5)
store_condition_mask $2 = CondMask
copy_4_slots_unmasked $3..6 = v
splat_4_constants $7..10 = 0x41200000 (10.0)
cmpne_4_floats $3..6 = notEqual($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_vec4_X_mat4].result = Mask($4)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $2
copy_4_slots_unmasked $6..9 = testMatrix4x4(0..3)
copy_4_slots_unmasked $10..13 = testMatrix4x4(4..7)
copy_4_slots_unmasked $14..17 = testMatrix4x4(8..11)
copy_4_slots_unmasked $18..21 = testMatrix4x4(12..15)
splat_4_constants $22..25 = 0x3F800000 (1.0)
matrix_multiply_4 mat1x4($2..5) = mat4x4($6..21) * mat1x4($22..25)
copy_4_slots_masked v = Mask($2..5)
store_condition_mask $2 = CondMask
copy_4_slots_unmasked $3..6 = v
copy_4_immutables_unmasked $7..10 = i47..50 [0x40800000 (4.0), 0x41000000 (8.0), 0x41400000 (12.0), 0x41800000 (16.0)]
cmpne_4_floats $3..6 = notEqual($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_vec4_X_mat4].result = Mask($4)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $2
splat_4_constants $6..9 = 0xBF800000 (-1.0)
copy_4_slots_unmasked $10..13 = testMatrix4x4(0..3)
copy_4_slots_unmasked $14..17 = testMatrix4x4(4..7)
copy_4_slots_unmasked $18..21 = testMatrix4x4(8..11)
copy_4_slots_unmasked $22..25 = testMatrix4x4(12..15)
matrix_multiply_4 mat4x1($2..5) = mat4x1($6..9) * mat4x4($10..25)
copy_4_slots_masked v = Mask($2..5)
store_condition_mask $2 = CondMask
copy_4_slots_unmasked $3..6 = v
splat_4_constants $7..10 = 0xC1200000 (-10.0)
cmpne_4_floats $3..6 = notEqual($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_vec4_X_mat4].result = Mask($4)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
load_condition_mask CondMask = $2
copy_4_slots_unmasked $6..9 = testMatrix4x4(0..3)
copy_4_slots_unmasked $10..13 = testMatrix4x4(4..7)
copy_4_slots_unmasked $14..17 = testMatrix4x4(8..11)
copy_4_slots_unmasked $18..21 = testMatrix4x4(12..15)
splat_4_constants $22..25 = 0xBF800000 (-1.0)
matrix_multiply_4 mat1x4($2..5) = mat4x4($6..21) * mat1x4($22..25)
copy_4_slots_masked v = Mask($2..5)
copy_4_immutables_unmasked $6..9 = i51..54 [0xC0800000 (-4.0), 0xC1000000 (-8.0), 0xC1400000 (-12.0), 0xC1800000 (-16.0)]
cmpeq_4_floats $2..5 = equal($2..5, $6..9)
bitwise_and_2_ints $2..3 &= $4..5
bitwise_and_int $2 &= $3
copy_slot_masked [test_no_op_vec4_X_mat4].result = Mask($2)
load_return_mask RetMask = $1
copy_slot_unmasked $1 = [test_no_op_vec4_X_mat4].result
label label 0x0000000B
copy_slot_masked $0 = Mask($1)
label label 0x00000001
load_condition_mask CondMask = $26
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