aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs')
-rw-r--r--Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs15
1 files changed, 9 insertions, 6 deletions
diff --git a/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs b/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs
index a76df6a1..1b303caf 100644
--- a/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs
+++ b/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs
@@ -128,13 +128,16 @@ namespace Ryujinx.Graphics.Shader.Translation.Optimizations
int cbufOffset = src0.GetCbufOffset();
int cbufSlot = src0.GetCbufSlot();
- if (texOp.Inst == Instruction.ImageAtomic)
+ if (texOp.Format == TextureFormat.Unknown)
{
- texOp.Format = config.GetTextureFormatAtomic(cbufOffset, cbufSlot);
- }
- else
- {
- texOp.Format = config.GetTextureFormat(cbufOffset, cbufSlot);
+ if (texOp.Inst == Instruction.ImageAtomic)
+ {
+ texOp.Format = config.GetTextureFormatAtomic(cbufOffset, cbufSlot);
+ }
+ else
+ {
+ texOp.Format = config.GetTextureFormat(cbufOffset, cbufSlot);
+ }
}
SetHandle(config, texOp, cbufOffset, cbufSlot, false);