From b9200dd734d4201ec9d8e07e203152d32392a69e Mon Sep 17 00:00:00 2001 From: gdkchan Date: Fri, 8 Jan 2021 22:55:55 -0300 Subject: Support conditional on BRK and SYNC shader instructions (#1878) * Support conditional on BRK and SYNC shader instructions * Add TODO comment and bump cache version --- Ryujinx.Graphics.Shader/Instructions/InstEmitFlow.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'Ryujinx.Graphics.Shader/Instructions') diff --git a/Ryujinx.Graphics.Shader/Instructions/InstEmitFlow.cs b/Ryujinx.Graphics.Shader/Instructions/InstEmitFlow.cs index 332074ae..d4ab5955 100644 --- a/Ryujinx.Graphics.Shader/Instructions/InstEmitFlow.cs +++ b/Ryujinx.Graphics.Shader/Instructions/InstEmitFlow.cs @@ -146,6 +146,7 @@ namespace Ryujinx.Graphics.Shader.Instructions } else { + // TODO: Support CC here aswell (condition). foreach (KeyValuePair kv in op.Targets) { OpCodePush pushOp = kv.Key; @@ -176,9 +177,9 @@ namespace Ryujinx.Graphics.Shader.Instructions Operand pred = Register(op.Predicate); - if (op is OpCodeBranch opBranch && opBranch.Condition != Condition.Always) + if (op is OpCodeConditional opCond && opCond.Condition != Condition.Always) { - Operand cond = GetCondition(context, opBranch.Condition); + Operand cond = GetCondition(context, opCond.Condition); if (op.Predicate.IsPT) { -- cgit v1.2.3