diff options
Diffstat (limited to 'src/video_core/renderer_vulkan')
| -rw-r--r-- | src/video_core/renderer_vulkan/vk_shader_decompiler.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp b/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp index 808a265e5..1749e068e 100644 --- a/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp +++ b/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp | |||
| @@ -1361,7 +1361,9 @@ private: | |||
| 1361 | Expression target{}; | 1361 | Expression target{}; |
| 1362 | if (const auto gpr = std::get_if<GprNode>(&*dest)) { | 1362 | if (const auto gpr = std::get_if<GprNode>(&*dest)) { |
| 1363 | if (gpr->GetIndex() == Register::ZeroIndex) { | 1363 | if (gpr->GetIndex() == Register::ZeroIndex) { |
| 1364 | // Writing to Register::ZeroIndex is a no op | 1364 | // Writing to Register::ZeroIndex is a no op but we still have to visit its source |
| 1365 | // because it might have side effects. | ||
| 1366 | Visit(src); | ||
| 1365 | return {}; | 1367 | return {}; |
| 1366 | } | 1368 | } |
| 1367 | target = {registers.at(gpr->GetIndex()), Type::Float}; | 1369 | target = {registers.at(gpr->GetIndex()), Type::Float}; |