diff options
author | gdkchan <gab.dark.100@gmail.com> | 2023-10-03 19:43:11 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-03 22:43:11 +0000 |
commit | a2a97e1b11d38b51231e05a1da5202481cdf4df8 (patch) | |
tree | 97565f52001cbb1dbe2d0899ef60c371bfc5c8ff /src/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs | |
parent | 8b2625b0be3020740a90f167e46f8f665102fef5 (diff) |
Implement textureSamples texture query shader instruction (#5750)1.1.1039
* Implement textureSamples texture query shader instruction
* Shader cache version bump
Diffstat (limited to 'src/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs')
-rw-r--r-- | src/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs b/src/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs index 43d98d3c..19b7999a 100644 --- a/src/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs +++ b/src/Ryujinx.Graphics.Shader/Translation/Optimizations/BindlessElimination.cs @@ -27,9 +27,7 @@ namespace Ryujinx.Graphics.Shader.Translation.Optimizations continue; } - if (texOp.Inst == Instruction.Lod || - texOp.Inst == Instruction.TextureSample || - texOp.Inst == Instruction.TextureSize) + if (texOp.Inst == Instruction.TextureSample || texOp.Inst.IsTextureQuery()) { Operand bindlessHandle = Utils.FindLastOperation(texOp.GetSource(0), block); @@ -40,7 +38,8 @@ namespace Ryujinx.Graphics.Shader.Translation.Optimizations // as long bindless elimination is successful and we know where the texture descriptor is located. bool rewriteSamplerType = texOp.Type == SamplerType.TextureBuffer || - texOp.Inst == Instruction.TextureSize; + texOp.Inst == Instruction.TextureQuerySamples || + texOp.Inst == Instruction.TextureQuerySize; if (bindlessHandle.Type == OperandType.ConstantBuffer) { |