diff options
author | bunnei <bunneidev@gmail.com> | 2018-12-27 13:55:21 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-27 13:55:21 -0500 |
commit | e84e4fd3f8f3d42a37206ea743fac35f5161ea14 (patch) | |
tree | b36c0db987191ab7a551f6e0596321f7019ab7ff | |
parent | 795335af0f37ce25da3c3ca8eeab62c50f87d366 (diff) | |
parent | fbe900ba6da524cd0f6831bcafdd373f8a7d650c (diff) |
Merge pull request #1951 from Tinob/master
Add missing uintBitsToFloat to SetRegisterToHalfFloat
-rw-r--r-- | src/video_core/renderer_opengl/gl_shader_decompiler.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp index a1cef99ae..1bb09e61b 100644 --- a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp +++ b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp @@ -493,10 +493,10 @@ public: // pack. I couldn't test this on hardware but it shouldn't really matter since most // of the time when a Mrg_* flag is used both components will be mirrored. That // being said, it deserves a test. - return "((" + GetRegisterAsInteger(reg, 0, false) + + return "uintBitsToFloat((" + GetRegisterAsInteger(reg, 0, false) + " & 0xffff0000) | (packHalf2x16(" + value + ") & 0x0000ffff))"; case Tegra::Shader::HalfMerge::Mrg_H1: - return "((" + GetRegisterAsInteger(reg, 0, false) + + return "uintBitsToFloat((" + GetRegisterAsInteger(reg, 0, false) + " & 0x0000ffff) | (packHalf2x16(" + value + ") & 0xffff0000))"; default: UNREACHABLE(); |