• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1    1. store_src_rg                   coords = src.rg
2    2. init_lane_masks                CondMask = LoopMask = RetMask = true
3    3. copy_constant                  $0 = unknownInput
4    4. copy_slot_unmasked             _0_unknown = $0
5    5. copy_constant                  _1_ok = 0xFFFFFFFF
6    6. copy_slot_unmasked             $0 = _1_ok
7    7. zero_4_slots_unmasked          $1..4 = 0
8    8. copy_slot_unmasked             $5 = _0_unknown
9    9. swizzle_4                      $5..8 = ($5..8).xxxx
10   10. div_4_floats                   $1..4 /= $5..8
11   11. zero_4_slots_unmasked          $5..8 = 0
12   12. cmpeq_4_floats                 $1..4 = equal($1..4, $5..8)
13   13. bitwise_and_2_ints             $1..2 &= $3..4
14   14. bitwise_and_int                $1 &= $2
15   15. bitwise_and_int                $0 &= $1
16   16. copy_slot_unmasked             _1_ok = $0
17   17. copy_slot_unmasked             $0 = _0_unknown
18   18. swizzle_4                      $0..3 = ($0..3).xxxx
19   19. copy_4_slots_unmasked          _2_val = $0..3
20   20. copy_constant                  $4 = 0x3F800000 (1.0)
21   21. swizzle_4                      $4..7 = ($4..7).xxxx
22   22. add_4_floats                   $0..3 += $4..7
23   23. copy_4_slots_unmasked          _2_val = $0..3
24   24. copy_constant                  $4 = 0x3F800000 (1.0)
25   25. swizzle_4                      $4..7 = ($4..7).xxxx
26   26. sub_4_floats                   $0..3 -= $4..7
27   27. copy_4_slots_unmasked          _2_val = $0..3
28   28. copy_constant                  $4 = 0x3F800000 (1.0)
29   29. swizzle_4                      $4..7 = ($4..7).xxxx
30   30. add_4_floats                   $0..3 += $4..7
31   31. copy_4_slots_unmasked          _2_val = $0..3
32   32. copy_constant                  $4 = 0x3F800000 (1.0)
33   33. swizzle_4                      $4..7 = ($4..7).xxxx
34   34. sub_4_floats                   $0..3 -= $4..7
35   35. copy_4_slots_unmasked          _2_val = $0..3
36   36. copy_4_slots_unmasked          $0..3 = _1_ok, _2_val(0..2)
37   37. copy_slot_unmasked             $4 = _2_val(3)
38   38. copy_slot_unmasked             $5 = _0_unknown
39   39. swizzle_4                      $5..8 = ($5..8).xxxx
40   40. cmpeq_4_floats                 $1..4 = equal($1..4, $5..8)
41   41. bitwise_and_2_ints             $1..2 &= $3..4
42   42. bitwise_and_int                $1 &= $2
43   43. bitwise_and_int                $0 &= $1
44   44. copy_slot_unmasked             _1_ok = $0
45   45. copy_4_slots_unmasked          $0..3 = _2_val
46   46. copy_constant                  $4 = 0x40000000 (2.0)
47   47. swizzle_4                      $4..7 = ($4..7).xxxx
48   48. mul_4_floats                   $0..3 *= $4..7
49   49. copy_4_slots_unmasked          _2_val = $0..3
50   50. copy_constant                  $4 = 0x3F000000 (0.5)
51   51. swizzle_4                      $4..7 = ($4..7).xxxx
52   52. mul_4_floats                   $0..3 *= $4..7
53   53. copy_4_slots_unmasked          _2_val = $0..3
54   54. copy_constant                  $4 = 0x40000000 (2.0)
55   55. swizzle_4                      $4..7 = ($4..7).xxxx
56   56. mul_4_floats                   $0..3 *= $4..7
57   57. copy_4_slots_unmasked          _2_val = $0..3
58   58. copy_constant                  $4 = 0x3F000000 (0.5)
59   59. swizzle_4                      $4..7 = ($4..7).xxxx
60   60. mul_4_floats                   $0..3 *= $4..7
61   61. copy_4_slots_unmasked          _2_val = $0..3
62   62. copy_4_slots_unmasked          $0..3 = _1_ok, _2_val(0..2)
63   63. copy_slot_unmasked             $4 = _2_val(3)
64   64. copy_slot_unmasked             $5 = _0_unknown
65   65. swizzle_4                      $5..8 = ($5..8).xxxx
66   66. cmpeq_4_floats                 $1..4 = equal($1..4, $5..8)
67   67. bitwise_and_2_ints             $1..2 &= $3..4
68   68. bitwise_and_int                $1 &= $2
69   69. bitwise_and_int                $0 &= $1
70   70. copy_slot_unmasked             _1_ok = $0
71   71. store_condition_mask           $12 = CondMask
72   72. copy_slot_unmasked             $13 = _1_ok
73   73. zero_slot_unmasked             $0 = 0
74   74. merge_condition_mask           CondMask = $12 & $13
75   75. branch_if_no_active_lanes      branch_if_no_active_lanes +73 (label 1 at #148)
76   76. copy_constant                  $1 = unknownInput
77   77. cast_to_int_from_float         $1 = FloatToInt($1)
78   78. copy_slot_unmasked             unknown = $1
79   79. copy_constant                  ok = 0xFFFFFFFF
80   80. copy_slot_unmasked             $1 = ok
81   81. zero_4_slots_unmasked          $2..5 = 0
82   82. copy_slot_unmasked             $6 = unknown
83   83. swizzle_4                      $6..9 = ($6..9).xxxx
84   84. div_4_ints                     $2..5 /= $6..9
85   85. zero_4_slots_unmasked          $6..9 = 0
86   86. cmpeq_4_ints                   $2..5 = equal($2..5, $6..9)
87   87. bitwise_and_2_ints             $2..3 &= $4..5
88   88. bitwise_and_int                $2 &= $3
89   89. bitwise_and_int                $1 &= $2
90   90. copy_slot_masked               ok = Mask($1)
91   91. copy_slot_unmasked             $1 = unknown
92   92. swizzle_4                      $1..4 = ($1..4).xxxx
93   93. copy_4_slots_unmasked          val = $1..4
94   94. copy_constant                  $5 = 0x00000001 (1.401298e-45)
95   95. swizzle_4                      $5..8 = ($5..8).xxxx
96   96. add_4_ints                     $1..4 += $5..8
97   97. copy_4_slots_masked            val = Mask($1..4)
98   98. copy_constant                  $5 = 0x00000001 (1.401298e-45)
99   99. swizzle_4                      $5..8 = ($5..8).xxxx
100  100. sub_4_ints                     $1..4 -= $5..8
101  101. copy_4_slots_masked            val = Mask($1..4)
102  102. copy_constant                  $5 = 0x00000001 (1.401298e-45)
103  103. swizzle_4                      $5..8 = ($5..8).xxxx
104  104. add_4_ints                     $1..4 += $5..8
105  105. copy_4_slots_masked            val = Mask($1..4)
106  106. copy_constant                  $5 = 0x00000001 (1.401298e-45)
107  107. swizzle_4                      $5..8 = ($5..8).xxxx
108  108. sub_4_ints                     $1..4 -= $5..8
109  109. copy_4_slots_masked            val = Mask($1..4)
110  110. copy_4_slots_unmasked          $1..4 = ok, val(0..2)
111  111. copy_slot_unmasked             $5 = val(3)
112  112. copy_slot_unmasked             $6 = unknown
113  113. swizzle_4                      $6..9 = ($6..9).xxxx
114  114. cmpeq_4_ints                   $2..5 = equal($2..5, $6..9)
115  115. bitwise_and_2_ints             $2..3 &= $4..5
116  116. bitwise_and_int                $2 &= $3
117  117. bitwise_and_int                $1 &= $2
118  118. copy_slot_masked               ok = Mask($1)
119  119. copy_4_slots_unmasked          $1..4 = val
120  120. copy_constant                  $5 = 0x00000002 (2.802597e-45)
121  121. swizzle_4                      $5..8 = ($5..8).xxxx
122  122. mul_4_ints                     $1..4 *= $5..8
123  123. copy_4_slots_masked            val = Mask($1..4)
124  124. copy_constant                  $5 = 0x00000002 (2.802597e-45)
125  125. swizzle_4                      $5..8 = ($5..8).xxxx
126  126. div_4_ints                     $1..4 /= $5..8
127  127. copy_4_slots_masked            val = Mask($1..4)
128  128. copy_constant                  $5 = 0x00000002 (2.802597e-45)
129  129. swizzle_4                      $5..8 = ($5..8).xxxx
130  130. mul_4_ints                     $1..4 *= $5..8
131  131. copy_4_slots_masked            val = Mask($1..4)
132  132. copy_constant                  $5 = 0x00000002 (2.802597e-45)
133  133. swizzle_4                      $5..8 = ($5..8).xxxx
134  134. div_4_ints                     $1..4 /= $5..8
135  135. copy_4_slots_masked            val = Mask($1..4)
136  136. copy_4_slots_unmasked          $1..4 = ok, val(0..2)
137  137. copy_slot_unmasked             $5 = val(3)
138  138. copy_slot_unmasked             $6 = unknown
139  139. swizzle_4                      $6..9 = ($6..9).xxxx
140  140. cmpeq_4_ints                   $2..5 = equal($2..5, $6..9)
141  141. bitwise_and_2_ints             $2..3 &= $4..5
142  142. bitwise_and_int                $2 &= $3
143  143. bitwise_and_int                $1 &= $2
144  144. copy_slot_masked               ok = Mask($1)
145  145. copy_slot_masked               [test_int].result = Mask($1)
146  146. label                          label 0x00000002
147  147. copy_slot_masked               $0 = Mask($1)
148  148. label                          label 0x00000001
149  149. load_condition_mask            CondMask = $12
150  150. swizzle_4                      $0..3 = ($0..3).xxxx
151  151. copy_4_constants               $4..7 = colorRed
152  152. copy_4_constants               $8..11 = colorGreen
153  153. mix_4_ints                     $0..3 = mix($4..7, $8..11, $0..3)
154  154. copy_4_slots_unmasked          [main].result = $0..3
155  155. load_src                       src.rgba = [main].result
156