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