blob: 4c190749c536dfdc2a59f8a5d9c2b5e3f12868fd [file] [log] [blame]
1. store_device_xy01 $54..57 = DeviceCoords.xy01
2. copy_constant $56 = 0x3F000000 (0.5)
3. copy_constant $57 = 0x3F000000 (0.5)
4. cmpeq_2_floats $54..55 = equal($54..55, $56..57)
5. bitwise_and_int $54 &= $55
6. store_src_rg coords = src.rg
7. init_lane_masks CondMask = LoopMask = RetMask = true
8. trace_enter TraceEnter(half4 main(float2 coords)) when $54 is true
9. trace_var TraceVar(coords) when $54 is true
10. trace_scope TraceScope(+1) when $54 is true
11. trace_line TraceLine(28) when $54 is true
12. store_condition_mask $35 = CondMask
13. branch_if_no_lanes_active branch_if_no_lanes_active +65 (label 2 at #78)
14. trace_enter TraceEnter(bool test3x3()) when $54 is true
15. trace_scope TraceScope(+1) when $54 is true
16. trace_line TraceLine(8) when $54 is true
17. zero_4_slots_unmasked matrix(0..3) = 0
18. zero_4_slots_unmasked matrix(4..7) = 0
19. zero_slot_unmasked matrix(8) = 0
20. trace_var TraceVar(matrix) when $54 is true
21. trace_line TraceLine(9) when $54 is true
22. copy_constant values(0) = 0x3F800000 (1.0)
23. copy_constant values(1) = 0x40000000 (2.0)
24. copy_constant values(2) = 0x40400000 (3.0)
25. trace_var TraceVar(values) when $54 is true
26. trace_scope TraceScope(+1) when $54 is true
27. branch_if_no_lanes_active branch_if_no_lanes_active +32 (label 3 at #59)
28. trace_line TraceLine(10) when $54 is true
29. zero_slot_unmasked index = 0
30. trace_var TraceVar(index) when $54 is true
31. label label 0x00000004
32. trace_scope TraceScope(+1) when $54 is true
33. trace_line TraceLine(11) when $54 is true
34. copy_slot_unmasked $33 = index
35. copy_constant $34 = 0x00000003 (4.203895e-45)
36. mul_int $33 *= $34
37. copy_3_slots_unmasked $36..38 = values
38. copy_to_indirect_masked Indirect(matrix(0..2) + $33) = Mask($36..38)
39. trace_var TraceVar(matrix(0..2) + $33) when $54 is true
40. trace_line TraceLine(12) when $54 is true
41. copy_3_slots_unmasked $36..38 = values
42. copy_constant $39 = 0x40400000 (3.0)
43. swizzle_3 $39..41 = ($39..41).xxx
44. add_3_floats $36..38 += $39..41
45. copy_3_slots_masked values = Mask($36..38)
46. trace_var TraceVar(values) when $54 is true
47. trace_scope TraceScope(-1) when $54 is true
48. trace_line TraceLine(10) when $54 is true
49. copy_slot_unmasked $36 = index
50. copy_constant $37 = 0x00000001 (1.401298e-45)
51. add_int $36 += $37
52. copy_slot_masked index = Mask($36)
53. trace_var TraceVar(index) when $54 is true
54. copy_slot_unmasked $36 = index
55. copy_constant $37 = 0x00000003 (4.203895e-45)
56. cmplt_int $36 = lessThan($36, $37)
57. stack_rewind
58. branch_if_no_active_lanes_eq branch -27 (label 4 at #31) if no lanes of $36 == 0x00000000 (0.0)
59. label label 0x00000003
60. trace_scope TraceScope(-1) when $54 is true
61. trace_line TraceLine(14) when $54 is true
62. copy_4_slots_unmasked $36..39 = matrix(0..3)
63. copy_4_slots_unmasked $40..43 = matrix(4..7)
64. copy_slot_unmasked $44 = matrix(8)
65. copy_4_constants $45..48 = testMatrix3x3(0..3)
66. copy_4_constants $49..52 = testMatrix3x3(4..7)
67. copy_constant $53 = testMatrix3x3(8)
68. cmpeq_n_floats $36..44 = equal($36..44, $45..53)
69. bitwise_and_4_ints $37..40 &= $41..44
70. bitwise_and_2_ints $37..38 &= $39..40
71. bitwise_and_int $37 &= $38
72. bitwise_and_int $36 &= $37
73. copy_slot_masked [test3x3].result = Mask($36)
74. trace_var TraceVar([test3x3].result) when $54 is true
75. trace_scope TraceScope(-1) when $54 is true
76. trace_exit TraceExit(bool test3x3()) when $54 is true
77. copy_slot_unmasked $36 = [test3x3].result
78. label label 0x00000002
79. zero_slot_unmasked $0 = 0
80. merge_condition_mask CondMask = $35 & $36
81. branch_if_no_lanes_active branch_if_no_lanes_active +72 (label 1 at #153)
82. trace_enter TraceEnter(bool test4x4()) when $54 is true
83. trace_scope TraceScope(+1) when $54 is true
84. trace_line TraceLine(18) when $54 is true
85. zero_4_slots_unmasked matrix₁(0..3) = 0
86. zero_4_slots_unmasked matrix₁(4..7) = 0
87. zero_4_slots_unmasked matrix₁(8..11) = 0
88. zero_4_slots_unmasked matrix₁(12..15) = 0
89. trace_var TraceVar(matrix₁) when $54 is true
90. trace_line TraceLine(19) when $54 is true
91. copy_constant values₁(0) = 0x3F800000 (1.0)
92. copy_constant values₁(1) = 0x40000000 (2.0)
93. copy_constant values₁(2) = 0x40400000 (3.0)
94. copy_constant values₁(3) = 0x40800000 (4.0)
95. trace_var TraceVar(values₁) when $54 is true
96. trace_scope TraceScope(+1) when $54 is true
97. branch_if_no_lanes_active branch_if_no_lanes_active +32 (label 6 at #129)
98. trace_line TraceLine(20) when $54 is true
99. zero_slot_unmasked index = 0
100. trace_var TraceVar(index₁) when $54 is true
101. label label 0x00000007
102. trace_scope TraceScope(+1) when $54 is true
103. trace_line TraceLine(21) when $54 is true
104. copy_slot_unmasked $33 = index
105. copy_constant $34 = 0x00000004 (5.605194e-45)
106. mul_int $33 *= $34
107. copy_4_slots_unmasked $1..4 = values
108. copy_to_indirect_masked Indirect(matrix₁(0..3) + $33) = Mask($1..4)
109. trace_var TraceVar(matrix₁(0..3) + $33) when $54 is true
110. trace_line TraceLine(22) when $54 is true
111. copy_4_slots_unmasked $1..4 = values
112. copy_constant $5 = 0x40800000 (4.0)
113. swizzle_4 $5..8 = ($5..8).xxxx
114. add_4_floats $1..4 += $5..8
115. copy_4_slots_masked values = Mask($1..4)
116. trace_var TraceVar(values₁) when $54 is true
117. trace_scope TraceScope(-1) when $54 is true
118. trace_line TraceLine(20) when $54 is true
119. copy_slot_unmasked $1 = index
120. copy_constant $2 = 0x00000001 (1.401298e-45)
121. add_int $1 += $2
122. copy_slot_masked index = Mask($1)
123. trace_var TraceVar(index₁) when $54 is true
124. copy_slot_unmasked $1 = index
125. copy_constant $2 = 0x00000004 (5.605194e-45)
126. cmplt_int $1 = lessThan($1, $2)
127. stack_rewind
128. branch_if_no_active_lanes_eq branch -27 (label 7 at #101) if no lanes of $1 == 0x00000000 (0.0)
129. label label 0x00000006
130. trace_scope TraceScope(-1) when $54 is true
131. trace_line TraceLine(24) when $54 is true
132. copy_4_slots_unmasked $1..4 = matrix₁(0..3)
133. copy_4_slots_unmasked $5..8 = matrix₁(4..7)
134. copy_4_slots_unmasked $9..12 = matrix₁(8..11)
135. copy_4_slots_unmasked $13..16 = matrix₁(12..15)
136. copy_4_constants $17..20 = testMatrix4x4(0..3)
137. copy_4_constants $21..24 = testMatrix4x4(4..7)
138. copy_4_constants $25..28 = testMatrix4x4(8..11)
139. copy_4_constants $29..32 = testMatrix4x4(12..15)
140. cmpeq_n_floats $1..16 = equal($1..16, $17..32)
141. bitwise_and_4_ints $9..12 &= $13..16
142. bitwise_and_4_ints $5..8 &= $9..12
143. bitwise_and_4_ints $1..4 &= $5..8
144. bitwise_and_2_ints $1..2 &= $3..4
145. bitwise_and_int $1 &= $2
146. copy_slot_masked [test4x4].result = Mask($1)
147. trace_var TraceVar([test4x4].result) when $54 is true
148. trace_scope TraceScope(-1) when $54 is true
149. trace_exit TraceExit(bool test4x4()) when $54 is true
150. copy_slot_unmasked $1 = [test4x4].result
151. label label 0x00000005
152. copy_slot_masked $0 = Mask($1)
153. label label 0x00000001
154. load_condition_mask CondMask = $35
155. swizzle_4 $0..3 = ($0..3).xxxx
156. copy_4_constants $4..7 = colorRed
157. copy_4_constants $8..11 = colorGreen
158. mix_4_ints $0..3 = mix($4..7, $8..11, $0..3)
159. copy_4_slots_unmasked [main].result = $0..3
160. trace_var TraceVar([main].result) when $54 is true
161. trace_scope TraceScope(-1) when $54 is true
162. trace_exit TraceExit(half4 main(float2 coords)) when $54 is true
163. load_src src.rgba = [main].result