summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar bunnei2018-07-23 19:21:28 -0400
committerGravatar bunnei2018-07-23 21:08:40 -0400
commit81aa02424bfd3f6b518684de256e925baccea5fd (patch)
tree70dae00a044341eade518dcdce58723b84ef1a41
parentMerge pull request #775 from lioncash/str (diff)
downloadyuzu-81aa02424bfd3f6b518684de256e925baccea5fd.tar.gz
yuzu-81aa02424bfd3f6b518684de256e925baccea5fd.tar.xz
yuzu-81aa02424bfd3f6b518684de256e925baccea5fd.zip
gl_shader_decompiler: Check if SetRegister result is ZeroIndex.
-rw-r--r--src/video_core/renderer_opengl/gl_shader_decompiler.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp
index ba827181b..02ed86e5a 100644
--- a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp
+++ b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp
@@ -485,6 +485,12 @@ private:
485 */ 485 */
486 void SetRegister(const Register& reg, u64 elem, const std::string& value, 486 void SetRegister(const Register& reg, u64 elem, const std::string& value,
487 u64 dest_num_components, u64 value_num_components, u64 dest_elem) { 487 u64 dest_num_components, u64 value_num_components, u64 dest_elem) {
488 if (reg == Register::ZeroIndex) {
489 LOG_CRITICAL(HW_GPU, "Cannot set Register::ZeroIndex");
490 UNREACHABLE();
491 return;
492 }
493
488 std::string dest = GetRegister(reg, static_cast<u32>(dest_elem)); 494 std::string dest = GetRegister(reg, static_cast<u32>(dest_elem));
489 if (dest_num_components > 1) { 495 if (dest_num_components > 1) {
490 dest += GetSwizzle(elem); 496 dest += GetSwizzle(elem);