blob: 2eebdf089f739981723c88fa50e673f9e684b5d7 [file] [log] [blame]
123 instructions
store_src_rg coords = src.rg
init_lane_masks CondMask = LoopMask = RetMask = true
store_condition_mask $12 = CondMask
store_condition_mask $18 = CondMask
store_condition_mask $21 = CondMask
store_condition_mask $26 = CondMask
copy_constant $29 = 0xFFFFFFFF
branch_if_no_active_lanes_eq branch +15 (label 5 at #23) if no lanes of $29 == 0xFFFFFFFF
branch_if_no_lanes_active branch_if_no_lanes_active +12 (label 7 at #21)
copy_uniform $27 = unknownInput
cmpeq_imm_float $27 = equal($27, 0x3F800000 (1.0))
branch_if_no_active_lanes_eq branch +4 (label 8 at #16) if no lanes of $27 == 0xFFFFFFFF
copy_constant $28 = 0xFFFFFFFF
copy_slot_masked [return_on_both_sides].result = Mask($28)
jump jump +4 (label 9 at #19)
label label 0x00000008
copy_constant $28 = 0xFFFFFFFF
copy_slot_masked [return_on_both_sides].result = Mask($28)
label label 0x00000009
copy_slot_unmasked $27 = [return_on_both_sides].result
label label 0x00000007
jump jump +3 (label 6 at #25)
label label 0x00000005
copy_constant $27 = 0
label label 0x00000006
copy_constant $22 = 0
merge_condition_mask CondMask = $26 & $27
branch_if_no_lanes_active branch_if_no_lanes_active +24 (label 4 at #52)
store_return_mask $23 = RetMask
copy_constant x = 0
store_loop_mask $24 = LoopMask
jump jump +8 (label 12 at #40)
label label 0x0000000D
copy_constant $25 = 0xFFFFFFFF
copy_slot_masked [for_inside_body].result = Mask($25)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
copy_slot_unmasked $25 = x
add_imm_int $25 += 0x00000001
copy_slot_masked x = Mask($25)
label label 0x0000000C
copy_slot_unmasked $25 = x
cmple_imm_int $25 = lessThanEqual($25, 0x0000000A)
merge_loop_mask LoopMask &= $25
stack_rewind
branch_if_any_lanes_active branch_if_any_lanes_active -12 (label 13 at #33)
label label 0x0000000B
load_loop_mask LoopMask = $24
load_return_mask RetMask = $23
copy_slot_unmasked $23 = [for_inside_body].result
label label 0x0000000A
copy_slot_masked $22 = Mask($23)
label label 0x00000004
load_condition_mask CondMask = $26
copy_constant $19 = 0
merge_condition_mask CondMask = $21 & $22
branch_if_no_lanes_active branch_if_no_lanes_active +13 (label 3 at #69)
copy_constant x = 0
label label 0x00000010
copy_slot_unmasked $20 = x
add_imm_int $20 += 0x00000001
copy_slot_masked x = Mask($20)
cmple_imm_int $20 = lessThanEqual($20, 0x0000000A)
stack_rewind
branch_if_no_active_lanes_eq branch -6 (label 16 at #58) if no lanes of $20 == 0
label label 0x0000000F
copy_constant $20 = 0xFFFFFFFF
label label 0x0000000E
copy_slot_masked $19 = Mask($20)
label label 0x00000003
load_condition_mask CondMask = $21
copy_constant $13 = 0
merge_condition_mask CondMask = $18 & $19
branch_if_no_lanes_active branch_if_no_lanes_active +33 (label 2 at #106)
store_return_mask $14 = RetMask
copy_constant x = 0
store_loop_mask $15 = LoopMask
jump jump +17 (label 19 at #94)
label label 0x00000014
copy_uniform $16 = unknownInput
cmpeq_imm_float $16 = equal($16, 0x3F800000 (1.0))
branch_if_no_active_lanes_eq branch +5 (label 21 at #86) if no lanes of $16 == 0xFFFFFFFF
copy_constant $17 = 0xFFFFFFFF
copy_slot_masked [for_with_double_sided_conditional_return].result = Mask($17)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
jump jump +5 (label 22 at #90)
label label 0x00000015
copy_constant $17 = 0xFFFFFFFF
copy_slot_masked [for_with_double_sided_conditional_return].result = Mask($17)
mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask)
label label 0x00000016
copy_slot_unmasked $16 = x
add_imm_int $16 += 0x00000001
copy_slot_masked x = Mask($16)
label label 0x00000013
copy_slot_unmasked $16 = x
cmple_imm_int $16 = lessThanEqual($16, 0x0000000A)
merge_loop_mask LoopMask &= $16
stack_rewind
branch_if_any_lanes_active branch_if_any_lanes_active -21 (label 20 at #78)
label label 0x00000012
load_loop_mask LoopMask = $15
load_return_mask RetMask = $14
copy_slot_unmasked $14 = [for_with_double_sided_conditional_return].result
label label 0x00000011
copy_slot_masked $13 = Mask($14)
label label 0x00000002
load_condition_mask CondMask = $18
copy_constant $0 = 0
merge_condition_mask CondMask = $12 & $13
branch_if_no_lanes_active branch_if_no_lanes_active +38 (label 1 at #148)
copy_uniform $1 = unknownInput
cmpeq_imm_float $1 = equal($1, 0x3F800000 (1.0))
branch_if_no_active_lanes_eq branch +4 (label 24 at #117) if no lanes of $1 == 0xFFFFFFFF
copy_constant $2 = 0xFFFFFFFF
copy_slot_masked [if_else_chain].result = Mask($2)
jump jump +28 (label 25 at #144)
label label 0x00000018
copy_uniform $2 = unknownInput
cmpeq_imm_float $2 = equal($2, 0x40000000 (2.0))
branch_if_no_active_lanes_eq branch +4 (label 26 at #124) if no lanes of $2 == 0xFFFFFFFF
copy_constant $3 = 0
copy_slot_masked [if_else_chain].result = Mask($3)
jump jump +20 (label 27 at #143)
label label 0x0000001A
copy_uniform $3 = unknownInput
cmpeq_imm_float $3 = equal($3, 0x40400000 (3.0))
branch_if_no_active_lanes_eq branch +4 (label 28 at #131) if no lanes of $3 == 0xFFFFFFFF
copy_constant $4 = 0xFFFFFFFF
copy_slot_masked [if_else_chain].result = Mask($4)
jump jump +12 (label 29 at #142)
label label 0x0000001C
copy_uniform $4 = unknownInput
cmpeq_imm_float $4 = equal($4, 0x40800000 (4.0))
branch_if_no_active_lanes_eq branch +4 (label 30 at #138) if no lanes of $4 == 0xFFFFFFFF
copy_constant $5 = 0
copy_slot_masked [if_else_chain].result = Mask($5)
jump jump +4 (label 31 at #141)
label label 0x0000001E
copy_constant $5 = 0xFFFFFFFF
copy_slot_masked [if_else_chain].result = Mask($5)
label label 0x0000001F
label label 0x0000001D
label label 0x0000001B
label label 0x00000019
copy_slot_unmasked $1 = [if_else_chain].result
label label 0x00000017
copy_slot_masked $0 = Mask($1)
label label 0x00000001
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