1. store_src_rg coords = src.rg | |
2. init_lane_masks CondMask = LoopMask = RetMask = true | |
3. copy_constant $0 = 0xFFFFFFFF | |
4. copy_slot_unmasked _0_ok = $0 | |
5. store_condition_mask $12 = CondMask | |
6. store_condition_mask $20 = CondMask | |
7. store_condition_mask $24 = CondMask | |
8. store_condition_mask $16 = CondMask | |
9. store_condition_mask $34 = CondMask | |
10. store_condition_mask $28 = CondMask | |
11. store_condition_mask $8 = CondMask | |
12. store_condition_mask $32 = CondMask | |
13. copy_slot_unmasked $33 = _0_ok | |
14. zero_slot_unmasked $9 = 0 | |
15. merge_condition_mask CondMask = $32 & $33 | |
16. branch_if_no_active_lanes branch_if_no_active_lanes +9 (#25) | |
17. store_return_mask $10 = RetMask | |
18. copy_constant $11 = 0xFFFFFFFF | |
19. copy_slot_unmasked ok = $11 | |
20. copy_slot_masked [test_eq_half].result = Mask($11) | |
21. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
22. load_return_mask RetMask = $10 | |
23. copy_slot_unmasked $10 = [test_eq_half].result | |
24. copy_slot_masked $9 = Mask($10) | |
25. load_condition_mask CondMask = $32 | |
26. zero_slot_unmasked $29 = 0 | |
27. merge_condition_mask CondMask = $8 & $9 | |
28. branch_if_no_active_lanes branch_if_no_active_lanes +9 (#37) | |
29. store_return_mask $30 = RetMask | |
30. copy_constant $31 = 0xFFFFFFFF | |
31. copy_slot_unmasked ok = $31 | |
32. copy_slot_masked [test_matrix_op_matrix_float].result = Mask($31) | |
33. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
34. load_return_mask RetMask = $30 | |
35. copy_slot_unmasked $30 = [test_matrix_op_matrix_float].result | |
36. copy_slot_masked $29 = Mask($30) | |
37. load_condition_mask CondMask = $8 | |
38. zero_slot_unmasked $35 = 0 | |
39. merge_condition_mask CondMask = $28 & $29 | |
40. branch_if_no_active_lanes branch_if_no_active_lanes +9 (#49) | |
41. store_return_mask $36 = RetMask | |
42. copy_constant $37 = 0xFFFFFFFF | |
43. copy_slot_unmasked ok = $37 | |
44. copy_slot_masked [test_matrix_op_matrix_half].result = Mask($37) | |
45. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
46. load_return_mask RetMask = $36 | |
47. copy_slot_unmasked $36 = [test_matrix_op_matrix_half].result | |
48. copy_slot_masked $35 = Mask($36) | |
49. load_condition_mask CondMask = $28 | |
50. zero_slot_unmasked $17 = 0 | |
51. merge_condition_mask CondMask = $34 & $35 | |
52. branch_if_no_active_lanes branch_if_no_active_lanes +9 (#61) | |
53. store_return_mask $18 = RetMask | |
54. copy_constant $19 = 0xFFFFFFFF | |
55. copy_slot_unmasked ok = $19 | |
56. copy_slot_masked [test_vector_op_matrix_float].result = Mask($19) | |
57. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
58. load_return_mask RetMask = $18 | |
59. copy_slot_unmasked $18 = [test_vector_op_matrix_float].result | |
60. copy_slot_masked $17 = Mask($18) | |
61. load_condition_mask CondMask = $34 | |
62. zero_slot_unmasked $25 = 0 | |
63. merge_condition_mask CondMask = $16 & $17 | |
64. branch_if_no_active_lanes branch_if_no_active_lanes +9 (#73) | |
65. store_return_mask $26 = RetMask | |
66. copy_constant $27 = 0xFFFFFFFF | |
67. copy_slot_unmasked ok = $27 | |
68. copy_slot_masked [test_vector_op_matrix_half].result = Mask($27) | |
69. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
70. load_return_mask RetMask = $26 | |
71. copy_slot_unmasked $26 = [test_vector_op_matrix_half].result | |
72. copy_slot_masked $25 = Mask($26) | |
73. load_condition_mask CondMask = $16 | |
74. zero_slot_unmasked $21 = 0 | |
75. merge_condition_mask CondMask = $24 & $25 | |
76. branch_if_no_active_lanes branch_if_no_active_lanes +9 (#85) | |
77. store_return_mask $22 = RetMask | |
78. copy_constant $23 = 0xFFFFFFFF | |
79. copy_slot_unmasked ok = $23 | |
80. copy_slot_masked [test_matrix_op_vector_float].result = Mask($23) | |
81. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
82. load_return_mask RetMask = $22 | |
83. copy_slot_unmasked $22 = [test_matrix_op_vector_float].result | |
84. copy_slot_masked $21 = Mask($22) | |
85. load_condition_mask CondMask = $24 | |
86. zero_slot_unmasked $13 = 0 | |
87. merge_condition_mask CondMask = $20 & $21 | |
88. branch_if_no_active_lanes branch_if_no_active_lanes +9 (#97) | |
89. store_return_mask $14 = RetMask | |
90. copy_constant $15 = 0xFFFFFFFF | |
91. copy_slot_unmasked ok = $15 | |
92. copy_slot_masked [test_matrix_op_vector_half].result = Mask($15) | |
93. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
94. load_return_mask RetMask = $14 | |
95. copy_slot_unmasked $14 = [test_matrix_op_vector_half].result | |
96. copy_slot_masked $13 = Mask($14) | |
97. load_condition_mask CondMask = $20 | |
98. copy_4_constants $0..3 = colorRed | |
99. merge_condition_mask CondMask = $12 & $13 | |
100. copy_4_constants $4..7 = colorGreen | |
101. copy_4_slots_masked $0..3 = Mask($4..7) | |
102. load_condition_mask CondMask = $12 | |
103. copy_4_slots_masked [main].result = Mask($0..3) | |
104. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
105. load_src src.rgba = [main].result |