aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDomenico V <35856442+LDj3SNuD@users.noreply.github.com>2023-07-31 03:31:57 +0200
committerGitHub <noreply@github.com>2023-07-30 22:31:57 -0300
commit86931cc3f1f781f8849651e658a222ca821040fa (patch)
treeab4d43aa5a9eaa661dddea3a7a33b38c8ffc7e30 /src
parent2be8b6ea4527239fff1b2fdf9dc7ce1346b173e6 (diff)
(Graphics.Shader): Handle EmitSuatom constant dests and EmitSuld zero dest reg. (#5504)1.1.972
* (Graphics.Shader): Handle EmitSuatom constant dests. * Proper fix for EmitSuatom; fix EmitSuld.
Diffstat (limited to 'src')
-rw-r--r--src/Ryujinx.Graphics.Shader/Instructions/InstEmitSurface.cs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/Ryujinx.Graphics.Shader/Instructions/InstEmitSurface.cs b/src/Ryujinx.Graphics.Shader/Instructions/InstEmitSurface.cs
index 0b929307..6bf7de7f 100644
--- a/src/Ryujinx.Graphics.Shader/Instructions/InstEmitSurface.cs
+++ b/src/Ryujinx.Graphics.Shader/Instructions/InstEmitSurface.cs
@@ -218,7 +218,7 @@ namespace Ryujinx.Graphics.Shader.Instructions
return context.Copy(Register(srcB++, RegisterType.Gpr));
}
- Operand d = dest != RegisterConsts.RegisterZeroIndex ? Register(dest, RegisterType.Gpr) : null;
+ Operand d = Register(dest, RegisterType.Gpr);
List<Operand> sourcesList = new();
@@ -304,6 +304,11 @@ namespace Ryujinx.Graphics.Shader.Instructions
bool byteAddress,
bool isBindless)
{
+ if (srcB == RegisterConsts.RegisterZeroIndex)
+ {
+ return;
+ }
+
context.Config.SetUsedFeature(FeatureFlags.IntegerSampling);
SamplerType type = ConvertSamplerType(dimensions);