Ryujinx/src/Ryujinx.Graphics.Gpu
riperiperi 95bad6995c
GPU: Fix shader cache assuming past shader data was mapped (#4885)
This fixes a potential issue where a shader lookup could match the address of a previous _different_ shader, but that shader is now partially unmapped. This would just crash with an invalid region exception.

To compare a shader in the address cache with one in memory, we get the memory at the location with the previous shader's size. However, it's possible it has been unmapped and then remapped with a smaller size. In this case, we should just get back the mapped portion of the shader, which will then fail the comparison immediately and get to compile/lookup for the new one.

This might fix a random crash in TOTK that was reported by Piplup. I don't know if it does, because I don't have the game yet.
2023-05-11 18:41:34 +02:00
..
Engine Allow any shader SSBO constant buffer slot and offset (#2237) 2023-05-05 14:20:20 +00:00
Image GPU: Remove CPU region handle containers (#4817) 2023-05-05 23:40:46 +02:00
Memory GPU: Remove CPU region handle containers (#4817) 2023-05-05 23:40:46 +02:00
Shader GPU: Fix shader cache assuming past shader data was mapped (#4885) 2023-05-11 18:41:34 +02:00
Synchronization GPU: Pre-emptively flush textures that are flushed often (to imported memory when available) (#4711) 2023-05-01 16:05:12 -03:00
ClassId.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
Constants.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
GpuChannel.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
GpuContext.cs GPU: Pre-emptively flush textures that are flushed often (to imported memory when available) (#4711) 2023-05-01 16:05:12 -03:00
GraphicsConfig.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
Ryujinx.Graphics.Gpu.csproj Move solution and projects to src 2023-04-27 23:51:14 +02:00
Window.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00