130 lines
6.4 KiB
Plaintext
130 lines
6.4 KiB
Plaintext
|
|
1. store_src_rg xy = src.rg
|
||
|
|
2. init_lane_masks CondMask = LoopMask = RetMask = true
|
||
|
|
3. copy_constant ok = 0xFFFFFFFF
|
||
|
|
4. copy_constant $0 = testMatrix2x2(0)
|
||
|
|
5. cast_to_int_from_float $0 = FloatToInt($0)
|
||
|
|
6. copy_slot_unmasked a = $0
|
||
|
|
7. copy_2_constants $0..1 = testMatrix2x2(0..1)
|
||
|
|
8. swizzle_1 $0 = ($0..1).y
|
||
|
|
9. cast_to_int_from_float $0 = FloatToInt($0)
|
||
|
|
10. copy_slot_unmasked b = $0
|
||
|
|
11. copy_constant $0 = testMatrix2x2(2)
|
||
|
|
12. copy_slot_unmasked c = $0
|
||
|
|
13. copy_2_constants $0..1 = testMatrix2x2(2..3)
|
||
|
|
14. swizzle_1 $0 = ($0..1).y
|
||
|
|
15. copy_slot_unmasked d = $0
|
||
|
|
16. copy_2_slots_unmasked $0..1 = a, b
|
||
|
|
17. bitwise_and_int $0 &= $1
|
||
|
|
18. copy_slot_unmasked a_and_b = $0
|
||
|
|
19. copy_slot_unmasked $0 = b
|
||
|
|
20. copy_slot_unmasked $1 = a
|
||
|
|
21. bitwise_and_int $0 &= $1
|
||
|
|
22. copy_slot_unmasked b_and_a = $0
|
||
|
|
23. copy_slot_unmasked $0 = ok
|
||
|
|
24. copy_2_slots_unmasked $1..2 = a_and_b, b_and_a
|
||
|
|
25. cmpeq_int $1 = equal($1, $2)
|
||
|
|
26. bitwise_and_int $0 &= $1
|
||
|
|
27. copy_slot_unmasked ok = $0
|
||
|
|
28. copy_2_slots_unmasked $0..1 = a, b
|
||
|
|
29. bitwise_or_int $0 |= $1
|
||
|
|
30. copy_slot_unmasked a_or_b = $0
|
||
|
|
31. copy_slot_unmasked $0 = b
|
||
|
|
32. copy_slot_unmasked $1 = a
|
||
|
|
33. bitwise_or_int $0 |= $1
|
||
|
|
34. copy_slot_unmasked b_or_a = $0
|
||
|
|
35. copy_slot_unmasked $0 = ok
|
||
|
|
36. copy_2_slots_unmasked $1..2 = a_or_b, b_or_a
|
||
|
|
37. cmpeq_int $1 = equal($1, $2)
|
||
|
|
38. bitwise_and_int $0 &= $1
|
||
|
|
39. copy_slot_unmasked ok = $0
|
||
|
|
40. copy_2_slots_unmasked $0..1 = a, b
|
||
|
|
41. bitwise_xor_int $0 ^= $1
|
||
|
|
42. copy_slot_unmasked a_xor_b = $0
|
||
|
|
43. copy_slot_unmasked $0 = b
|
||
|
|
44. copy_slot_unmasked $1 = a
|
||
|
|
45. bitwise_xor_int $0 ^= $1
|
||
|
|
46. copy_slot_unmasked b_xor_a = $0
|
||
|
|
47. copy_slot_unmasked $0 = ok
|
||
|
|
48. copy_2_slots_unmasked $1..2 = a_xor_b, b_xor_a
|
||
|
|
49. cmpeq_int $1 = equal($1, $2)
|
||
|
|
50. bitwise_and_int $0 &= $1
|
||
|
|
51. copy_slot_unmasked ok = $0
|
||
|
|
52. copy_2_slots_unmasked $0..1 = a, b
|
||
|
|
53. cmpeq_int $0 = equal($0, $1)
|
||
|
|
54. copy_slot_unmasked a_eq_b = $0
|
||
|
|
55. copy_slot_unmasked $0 = b
|
||
|
|
56. copy_slot_unmasked $1 = a
|
||
|
|
57. cmpeq_int $0 = equal($0, $1)
|
||
|
|
58. copy_slot_unmasked b_eq_a = $0
|
||
|
|
59. copy_slot_unmasked $0 = ok
|
||
|
|
60. copy_2_slots_unmasked $1..2 = a_eq_b, b_eq_a
|
||
|
|
61. cmpeq_int $1 = equal($1, $2)
|
||
|
|
62. bitwise_and_int $0 &= $1
|
||
|
|
63. copy_slot_unmasked ok = $0
|
||
|
|
64. copy_2_slots_unmasked $0..1 = a, b
|
||
|
|
65. cmpne_int $0 = notEqual($0, $1)
|
||
|
|
66. copy_slot_unmasked a_neq_b = $0
|
||
|
|
67. copy_slot_unmasked $0 = b
|
||
|
|
68. copy_slot_unmasked $1 = a
|
||
|
|
69. cmpne_int $0 = notEqual($0, $1)
|
||
|
|
70. copy_slot_unmasked b_neq_a = $0
|
||
|
|
71. copy_slot_unmasked $0 = ok
|
||
|
|
72. copy_2_slots_unmasked $1..2 = a_neq_b, b_neq_a
|
||
|
|
73. cmpeq_int $1 = equal($1, $2)
|
||
|
|
74. bitwise_and_int $0 &= $1
|
||
|
|
75. copy_slot_unmasked ok = $0
|
||
|
|
76. copy_2_slots_unmasked $0..1 = a, b
|
||
|
|
77. add_int $0 += $1
|
||
|
|
78. copy_slot_unmasked a_add_b = $0
|
||
|
|
79. copy_slot_unmasked $0 = b
|
||
|
|
80. copy_slot_unmasked $1 = a
|
||
|
|
81. add_int $0 += $1
|
||
|
|
82. copy_slot_unmasked b_add_a = $0
|
||
|
|
83. copy_slot_unmasked $0 = ok
|
||
|
|
84. copy_2_slots_unmasked $1..2 = a_add_b, b_add_a
|
||
|
|
85. cmpeq_int $1 = equal($1, $2)
|
||
|
|
86. bitwise_and_int $0 &= $1
|
||
|
|
87. copy_slot_unmasked ok = $0
|
||
|
|
88. copy_2_slots_unmasked $0..1 = c, d
|
||
|
|
89. add_float $0 += $1
|
||
|
|
90. copy_slot_unmasked c_add_d = $0
|
||
|
|
91. copy_slot_unmasked $0 = d
|
||
|
|
92. copy_slot_unmasked $1 = c
|
||
|
|
93. add_float $0 += $1
|
||
|
|
94. copy_slot_unmasked d_add_c = $0
|
||
|
|
95. copy_slot_unmasked $0 = ok
|
||
|
|
96. copy_2_slots_unmasked $1..2 = c_add_d, d_add_c
|
||
|
|
97. cmpeq_float $1 = equal($1, $2)
|
||
|
|
98. bitwise_and_int $0 &= $1
|
||
|
|
99. copy_slot_unmasked ok = $0
|
||
|
|
100. copy_2_slots_unmasked $0..1 = a, b
|
||
|
|
101. mul_int $0 *= $1
|
||
|
|
102. copy_slot_unmasked a_mul_b = $0
|
||
|
|
103. copy_slot_unmasked $0 = b
|
||
|
|
104. copy_slot_unmasked $1 = a
|
||
|
|
105. mul_int $0 *= $1
|
||
|
|
106. copy_slot_unmasked b_mul_a = $0
|
||
|
|
107. copy_slot_unmasked $0 = ok
|
||
|
|
108. copy_2_slots_unmasked $1..2 = a_mul_b, b_mul_a
|
||
|
|
109. cmpeq_int $1 = equal($1, $2)
|
||
|
|
110. bitwise_and_int $0 &= $1
|
||
|
|
111. copy_slot_unmasked ok = $0
|
||
|
|
112. copy_2_slots_unmasked $0..1 = c, d
|
||
|
|
113. mul_float $0 *= $1
|
||
|
|
114. copy_slot_unmasked c_mul_d = $0
|
||
|
|
115. copy_slot_unmasked $0 = d
|
||
|
|
116. copy_slot_unmasked $1 = c
|
||
|
|
117. mul_float $0 *= $1
|
||
|
|
118. copy_slot_unmasked d_mul_c = $0
|
||
|
|
119. copy_slot_unmasked $0 = ok
|
||
|
|
120. copy_2_slots_unmasked $1..2 = c_mul_d, d_mul_c
|
||
|
|
121. cmpeq_float $1 = equal($1, $2)
|
||
|
|
122. bitwise_and_int $0 &= $1
|
||
|
|
123. copy_slot_unmasked ok = $0
|
||
|
|
124. swizzle_4 $0..3 = ($0..3).xxxx
|
||
|
|
125. copy_4_constants $4..7 = colorRed
|
||
|
|
126. copy_4_constants $8..11 = colorGreen
|
||
|
|
127. mix_4_ints $0..3 = mix($4..7, $8..11, $0..3)
|
||
|
|
128. copy_4_slots_unmasked [main].result = $0..3
|
||
|
|
129. load_src src.rgba = [main].result
|