diff options
| author | bunnei <bunneidev@gmail.com> | 2018-09-02 10:43:48 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-09-02 10:43:48 -0400 |
| commit | 1ccc0457d5942985386dbbd68387808008429193 (patch) | |
| tree | 68b8f0dfc58a2fd5c58931b4ff0ffb982b12b80b /src/video_core/renderer_opengl | |
| parent | 7a439630bb316618d2438001568887ace029b975 (diff) | |
| parent | 60754b472888b9eb3f69f57978512503d61b3915 (diff) | |
Merge pull request #1218 from ogniK5377/fmul-assert
Added FMUL asserts
Diffstat (limited to 'src/video_core/renderer_opengl')
| -rw-r--r-- | src/video_core/renderer_opengl/gl_shader_decompiler.cpp | 9 |
1 files changed, 9 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 391c92d47..866afc7b5 100644 --- a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp +++ b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp @@ -1038,6 +1038,15 @@ private: case OpCode::Id::FMUL_R: case OpCode::Id::FMUL_IMM: { // FMUL does not have 'abs' bits and only the second operand has a 'neg' bit. + ASSERT_MSG(instr.fmul.tab5cb8_2 == 0, "FMUL tab5cb8_2({}) is not implemented", + instr.fmul.tab5cb8_2.Value()); + ASSERT_MSG(instr.fmul.tab5c68_1 == 0, "FMUL tab5cb8_1({}) is not implemented", + instr.fmul.tab5c68_1.Value()); + ASSERT_MSG(instr.fmul.tab5c68_0 == 1, "FMUL tab5cb8_0({}) is not implemented", + instr.fmul.tab5c68_0 + .Value()); // SMO typical sends 1 here which seems to be the default + ASSERT_MSG(instr.fmul.cc == 0, "FMUL cc is not implemented"); + op_b = GetOperandAbsNeg(op_b, false, instr.fmul.negate_b); regs.SetRegisterToFloat(instr.gpr0, 0, op_a + " * " + op_b, 1, 1, instr.alu.saturate_d); |
