summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2020-07-16 16:08:39 -0300
committerReinUsesLisp <reinuseslisp@airmail.cc>2020-07-16 16:09:39 -0300
commit210cc0204d63c65f314c0f5de21f172dc006083f (patch)
tree41f2d3259826486c3553ed4190a51eeb6f1a39ec /src
parent263200f982f1c8509450721cf5fa9d8639c198ef (diff)
decode/other: Implement S2R.LaneId
This maps to host's thread id. - Fixes graphical issues on Paper Mario.
Diffstat (limited to 'src')
-rw-r--r--src/video_core/shader/decode/other.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/video_core/shader/decode/other.cpp b/src/video_core/shader/decode/other.cpp
index c0a8f233f..29a7cfbfe 100644
--- a/src/video_core/shader/decode/other.cpp
+++ b/src/video_core/shader/decode/other.cpp
@@ -75,8 +75,7 @@ u32 ShaderIR::DecodeOther(NodeBlock& bb, u32 pc) {
const Node value = [this, instr] {
switch (instr.sys20) {
case SystemVariable::LaneId:
- LOG_WARNING(HW_GPU, "S2R instruction with LaneId is incomplete");
- return Immediate(0U);
+ return Operation(OperationCode::ThreadId);
case SystemVariable::InvocationId:
return Operation(OperationCode::InvocationId);
case SystemVariable::Ydirection: