diff options
| author | 2019-11-02 23:44:13 -0300 | |
|---|---|---|
| committer | 2019-11-07 20:08:41 -0300 | |
| commit | 08b2b1080a2e5794c65ebb999c435f6eb9d1aa26 (patch) | |
| tree | 07ff442f13d3d74b7d2cb84a62cc2de222a128eb /src/video_core/renderer_vulkan | |
| parent | Merge pull request #3032 from ReinUsesLisp/simplify-control-flow-brx (diff) | |
| download | yuzu-08b2b1080a2e5794c65ebb999c435f6eb9d1aa26.tar.gz yuzu-08b2b1080a2e5794c65ebb999c435f6eb9d1aa26.tar.xz yuzu-08b2b1080a2e5794c65ebb999c435f6eb9d1aa26.zip | |
gl_shader_decompiler: Reimplement shuffles with platform agnostic intrinsics
Diffstat (limited to 'src/video_core/renderer_vulkan')
| -rw-r--r-- | src/video_core/renderer_vulkan/vk_shader_decompiler.cpp | 43 |
1 files changed, 3 insertions, 40 deletions
diff --git a/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp b/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp index 42cf068b6..383720ea1 100644 --- a/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp +++ b/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp | |||
| @@ -1195,42 +1195,12 @@ private: | |||
| 1195 | return {}; | 1195 | return {}; |
| 1196 | } | 1196 | } |
| 1197 | 1197 | ||
| 1198 | Id ShuffleIndexed(Operation) { | 1198 | Id ThreadId(Operation) { |
| 1199 | UNIMPLEMENTED(); | ||
| 1200 | return {}; | ||
| 1201 | } | ||
| 1202 | |||
| 1203 | Id ShuffleUp(Operation) { | ||
| 1204 | UNIMPLEMENTED(); | ||
| 1205 | return {}; | ||
| 1206 | } | ||
| 1207 | |||
| 1208 | Id ShuffleDown(Operation) { | ||
| 1209 | UNIMPLEMENTED(); | ||
| 1210 | return {}; | ||
| 1211 | } | ||
| 1212 | |||
| 1213 | Id ShuffleButterfly(Operation) { | ||
| 1214 | UNIMPLEMENTED(); | 1199 | UNIMPLEMENTED(); |
| 1215 | return {}; | 1200 | return {}; |
| 1216 | } | 1201 | } |
| 1217 | 1202 | ||
| 1218 | Id InRangeShuffleIndexed(Operation) { | 1203 | Id ShuffleIndexed(Operation) { |
| 1219 | UNIMPLEMENTED(); | ||
| 1220 | return {}; | ||
| 1221 | } | ||
| 1222 | |||
| 1223 | Id InRangeShuffleUp(Operation) { | ||
| 1224 | UNIMPLEMENTED(); | ||
| 1225 | return {}; | ||
| 1226 | } | ||
| 1227 | |||
| 1228 | Id InRangeShuffleDown(Operation) { | ||
| 1229 | UNIMPLEMENTED(); | ||
| 1230 | return {}; | ||
| 1231 | } | ||
| 1232 | |||
| 1233 | Id InRangeShuffleButterfly(Operation) { | ||
| 1234 | UNIMPLEMENTED(); | 1204 | UNIMPLEMENTED(); |
| 1235 | return {}; | 1205 | return {}; |
| 1236 | } | 1206 | } |
| @@ -1528,15 +1498,8 @@ private: | |||
| 1528 | &SPIRVDecompiler::VoteAny, | 1498 | &SPIRVDecompiler::VoteAny, |
| 1529 | &SPIRVDecompiler::VoteEqual, | 1499 | &SPIRVDecompiler::VoteEqual, |
| 1530 | 1500 | ||
| 1501 | &SPIRVDecompiler::ThreadId, | ||
| 1531 | &SPIRVDecompiler::ShuffleIndexed, | 1502 | &SPIRVDecompiler::ShuffleIndexed, |
| 1532 | &SPIRVDecompiler::ShuffleUp, | ||
| 1533 | &SPIRVDecompiler::ShuffleDown, | ||
| 1534 | &SPIRVDecompiler::ShuffleButterfly, | ||
| 1535 | |||
| 1536 | &SPIRVDecompiler::InRangeShuffleIndexed, | ||
| 1537 | &SPIRVDecompiler::InRangeShuffleUp, | ||
| 1538 | &SPIRVDecompiler::InRangeShuffleDown, | ||
| 1539 | &SPIRVDecompiler::InRangeShuffleButterfly, | ||
| 1540 | }; | 1503 | }; |
| 1541 | static_assert(operation_decompilers.size() == static_cast<std::size_t>(OperationCode::Amount)); | 1504 | static_assert(operation_decompilers.size() == static_cast<std::size_t>(OperationCode::Amount)); |
| 1542 | 1505 | ||