1. store_src_rg coords = src.rg | |
2. init_lane_masks CondMask = LoopMask = RetMask = true | |
3. store_condition_mask $8 = CondMask | |
4. store_condition_mask $25 = CondMask | |
5. store_condition_mask $32 = CondMask | |
6. store_condition_mask $19 = CondMask | |
7. store_condition_mask $39 = CondMask | |
8. store_condition_mask $37 = CondMask | |
9. copy_constant $38 = 0xFFFFFFFF | |
10. zero_slot_unmasked $40 = 0 | |
11. merge_condition_mask CondMask = $37 & $38 | |
12. branch_if_no_active_lanes branch_if_no_active_lanes +15 (#27) | |
13. store_condition_mask $41 = CondMask | |
14. copy_constant $42 = unknownInput | |
15. copy_constant $43 = 0x3F800000 (1.0) | |
16. cmpeq_float $42 = equal($42, $43) | |
17. merge_condition_mask CondMask = $41 & $42 | |
18. copy_constant $43 = 0xFFFFFFFF | |
19. copy_slot_masked [return_on_both_sides].result = Mask($43) | |
20. bitwise_not_int $42 = ~$42 | |
21. merge_condition_mask CondMask = $41 & $42 | |
22. copy_constant $43 = 0xFFFFFFFF | |
23. copy_slot_masked [return_on_both_sides].result = Mask($43) | |
24. load_condition_mask CondMask = $41 | |
25. copy_slot_unmasked $41 = [return_on_both_sides].result | |
26. copy_slot_masked $40 = Mask($41) | |
27. load_condition_mask CondMask = $37 | |
28. zero_slot_unmasked $20 = 0 | |
29. merge_condition_mask CondMask = $39 & $40 | |
30. branch_if_no_active_lanes branch_if_no_active_lanes +24 (#54) | |
31. store_return_mask $21 = RetMask | |
32. zero_slot_unmasked x = 0 | |
33. store_loop_mask $22 = LoopMask | |
34. jump jump +10 (#44) | |
35. zero_slot_unmasked [for-loop continue mask 0] = 0 | |
36. copy_constant $23 = 0xFFFFFFFF | |
37. copy_slot_masked [for_inside_body].result = Mask($23) | |
38. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
39. reenable_loop_mask LoopMask |= [for-loop continue mask 0] | |
40. copy_slot_unmasked $23 = x | |
41. copy_constant $24 = 0x00000001 (1.401298e-45) | |
42. add_int $23 += $24 | |
43. copy_slot_masked x = Mask($23) | |
44. copy_slot_unmasked $23 = x | |
45. copy_constant $24 = 0x0000000A (1.401298e-44) | |
46. cmple_int $23 = lessThanEqual($23, $24) | |
47. merge_loop_mask LoopMask &= $23 | |
48. stack_rewind | |
49. branch_if_any_active_lanes branch_if_any_active_lanes -14 (#35) | |
50. load_loop_mask LoopMask = $22 | |
51. load_return_mask RetMask = $21 | |
52. copy_slot_unmasked $21 = [for_inside_body].result | |
53. copy_slot_masked $20 = Mask($21) | |
54. load_condition_mask CondMask = $39 | |
55. zero_slot_unmasked $33 = 0 | |
56. merge_condition_mask CondMask = $19 & $20 | |
57. branch_if_no_active_lanes branch_if_no_active_lanes +20 (#77) | |
58. zero_slot_unmasked x = 0 | |
59. store_loop_mask $34 = LoopMask | |
60. jump jump +7 (#67) | |
61. zero_slot_unmasked [for-loop continue mask 1] = 0 | |
62. reenable_loop_mask LoopMask |= [for-loop continue mask 1] | |
63. copy_slot_unmasked $35 = x | |
64. copy_constant $36 = 0x00000001 (1.401298e-45) | |
65. add_int $35 += $36 | |
66. copy_slot_masked x = Mask($35) | |
67. copy_slot_unmasked $35 = x | |
68. copy_constant $36 = 0x0000000A (1.401298e-44) | |
69. cmple_int $35 = lessThanEqual($35, $36) | |
70. merge_loop_mask LoopMask &= $35 | |
71. stack_rewind | |
72. branch_if_any_active_lanes branch_if_any_active_lanes -11 (#61) | |
73. load_loop_mask LoopMask = $34 | |
74. copy_constant $34 = 0xFFFFFFFF | |
75. copy_slot_masked [after_for_body].result = Mask($34) | |
76. copy_slot_masked $33 = Mask($34) | |
77. load_condition_mask CondMask = $19 | |
78. zero_slot_unmasked $26 = 0 | |
79. merge_condition_mask CondMask = $32 & $33 | |
80. branch_if_no_active_lanes branch_if_no_active_lanes +35 (#115) | |
81. store_return_mask $27 = RetMask | |
82. zero_slot_unmasked x = 0 | |
83. store_loop_mask $28 = LoopMask | |
84. jump jump +21 (#105) | |
85. zero_slot_unmasked [for-loop continue mask 2] = 0 | |
86. store_condition_mask $29 = CondMask | |
87. copy_constant $30 = unknownInput | |
88. copy_constant $31 = 0x3F800000 (1.0) | |
89. cmpeq_float $30 = equal($30, $31) | |
90. merge_condition_mask CondMask = $29 & $30 | |
91. copy_constant $31 = 0xFFFFFFFF | |
92. copy_slot_masked [for_with_double_sided_conditional_return].result = Mask($31) | |
93. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
94. bitwise_not_int $30 = ~$30 | |
95. merge_condition_mask CondMask = $29 & $30 | |
96. copy_constant $31 = 0xFFFFFFFF | |
97. copy_slot_masked [for_with_double_sided_conditional_return].result = Mask($31) | |
98. mask_off_return_mask RetMask &= ~(CondMask & LoopMask & RetMask) | |
99. load_condition_mask CondMask = $29 | |
100. reenable_loop_mask LoopMask |= [for-loop continue mask 2] | |
101. copy_slot_unmasked $29 = x | |
102. copy_constant $30 = 0x00000001 (1.401298e-45) | |
103. add_int $29 += $30 | |
104. copy_slot_masked x = Mask($29) | |
105. copy_slot_unmasked $29 = x | |
106. copy_constant $30 = 0x0000000A (1.401298e-44) | |
107. cmple_int $29 = lessThanEqual($29, $30) | |
108. merge_loop_mask LoopMask &= $29 | |
109. stack_rewind | |
110. branch_if_any_active_lanes branch_if_any_active_lanes -25 (#85) | |
111. load_loop_mask LoopMask = $28 | |
112. load_return_mask RetMask = $27 | |
113. copy_slot_unmasked $27 = [for_with_double_sided_conditional_return].result | |
114. copy_slot_masked $26 = Mask($27) | |
115. load_condition_mask CondMask = $32 | |
116. zero_slot_unmasked $9 = 0 | |
117. merge_condition_mask CondMask = $25 & $26 | |
118. branch_if_no_active_lanes branch_if_no_active_lanes +45 (#163) | |
119. store_condition_mask $10 = CondMask | |
120. copy_constant $11 = unknownInput | |
121. copy_constant $12 = 0x3F800000 (1.0) | |
122. cmpeq_float $11 = equal($11, $12) | |
123. merge_condition_mask CondMask = $10 & $11 | |
124. copy_constant $12 = 0xFFFFFFFF | |
125. copy_slot_masked [if_else_chain].result = Mask($12) | |
126. bitwise_not_int $11 = ~$11 | |
127. merge_condition_mask CondMask = $10 & $11 | |
128. store_condition_mask $12 = CondMask | |
129. copy_constant $13 = unknownInput | |
130. copy_constant $14 = 0x40000000 (2.0) | |
131. cmpeq_float $13 = equal($13, $14) | |
132. merge_condition_mask CondMask = $12 & $13 | |
133. zero_slot_unmasked $14 = 0 | |
134. copy_slot_masked [if_else_chain].result = Mask($14) | |
135. bitwise_not_int $13 = ~$13 | |
136. merge_condition_mask CondMask = $12 & $13 | |
137. store_condition_mask $14 = CondMask | |
138. copy_constant $15 = unknownInput | |
139. copy_constant $16 = 0x40400000 (3.0) | |
140. cmpeq_float $15 = equal($15, $16) | |
141. merge_condition_mask CondMask = $14 & $15 | |
142. copy_constant $16 = 0xFFFFFFFF | |
143. copy_slot_masked [if_else_chain].result = Mask($16) | |
144. bitwise_not_int $15 = ~$15 | |
145. merge_condition_mask CondMask = $14 & $15 | |
146. store_condition_mask $16 = CondMask | |
147. copy_constant $17 = unknownInput | |
148. copy_constant $18 = 0x40800000 (4.0) | |
149. cmpeq_float $17 = equal($17, $18) | |
150. merge_condition_mask CondMask = $16 & $17 | |
151. zero_slot_unmasked $18 = 0 | |
152. copy_slot_masked [if_else_chain].result = Mask($18) | |
153. bitwise_not_int $17 = ~$17 | |
154. merge_condition_mask CondMask = $16 & $17 | |
155. copy_constant $18 = 0xFFFFFFFF | |
156. copy_slot_masked [if_else_chain].result = Mask($18) | |
157. load_condition_mask CondMask = $16 | |
158. load_condition_mask CondMask = $14 | |
159. load_condition_mask CondMask = $12 | |
160. load_condition_mask CondMask = $10 | |
161. copy_slot_unmasked $10 = [if_else_chain].result | |
162. copy_slot_masked $9 = Mask($10) | |
163. load_condition_mask CondMask = $25 | |
164. copy_4_constants $0..3 = colorRed | |
165. merge_condition_mask CondMask = $8 & $9 | |
166. copy_4_constants $4..7 = colorGreen | |
167. copy_4_slots_masked $0..3 = Mask($4..7) | |
168. load_condition_mask CondMask = $8 | |
169. copy_4_slots_unmasked [main].result = $0..3 | |
170. load_src src.rgba = [main].result |