diff options
| author | 2023-08-03 12:18:35 +0100 | |
|---|---|---|
| committer | 2023-08-03 15:30:27 +0100 | |
| commit | dfb7fc8293a528d6c8cc2abef7fac5a6a7bf2883 (patch) | |
| tree | faf1c9bce2d7159b0f9b7bb3cdd08be7f47f7847 /src/video_core/shader_cache.cpp | |
| parent | Merge pull request #11202 from abouvier/vulkan-config (diff) | |
| download | yuzu-dfb7fc8293a528d6c8cc2abef7fac5a6a7bf2883.tar.gz yuzu-dfb7fc8293a528d6c8cc2abef7fac5a6a7bf2883.tar.xz yuzu-dfb7fc8293a528d6c8cc2abef7fac5a6a7bf2883.zip | |
Fix shader dumps with nvdisasm
skip fragment shaders when rasterizer is disabled
initialize env_ptrs
Diffstat (limited to 'src/video_core/shader_cache.cpp')
| -rw-r--r-- | src/video_core/shader_cache.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/video_core/shader_cache.cpp b/src/video_core/shader_cache.cpp index 01701201d..e81cd031b 100644 --- a/src/video_core/shader_cache.cpp +++ b/src/video_core/shader_cache.cpp | |||
| @@ -51,6 +51,11 @@ bool ShaderCache::RefreshStages(std::array<u64, 6>& unique_hashes) { | |||
| 51 | } | 51 | } |
| 52 | const auto& shader_config{maxwell3d->regs.pipelines[index]}; | 52 | const auto& shader_config{maxwell3d->regs.pipelines[index]}; |
| 53 | const auto program{static_cast<Tegra::Engines::Maxwell3D::Regs::ShaderType>(index)}; | 53 | const auto program{static_cast<Tegra::Engines::Maxwell3D::Regs::ShaderType>(index)}; |
| 54 | if (program == Tegra::Engines::Maxwell3D::Regs::ShaderType::Pixel && | ||
| 55 | !maxwell3d->regs.rasterize_enable) { | ||
| 56 | unique_hashes[index] = 0; | ||
| 57 | continue; | ||
| 58 | } | ||
| 54 | const GPUVAddr shader_addr{base_addr + shader_config.offset}; | 59 | const GPUVAddr shader_addr{base_addr + shader_config.offset}; |
| 55 | const std::optional<VAddr> cpu_shader_addr{gpu_memory->GpuToCpuAddress(shader_addr)}; | 60 | const std::optional<VAddr> cpu_shader_addr{gpu_memory->GpuToCpuAddress(shader_addr)}; |
| 56 | if (!cpu_shader_addr) { | 61 | if (!cpu_shader_addr) { |