Use unique temporary variables for function call parameters on SPIR-V (#5757)
* Use unique temporary variables for function call parameters on SPIR-V * Shader cache version bump
This commit is contained in:
parent
f61b7818c3
commit
a0af6e4d07
7 changed files with 33 additions and 49 deletions
|
@ -311,7 +311,6 @@ namespace Ryujinx.Graphics.Shader.CodeGen.Spirv
|
|||
var (function, spvFunc) = context.GetFunction(funcId.Value);
|
||||
|
||||
var args = new SpvInstruction[operation.SourcesCount - 1];
|
||||
var spvLocals = context.GetLocalForArgsPointers(funcId.Value);
|
||||
|
||||
for (int i = 0; i < args.Length; i++)
|
||||
{
|
||||
|
@ -324,12 +323,8 @@ namespace Ryujinx.Graphics.Shader.CodeGen.Spirv
|
|||
else
|
||||
{
|
||||
var type = function.GetArgumentType(i);
|
||||
var value = context.Get(type, operand);
|
||||
var spvLocal = spvLocals[i];
|
||||
|
||||
context.Store(spvLocal, value);
|
||||
|
||||
args[i] = spvLocal;
|
||||
args[i] = context.Get(type, operand);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue