diff options
| author | 2021-04-01 07:52:36 +0200 | |
|---|---|---|
| committer | 2021-07-22 21:51:25 -0400 | |
| commit | 5ed8f2438498d3281c2ce8621869995de3908413 (patch) | |
| tree | be8c944e46c0ce84def6e38cee63324915ac83a4 /src | |
| parent | shader: Fold composite extract (diff) | |
| download | yuzu-5ed8f2438498d3281c2ce8621869995de3908413.tar.gz yuzu-5ed8f2438498d3281c2ce8621869995de3908413.tar.xz yuzu-5ed8f2438498d3281c2ce8621869995de3908413.zip | |
shader: Stub VOTE.VTG
Diffstat (limited to 'src')
4 files changed, 15 insertions, 4 deletions
diff --git a/src/shader_recompiler/frontend/ir/ir_emitter.cpp b/src/shader_recompiler/frontend/ir/ir_emitter.cpp index edf8c05d4..5258ede09 100644 --- a/src/shader_recompiler/frontend/ir/ir_emitter.cpp +++ b/src/shader_recompiler/frontend/ir/ir_emitter.cpp | |||
| @@ -256,6 +256,13 @@ static U1 GetFlowTest(IREmitter& ir, FlowTest flow_test) { | |||
| 256 | return ir.LogicalOr(ir.GetSFlag(), ir.GetZFlag()); | 256 | return ir.LogicalOr(ir.GetSFlag(), ir.GetZFlag()); |
| 257 | case FlowTest::RGT: | 257 | case FlowTest::RGT: |
| 258 | return ir.LogicalAnd(ir.LogicalNot(ir.GetSFlag()), ir.LogicalNot(ir.GetZFlag())); | 258 | return ir.LogicalAnd(ir.LogicalNot(ir.GetSFlag()), ir.LogicalNot(ir.GetZFlag())); |
| 259 | case FlowTest::CSM_TA: | ||
| 260 | case FlowTest::CSM_TR: | ||
| 261 | case FlowTest::CSM_MX: | ||
| 262 | case FlowTest::FCSM_TA: | ||
| 263 | case FlowTest::FCSM_TR: | ||
| 264 | case FlowTest::FCSM_MX: | ||
| 265 | return ir.Imm1(false); | ||
| 259 | default: | 266 | default: |
| 260 | throw NotImplementedException("Flow test {}", flow_test); | 267 | throw NotImplementedException("Flow test {}", flow_test); |
| 261 | } | 268 | } |
diff --git a/src/shader_recompiler/frontend/maxwell/translate/impl/move_special_register.cpp b/src/shader_recompiler/frontend/maxwell/translate/impl/move_special_register.cpp index 93cea302a..a295f4c5e 100644 --- a/src/shader_recompiler/frontend/maxwell/translate/impl/move_special_register.cpp +++ b/src/shader_recompiler/frontend/maxwell/translate/impl/move_special_register.cpp | |||
| @@ -95,6 +95,10 @@ enum class SpecialRegister : u64 { | |||
| 95 | return ir.WorkgroupIdY(); | 95 | return ir.WorkgroupIdY(); |
| 96 | case SpecialRegister::SR_CTAID_Z: | 96 | case SpecialRegister::SR_CTAID_Z: |
| 97 | return ir.WorkgroupIdZ(); | 97 | return ir.WorkgroupIdZ(); |
| 98 | case SpecialRegister::SR_WSCALEFACTOR_XY: | ||
| 99 | return ir.Imm32(Common::BitCast<u32>(1.0f)); | ||
| 100 | case SpecialRegister::SR_WSCALEFACTOR_Z: | ||
| 101 | return ir.Imm32(Common::BitCast<u32>(1.0f)); | ||
| 98 | default: | 102 | default: |
| 99 | throw NotImplementedException("S2R special register {}", special_register); | 103 | throw NotImplementedException("S2R special register {}", special_register); |
| 100 | } | 104 | } |
diff --git a/src/shader_recompiler/frontend/maxwell/translate/impl/not_implemented.cpp b/src/shader_recompiler/frontend/maxwell/translate/impl/not_implemented.cpp index ba526817a..83ed0c0fd 100644 --- a/src/shader_recompiler/frontend/maxwell/translate/impl/not_implemented.cpp +++ b/src/shader_recompiler/frontend/maxwell/translate/impl/not_implemented.cpp | |||
| @@ -329,10 +329,6 @@ void TranslatorVisitor::VADD(u64) { | |||
| 329 | ThrowNotImplemented(Opcode::VADD); | 329 | ThrowNotImplemented(Opcode::VADD); |
| 330 | } | 330 | } |
| 331 | 331 | ||
| 332 | void TranslatorVisitor::VOTE_vtg(u64) { | ||
| 333 | ThrowNotImplemented(Opcode::VOTE_vtg); | ||
| 334 | } | ||
| 335 | |||
| 336 | void TranslatorVisitor::VSET(u64) { | 332 | void TranslatorVisitor::VSET(u64) { |
| 337 | ThrowNotImplemented(Opcode::VSET); | 333 | ThrowNotImplemented(Opcode::VSET); |
| 338 | } | 334 | } |
diff --git a/src/shader_recompiler/frontend/maxwell/translate/impl/vote.cpp b/src/shader_recompiler/frontend/maxwell/translate/impl/vote.cpp index a88894a7e..391520a18 100644 --- a/src/shader_recompiler/frontend/maxwell/translate/impl/vote.cpp +++ b/src/shader_recompiler/frontend/maxwell/translate/impl/vote.cpp | |||
| @@ -49,4 +49,8 @@ void TranslatorVisitor::VOTE(u64 insn) { | |||
| 49 | Vote(*this, insn); | 49 | Vote(*this, insn); |
| 50 | } | 50 | } |
| 51 | 51 | ||
| 52 | void TranslatorVisitor::VOTE_vtg(u64) { | ||
| 53 | // Stub | ||
| 54 | } | ||
| 55 | |||
| 52 | } // namespace Shader::Maxwell | 56 | } // namespace Shader::Maxwell |