diff options
| author | riperiperi <rhy3756547@hotmail.com> | 2020-02-03 19:11:22 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-02-03 20:11:22 +0100 |
| commit | a0e6647860b689cd2c3d865e6b235b12ec96b89a (patch) | |
| tree | f9971370f18c50c4163c8a0c0a0224a9ce0f427c /Ryujinx.Graphics.Gpu/Memory/MemoryManager.cs | |
| parent | 796e5d14b4fadc15439d273f8ff8f9e9afc4033a (diff) | |
Compare shader code using a span instead of individual reads. (#917)
* Compare shader code using a span instead of individual reads.
* Add comment for new parameter.
* Remove unnecessary Math.Min
Diffstat (limited to 'Ryujinx.Graphics.Gpu/Memory/MemoryManager.cs')
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Memory/MemoryManager.cs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Ryujinx.Graphics.Gpu/Memory/MemoryManager.cs b/Ryujinx.Graphics.Gpu/Memory/MemoryManager.cs index ffca6f33..e89255c8 100644 --- a/Ryujinx.Graphics.Gpu/Memory/MemoryManager.cs +++ b/Ryujinx.Graphics.Gpu/Memory/MemoryManager.cs @@ -237,14 +237,19 @@ namespace Ryujinx.Graphics.Gpu.Memory /// Gets the number of mapped or reserved pages on a given region. /// </summary> /// <param name="gpuVa">Start GPU virtual address of the region</param> + /// <param name="maxSize">Maximum size of the data</param> /// <returns>Mapped size in bytes of the specified region</returns> - internal ulong GetSubSize(ulong gpuVa) + internal ulong GetSubSize(ulong gpuVa, ulong maxSize) { ulong size = 0; while (GetPte(gpuVa + size) != PteUnmapped) { size += PageSize; + if (size >= maxSize) + { + return maxSize; + } } return size; |
