This fixes a potential regression with the new range list changes, where the cost for creating new ones would be rather large due to creating a 1024 size array. Also reduces cost for range list inheritance by using the first existing range list as a base, rather than creating a new one then adding both lists to it. The growth size for the RangeList is now identical to its initial size. Every 32 elements was probably a little too common - now it is 1024 for most things and 8 for the buffer modified range list. The Unmapped and SyncMethod methods have been changed to ensure that they behave properly if the range list is set null. Cleaned up a few calls to use the null-conditional operator. |
||
|---|---|---|
| .. | ||
| Range | ||
| Tracking | ||
| WindowsShared | ||
| AddressSpaceManager.cs | ||
| IRefCounted.cs | ||
| IVirtualMemoryManager.cs | ||
| IWritableBlock.cs | ||
| InvalidAccessHandler.cs | ||
| InvalidMemoryRegionException.cs | ||
| MemoryAllocationFlags.cs | ||
| MemoryBlock.cs | ||
| MemoryConstants.cs | ||
| MemoryManagement.cs | ||
| MemoryManagementUnix.cs | ||
| MemoryManagementWindows.cs | ||
| MemoryNotContiguousException.cs | ||
| MemoryPermission.cs | ||
| MemoryProtectionException.cs | ||
| NativeMemoryManager.cs | ||
| PageTable.cs | ||
| Ryujinx.Memory.csproj | ||
| WritableRegion.cs | ||