Fix decoding of block after shader BRA.CC instructions without predicate (#3472)
* Fix decoding of block after BRA.CC instructions without predicate * Shader cache version bump
This commit is contained in:
parent
b34de74f81
commit
7f8a3541eb
4 changed files with 9 additions and 4 deletions
|
@ -340,7 +340,7 @@ namespace Ryujinx.Graphics.Shader.Decoders
|
|||
{
|
||||
InstConditional condOp = new InstConditional(op.RawOpCode);
|
||||
|
||||
if (op.Name == InstName.Exit && condOp.Ccc != Ccc.T)
|
||||
if ((op.Name == InstName.Bra || op.Name == InstName.Exit) && condOp.Ccc != Ccc.T)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
@ -672,6 +672,7 @@ namespace Ryujinx.Graphics.Shader.Decoders
|
|||
// Make sure we found the correct address,
|
||||
// the push and pop instruction types must match, so:
|
||||
// - BRK can only consume addresses pushed by PBK.
|
||||
// - CONT can only consume addresses pushed by PCNT.
|
||||
// - SYNC can only consume addresses pushed by SSY.
|
||||
if (found)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue