blob: 738604b264949ba4064df82b7c8edd1225b01643 [file] [log] [blame]
127 instructions
store_src_rg coords = src.rg
init_lane_masks CondMask = LoopMask = RetMask = true
copy_uniform $0 = colorGreen(1)
cast_to_int_from_float $0 = FloatToInt($0)
copy_slot_unmasked x = $0
copy_constant _0_val = 0
store_loop_mask $0 = LoopMask
copy_slot_unmasked $1 = x
store_loop_mask $2 = LoopMask
mask_off_loop_mask LoopMask &= ~(CondMask & LoopMask & RetMask)
case_op if ($1 == 0x00000001) { LoopMask = true; $2 = false; }
branch_if_no_lanes_active branch_if_no_lanes_active +21 (label 1 at #33)
copy_constant _1_i = 0
store_loop_mask $3 = LoopMask
jump jump +10 (label 3 at #25)
label label 0x00000004
copy_slot_unmasked $4 = _0_val
add_imm_int $4 += 0x00000001
copy_slot_masked _0_val = Mask($4)
branch_if_all_lanes_active branch_if_all_lanes_active +11 (label 2 at #31)
mask_off_loop_mask LoopMask &= ~(CondMask & LoopMask & RetMask)
copy_slot_unmasked $4 = _1_i
add_imm_int $4 += 0x00000001
copy_slot_masked _1_i = Mask($4)
label label 0x00000003
copy_slot_unmasked $4 = _1_i
cmplt_imm_int $4 = lessThan($4, 0x0000000A)
merge_loop_mask LoopMask &= $4
stack_rewind
branch_if_any_lanes_active branch_if_any_lanes_active -14 (label 4 at #16)
label label 0x00000002
load_loop_mask LoopMask = $3
label label 0x00000001
reenable_loop_mask LoopMask |= $2
branch_if_no_lanes_active branch_if_no_lanes_active +4 (label 5 at #39)
copy_slot_unmasked $2 = _0_val
add_imm_int $2 += 0x00000001
copy_slot_masked _0_val = Mask($2)
label label 0x00000005
label label 0
load_loop_mask LoopMask = $0
store_condition_mask $12 = CondMask
store_condition_mask $19 = CondMask
copy_slot_unmasked $20 = _0_val
cmpeq_imm_int $20 = equal($20, 0x00000002)
copy_constant $13 = 0
merge_condition_mask CondMask = $19 & $20
branch_if_no_lanes_active branch_if_no_lanes_active +43 (label 8 at #91)
copy_slot_unmasked x = x
copy_constant val = 0
store_loop_mask $14 = LoopMask
copy_slot_unmasked $15 = x
store_loop_mask $16 = LoopMask
mask_off_loop_mask LoopMask &= ~(CondMask & LoopMask & RetMask)
case_op if ($15 == 0x00000001) { LoopMask = true; $16 = false; }
branch_if_no_lanes_active branch_if_no_lanes_active +22 (label 11 at #78)
copy_constant i = 0
store_loop_mask $17 = LoopMask
jump jump +11 (label 13 at #70)
label label 0x0000000E
copy_constant $21 = 0
copy_slot_unmasked $18 = val
add_imm_int $18 += 0x00000001
copy_slot_masked val = Mask($18)
continue_op $21 |= Mask(0xFFFFFFFF); LoopMask &= ~(CondMask & LoopMask & RetMask)
reenable_loop_mask LoopMask |= $21
copy_slot_unmasked $18 = i
add_imm_int $18 += 0x00000001
copy_slot_masked i = Mask($18)
label label 0x0000000D
copy_slot_unmasked $18 = i
cmplt_imm_int $18 = lessThan($18, 0x0000000A)
merge_loop_mask LoopMask &= $18
stack_rewind
branch_if_any_lanes_active branch_if_any_lanes_active -15 (label 14 at #60)
label label 0x0000000C
load_loop_mask LoopMask = $17
label label 0x0000000B
reenable_loop_mask LoopMask |= $16
branch_if_no_lanes_active branch_if_no_lanes_active +4 (label 15 at #84)
copy_slot_unmasked $16 = val
add_imm_int $16 += 0x00000001
copy_slot_masked val = Mask($16)
label label 0x0000000F
label label 0x0000000A
load_loop_mask LoopMask = $14
copy_slot_unmasked $14 = val
cmpeq_imm_int $14 = equal($14, 0x0000000B)
label label 0x00000009
copy_slot_masked $13 = Mask($14)
label label 0x00000008
load_condition_mask CondMask = $19
copy_constant $0 = 0
merge_condition_mask CondMask = $12 & $13
branch_if_no_lanes_active branch_if_no_lanes_active +48 (label 7 at #143)
copy_slot_unmasked x = x
store_return_mask $1 = RetMask
splat_2_constants val₁, i = 0
store_loop_mask $2 = LoopMask
jump jump +28 (label 18 at #128)
label label 0x00000013
store_loop_mask $3 = LoopMask
copy_slot_unmasked $4 = x
store_loop_mask $5 = LoopMask
mask_off_loop_mask LoopMask &= ~(CondMask & LoopMask & RetMask)
case_op if ($4 == 0x00000001) { LoopMask = true; $5 = false; }
branch_if_no_lanes_active branch_if_no_lanes_active +6 (label 21 at #113)
copy_slot_unmasked $6 = val
add_imm_int $6 += 0x00000001
copy_slot_masked val = Mask($6)
branch_if_all_lanes_active branch_if_all_lanes_active +9 (label 20 at #120)
mask_off_loop_mask LoopMask &= ~(CondMask & LoopMask & RetMask)
label label 0x00000015
reenable_loop_mask LoopMask |= $5
branch_if_no_lanes_active branch_if_no_lanes_active +4 (label 22 at #119)
copy_constant $5 = 0
copy_slot_masked [loop_with_break_in_switch].result = Mask($5)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
label label 0x00000016
label label 0x00000014
load_loop_mask LoopMask = $3
copy_slot_unmasked $3 = val
add_imm_int $3 += 0x00000001
copy_slot_masked val = Mask($3)
copy_slot_unmasked $3 = i
add_imm_int $3 += 0x00000001
copy_slot_masked i = Mask($3)
label label 0x00000012
copy_slot_unmasked $3 = i
cmplt_imm_int $3 = lessThan($3, 0x0000000A)
merge_loop_mask LoopMask &= $3
stack_rewind
branch_if_any_lanes_active branch_if_any_lanes_active -32 (label 19 at #101)
label label 0x00000011
load_loop_mask LoopMask = $2
copy_slot_unmasked $2 = val
cmpeq_imm_int $2 = equal($2, 0x00000014)
copy_slot_masked [loop_with_break_in_switch].result = Mask($2)
load_return_mask RetMask = $1
copy_slot_unmasked $1 = [loop_with_break_in_switch].result
label label 0x00000010
copy_slot_masked $0 = Mask($1)
label label 0x00000007
load_condition_mask CondMask = $12
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