diff options
| author | 2018-05-29 23:52:54 -0400 | |
|---|---|---|
| committer | 2018-05-29 23:52:54 -0400 | |
| commit | 6fcc7e9c3612cca64b3e6878046fc08b7b327292 (patch) | |
| tree | 8b7f0cb290571e3eec34c7e4abaca0559cb342b6 | |
| parent | gl_shader_decompiler: Partially implement F2F_R instruction. (diff) | |
| download | yuzu-6fcc7e9c3612cca64b3e6878046fc08b7b327292.tar.gz yuzu-6fcc7e9c3612cca64b3e6878046fc08b7b327292.tar.xz yuzu-6fcc7e9c3612cca64b3e6878046fc08b7b327292.zip | |
gl_shader_decompiler: F2F_R instruction: Implement abs.
| -rw-r--r-- | src/video_core/renderer_opengl/gl_shader_decompiler.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp index c17bd7d2c..70ddea643 100644 --- a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp +++ b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp | |||
| @@ -853,7 +853,13 @@ private: | |||
| 853 | break; | 853 | break; |
| 854 | } | 854 | } |
| 855 | case OpCode::Id::F2F_R: { | 855 | case OpCode::Id::F2F_R: { |
| 856 | regs.SetRegisterToFloat(instr.gpr0, 0, regs.GetRegisterAsFloat(instr.gpr20), 1, 1); | 856 | std::string op_a = regs.GetRegisterAsFloat(instr.gpr20); |
| 857 | |||
| 858 | if (instr.conversion.abs_a) { | ||
| 859 | op_a = "abs(" + op_a + ')'; | ||
| 860 | } | ||
| 861 | |||
| 862 | regs.SetRegisterToFloat(instr.gpr0, 0, op_a, 1, 1); | ||
| 857 | break; | 863 | break; |
| 858 | } | 864 | } |
| 859 | default: { | 865 | default: { |