diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-04-13 03:39:57 +0200 |
---|---|---|
committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-04-13 03:39:59 +0200 |
commit | 05cf27083608bebd3ee4c38f2f948c8f2030f881 (patch) | |
tree | a3ce029d177cc1789ec17ecaf26e7baa0f4d53af /src/video_core/renderer_opengl | |
parent | gl_shader_decompiler: Improve generated code in HMergeH* (diff) | |
download | yuzu-05cf27083608bebd3ee4c38f2f948c8f2030f881.tar yuzu-05cf27083608bebd3ee4c38f2f948c8f2030f881.tar.gz yuzu-05cf27083608bebd3ee4c38f2f948c8f2030f881.tar.bz2 yuzu-05cf27083608bebd3ee4c38f2f948c8f2030f881.tar.lz yuzu-05cf27083608bebd3ee4c38f2f948c8f2030f881.tar.xz yuzu-05cf27083608bebd3ee4c38f2f948c8f2030f881.tar.zst yuzu-05cf27083608bebd3ee4c38f2f948c8f2030f881.zip |
Diffstat (limited to 'src/video_core/renderer_opengl')
-rw-r--r-- | src/video_core/renderer_opengl/gl_shader_decompiler.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp index 59bbd1211..1f1f01313 100644 --- a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp +++ b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp @@ -1821,15 +1821,13 @@ private: Expression HMergeH0(Operation operation) { const std::string dest = VisitOperand(operation, 0).AsUint(); const std::string src = VisitOperand(operation, 1).AsUint(); - return {fmt::format("vec2(unpackHalf2x16({}).x, unpackHalf2x16({}).y)", src, dest), - Type::HalfFloat}; + return {fmt::format("bitfieldInsert({}, {}, 0, 16)", dest, src), Type::Uint}; } Expression HMergeH1(Operation operation) { const std::string dest = VisitOperand(operation, 0).AsUint(); const std::string src = VisitOperand(operation, 1).AsUint(); - return {fmt::format("vec2(unpackHalf2x16({}).x, unpackHalf2x16({}).y)", dest, src), - Type::HalfFloat}; + return {fmt::format("bitfieldInsert({}, {}, 16, 16)", dest, src), Type::Uint}; } Expression HPack2(Operation operation) { |