From d274328c3192fd85b9eec661b00f1599d673776c Mon Sep 17 00:00:00 2001 From: gdk <gab.dark.100@gmail.com> Date: Sun, 10 Nov 2019 11:03:38 -0300 Subject: Fix image units bindings and shader dump in the presence of NOPs --- Ryujinx.Graphics.Gpu/Engine/ShaderCache.cs | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) (limited to 'Ryujinx.Graphics.Gpu/Engine/ShaderCache.cs') diff --git a/Ryujinx.Graphics.Gpu/Engine/ShaderCache.cs b/Ryujinx.Graphics.Gpu/Engine/ShaderCache.cs index d280ea6f..922f4a44 100644 --- a/Ryujinx.Graphics.Gpu/Engine/ShaderCache.cs +++ b/Ryujinx.Graphics.Gpu/Engine/ShaderCache.cs @@ -117,7 +117,13 @@ namespace Ryujinx.Graphics.Gpu.Engine program = Translator.Translate(code, translationConfig); - _dumper.Dump(gpuVa, compute : true); + _dumper.Dump(code, compute : true, out string fullPath, out string codePath); + + if (fullPath != null && codePath != null) + { + program.Prepend("// " + codePath); + program.Prepend("// " + fullPath); + } return program; } @@ -144,8 +150,16 @@ namespace Ryujinx.Graphics.Gpu.Engine program = Translator.Translate(codeA, codeB, translationConfig); - _dumper.Dump(gpuVaA, compute: false); - _dumper.Dump(gpuVa, compute: false); + _dumper.Dump(codeA, compute: false, out string fullPathA, out string codePathA); + _dumper.Dump(codeB, compute: false, out string fullPathB, out string codePathB); + + if (fullPathA != null && fullPathB != null && codePathA != null && codePathB != null) + { + program.Prepend("// " + codePathB); + program.Prepend("// " + fullPathB); + program.Prepend("// " + codePathA); + program.Prepend("// " + fullPathA); + } } else { @@ -153,7 +167,13 @@ namespace Ryujinx.Graphics.Gpu.Engine program = Translator.Translate(code, translationConfig); - _dumper.Dump(gpuVa, compute: false); + _dumper.Dump(code, compute: false, out string fullPath, out string codePath); + + if (fullPath != null && codePath != null) + { + program.Prepend("// " + codePath); + program.Prepend("// " + fullPath); + } } if (program.Stage == ShaderStage.Geometry) -- cgit v1.2.3-70-g09d2