diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2019-04-09 22:34:11 +0200 |
---|---|---|
committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2019-04-16 02:16:09 +0200 |
commit | 90cbf89303d5252fdd14dba99447edc9c7c73722 (patch) | |
tree | 6f52b0330c91e1c61e73e8601731e4be22c3843b /src | |
parent | renderer_opengl: Implement half float NaN comparisons (diff) | |
download | yuzu-90cbf89303d5252fdd14dba99447edc9c7c73722.tar yuzu-90cbf89303d5252fdd14dba99447edc9c7c73722.tar.gz yuzu-90cbf89303d5252fdd14dba99447edc9c7c73722.tar.bz2 yuzu-90cbf89303d5252fdd14dba99447edc9c7c73722.tar.lz yuzu-90cbf89303d5252fdd14dba99447edc9c7c73722.tar.xz yuzu-90cbf89303d5252fdd14dba99447edc9c7c73722.tar.zst yuzu-90cbf89303d5252fdd14dba99447edc9c7c73722.zip |
Diffstat (limited to 'src')
-rw-r--r-- | src/video_core/shader/decode/arithmetic_half.cpp | 4 | ||||
-rw-r--r-- | src/video_core/shader/decode/arithmetic_half_immediate.cpp | 4 | ||||
-rw-r--r-- | src/video_core/shader/decode/half_set.cpp | 4 |
3 files changed, 9 insertions, 3 deletions
diff --git a/src/video_core/shader/decode/arithmetic_half.cpp b/src/video_core/shader/decode/arithmetic_half.cpp index baee89107..8cf49314d 100644 --- a/src/video_core/shader/decode/arithmetic_half.cpp +++ b/src/video_core/shader/decode/arithmetic_half.cpp @@ -18,7 +18,9 @@ u32 ShaderIR::DecodeArithmeticHalf(NodeBlock& bb, u32 pc) { if (opcode->get().GetId() == OpCode::Id::HADD2_C || opcode->get().GetId() == OpCode::Id::HADD2_R) { - UNIMPLEMENTED_IF(instr.alu_half.ftz != 0); + if (instr.alu_half.ftz != 0) { + LOG_WARNING(HW_GPU, "{} FTZ not implemented", opcode->get().GetName()); + } } UNIMPLEMENTED_IF_MSG(instr.alu_half.saturate != 0, "Half float saturation not implemented"); diff --git a/src/video_core/shader/decode/arithmetic_half_immediate.cpp b/src/video_core/shader/decode/arithmetic_half_immediate.cpp index c2164ba50..4a5b0620e 100644 --- a/src/video_core/shader/decode/arithmetic_half_immediate.cpp +++ b/src/video_core/shader/decode/arithmetic_half_immediate.cpp @@ -17,7 +17,9 @@ u32 ShaderIR::DecodeArithmeticHalfImmediate(NodeBlock& bb, u32 pc) { const auto opcode = OpCode::Decode(instr); if (opcode->get().GetId() == OpCode::Id::HADD2_IMM) { - UNIMPLEMENTED_IF(instr.alu_half_imm.ftz != 0); + if (instr.alu_half_imm.ftz != 0) { + LOG_WARNING(HW_GPU, "{} FTZ not implemented", opcode->get().GetName()); + } } else { UNIMPLEMENTED_IF(instr.alu_half_imm.precision != Tegra::Shader::HalfPrecision::None); } diff --git a/src/video_core/shader/decode/half_set.cpp b/src/video_core/shader/decode/half_set.cpp index 748368555..d07625741 100644 --- a/src/video_core/shader/decode/half_set.cpp +++ b/src/video_core/shader/decode/half_set.cpp @@ -18,7 +18,9 @@ u32 ShaderIR::DecodeHalfSet(NodeBlock& bb, u32 pc) { const Instruction instr = {program_code[pc]}; const auto opcode = OpCode::Decode(instr); - UNIMPLEMENTED_IF(instr.hset2.ftz != 0); + if (instr.hset2.ftz != 0) { + LOG_WARNING(HW_GPU, "{} FTZ not implemented", opcode->get().GetName()); + } // instr.hset2.type_a // instr.hset2.type_b |