1116 instructions 2 3[immutable slots] 4i0 = 0x00000001 (1.401298e-45) 5 6store_src_rg v0..1 = src.rg 7init_lane_masks CondMask = LoopMask = RetMask = true 8copy_constant _0_TrueTrue = 0 9copy_constant _2_y = 0x00000001 (1.401298e-45) 10store_condition_mask $0 = CondMask 11copy_slot_unmasked $1 = _2_y 12add_imm_int $1 += 0x00000001 13copy_slot_masked _2_y = Mask($1) 14cmpeq_imm_int $1 = equal($1, 0x00000002) 15merge_condition_mask CondMask = $0 & $1 16copy_slot_unmasked $2 = _2_y 17cmpeq_imm_int $2 = equal($2, 0x00000002) 18copy_slot_masked _0_TrueTrue = Mask($2) 19merge_inv_condition_mask CondMask = $0 & ~$1 20copy_constant $2 = 0 21copy_slot_masked _0_TrueTrue = Mask($2) 22load_condition_mask CondMask = $0 23store_condition_mask $12 = CondMask 24store_condition_mask $18 = CondMask 25store_condition_mask $24 = CondMask 26copy_slot_unmasked $25 = _0_TrueTrue 27copy_constant $19 = 0 28merge_condition_mask CondMask = $24 & $25 29branch_if_no_lanes_active branch_if_no_lanes_active +29 (label 3 at #53) 30copy_constant y = 0x00000001 (1.401298e-45) 31store_condition_mask $20 = CondMask 32store_condition_mask $26 = CondMask 33copy_constant $27 = 0x00000001 (1.401298e-45) 34cmpeq_imm_int $27 = equal($27, 0x00000001) 35copy_constant $21 = 0 36merge_condition_mask CondMask = $26 & $27 37branch_if_no_lanes_active branch_if_no_lanes_active +6 (label 5 at #38) 38copy_slot_unmasked $22 = y 39add_imm_int $22 += 0x00000001 40copy_slot_masked y = Mask($22) 41cmpeq_imm_int $22 = equal($22, 0x00000003) 42copy_slot_masked $21 = Mask($22) 43label label 0x00000005 44merge_condition_mask CondMask = $20 & $21 45copy_constant $22 = 0 46copy_slot_masked [TrueFalse].result = Mask($22) 47merge_inv_condition_mask CondMask = $20 & ~$21 48copy_constant $22 = 0x00000001 (1.401298e-45) 49cmpeq_imm_int $22 = equal($22, 0x00000001) 50copy_slot_unmasked $23 = y 51cmpeq_imm_int $23 = equal($23, 0x00000002) 52bitwise_and_int $22 &= $23 53copy_slot_masked [TrueFalse].result = Mask($22) 54load_condition_mask CondMask = $20 55copy_slot_unmasked $20 = [TrueFalse].result 56label label 0x00000004 57copy_slot_masked $19 = Mask($20) 58label label 0x00000003 59load_condition_mask CondMask = $24 60copy_constant $13 = 0 61merge_condition_mask CondMask = $18 & $19 62branch_if_no_lanes_active branch_if_no_lanes_active +29 (label 2 at #86) 63copy_constant y₁ = 0x00000001 (1.401298e-45) 64store_condition_mask $14 = CondMask 65store_condition_mask $24 = CondMask 66copy_constant $25 = 0x00000001 (1.401298e-45) 67cmpeq_imm_int $25 = equal($25, 0x00000002) 68copy_constant $15 = 0 69merge_condition_mask CondMask = $24 & $25 70branch_if_no_lanes_active branch_if_no_lanes_active +6 (label 7 at #71) 71copy_slot_unmasked $16 = y₁ 72add_imm_int $16 += 0x00000001 73copy_slot_masked y₁ = Mask($16) 74cmpeq_imm_int $16 = equal($16, 0x00000002) 75copy_slot_masked $15 = Mask($16) 76label label 0x00000007 77merge_condition_mask CondMask = $14 & $15 78copy_constant $16 = 0 79copy_slot_masked [FalseTrue].result = Mask($16) 80merge_inv_condition_mask CondMask = $14 & ~$15 81copy_constant $16 = 0x00000001 (1.401298e-45) 82cmpeq_imm_int $16 = equal($16, 0x00000001) 83copy_slot_unmasked $17 = y₁ 84cmpeq_imm_int $17 = equal($17, 0x00000001) 85bitwise_and_int $16 &= $17 86copy_slot_masked [FalseTrue].result = Mask($16) 87load_condition_mask CondMask = $14 88copy_slot_unmasked $14 = [FalseTrue].result 89label label 0x00000006 90copy_slot_masked $13 = Mask($14) 91label label 0x00000002 92load_condition_mask CondMask = $18 93copy_constant $0 = 0 94merge_condition_mask CondMask = $12 & $13 95branch_if_no_lanes_active branch_if_no_lanes_active +29 (label 1 at #119) 96copy_constant y₂ = 0x00000001 (1.401298e-45) 97store_condition_mask $1 = CondMask 98store_condition_mask $18 = CondMask 99copy_constant $19 = 0x00000001 (1.401298e-45) 100cmpeq_imm_int $19 = equal($19, 0x00000002) 101copy_constant $2 = 0 102merge_condition_mask CondMask = $18 & $19 103branch_if_no_lanes_active branch_if_no_lanes_active +6 (label 9 at #104) 104copy_slot_unmasked $3 = y₂ 105add_imm_int $3 += 0x00000001 106copy_slot_masked y₂ = Mask($3) 107cmpeq_imm_int $3 = equal($3, 0x00000003) 108copy_slot_masked $2 = Mask($3) 109label label 0x00000009 110merge_condition_mask CondMask = $1 & $2 111copy_constant $3 = 0 112copy_slot_masked [FalseFalse].result = Mask($3) 113merge_inv_condition_mask CondMask = $1 & ~$2 114copy_constant $3 = 0x00000001 (1.401298e-45) 115cmpeq_imm_int $3 = equal($3, 0x00000001) 116copy_slot_unmasked $4 = y₂ 117cmpeq_imm_int $4 = equal($4, 0x00000001) 118bitwise_and_int $3 &= $4 119copy_slot_masked [FalseFalse].result = Mask($3) 120load_condition_mask CondMask = $1 121copy_slot_unmasked $1 = [FalseFalse].result 122label label 0x00000008 123copy_slot_masked $0 = Mask($1) 124label label 0x00000001 125load_condition_mask CondMask = $12 126swizzle_4 $0..3 = ($0..3).xxxx 127copy_4_uniforms $4..7 = colorRed 128copy_4_uniforms $8..11 = colorGreen 129mix_4_ints $0..3 = mix($4..7, $8..11, $0..3) 130load_src src.rgba = $0..3 131