blob: 680f853e32657a519926681290ab75abf108d74a [file] [log] [blame]
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