From 876fa656f6f94e11517571924d699a2451b00288 Mon Sep 17 00:00:00 2001 From: gdkchan Date: Sun, 1 Nov 2020 15:17:29 -0300 Subject: [PATCH] Remove unused texture and sampler pool invalidation code (#1648) --- Ryujinx.Graphics.Gpu/Image/Pool.cs | 40 ------------------- .../Image/TextureBindingsManager.cs | 12 ------ .../Image/TexturePoolCache.cs | 15 ------- 3 files changed, 67 deletions(-) diff --git a/Ryujinx.Graphics.Gpu/Image/Pool.cs b/Ryujinx.Graphics.Gpu/Image/Pool.cs index ff7a783b..dc0774ec 100644 --- a/Ryujinx.Graphics.Gpu/Image/Pool.cs +++ b/Ryujinx.Graphics.Gpu/Image/Pool.cs @@ -86,46 +86,6 @@ namespace Ryujinx.Graphics.Gpu.Image }); } - private void InvalidateRangeInternal(ulong offset, int size) - { - InvalidateRangeImpl(Address + offset, (ulong)size); - } - - /// - /// Invalidates a range of memory of the GPU resource pool. - /// Entries that falls inside the speicified range will be invalidated, - /// causing all the data to be reloaded from guest memory. - /// - /// The start address of the range to invalidate - /// The size of the range to invalidate - public void InvalidateRange(ulong address, ulong size) - { - ulong endAddress = address + size; - - ulong texturePoolEndAddress = Address + Size; - - // If the range being invalidated is not overlapping the texture pool range, - // then we don't have anything to do, exit early. - if (address >= texturePoolEndAddress || endAddress <= Address) - { - return; - } - - if (address < Address) - { - address = Address; - } - - if (endAddress > texturePoolEndAddress) - { - endAddress = texturePoolEndAddress; - } - - size = endAddress - address; - - InvalidateRangeImpl(address, size); - } - protected abstract void InvalidateRangeImpl(ulong address, ulong size); protected abstract void Delete(T item); diff --git a/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs b/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs index 13a275b8..e70b0933 100644 --- a/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs +++ b/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs @@ -394,18 +394,6 @@ namespace Ryujinx.Graphics.Gpu.Image return (packedId >> 20) & 0xfff; } - /// - /// Invalidates a range of memory on all GPU resource pools (both texture and sampler pools). - /// - /// Start address of the range to invalidate - /// Size of the range to invalidate - public void InvalidatePoolRange(ulong address, ulong size) - { - _samplerPool?.InvalidateRange(address, size); - - _texturePoolCache.InvalidateRange(address, size); - } - /// /// Force all bound textures and images to be rebound the next time CommitBindings is called. /// diff --git a/Ryujinx.Graphics.Gpu/Image/TexturePoolCache.cs b/Ryujinx.Graphics.Gpu/Image/TexturePoolCache.cs index 2e5c2b5d..268cec38 100644 --- a/Ryujinx.Graphics.Gpu/Image/TexturePoolCache.cs +++ b/Ryujinx.Graphics.Gpu/Image/TexturePoolCache.cs @@ -72,20 +72,5 @@ namespace Ryujinx.Graphics.Gpu.Image return pool; } - - /// - /// Invalidates a memory range of all intersecting texture pools on the cache. - /// - /// Start address of the range to invalidate - /// Size of the range to invalidate - public void InvalidateRange(ulong address, ulong size) - { - for (LinkedListNode node = _pools.First; node != null; node = node.Next) - { - TexturePool pool = node.Value; - - pool.InvalidateRange(address, size); - } - } } } \ No newline at end of file