mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2025-07-25 12:47:11 +02:00
misc: chore: Use explicit types in HLE project
This commit is contained in:
parent
58c1ab7989
commit
5eba42fa06
80 changed files with 410 additions and 397 deletions
|
@ -16,7 +16,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
{
|
||||
for (int i = 0; i < MemoryRegions.Length; i++)
|
||||
{
|
||||
var region = MemoryRegions[i];
|
||||
KMemoryRegionManager region = MemoryRegions[i];
|
||||
|
||||
if (address >= region.Address && address < region.EndAddr)
|
||||
{
|
||||
|
@ -41,7 +41,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
{
|
||||
while (pagesCount != 0)
|
||||
{
|
||||
var region = GetMemoryRegion(address);
|
||||
KMemoryRegionManager region = GetMemoryRegion(address);
|
||||
|
||||
ulong countToProcess = Math.Min(pagesCount, region.GetPageOffsetFromEnd(address));
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
|
||||
if (result == Result.Success)
|
||||
{
|
||||
foreach (var node in pageList)
|
||||
foreach (KPageNode node in pageList)
|
||||
{
|
||||
IncrementPagesReferenceCount(node.Address, node.PagesCount);
|
||||
}
|
||||
|
|
|
@ -162,7 +162,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
public bool ClearRange(ulong offset, int count)
|
||||
{
|
||||
int depth = HighestDepthIndex;
|
||||
var bits = _bitStorages[depth];
|
||||
ArraySegment<ulong> bits = _bitStorages[depth];
|
||||
|
||||
int bitInd = (int)(offset / UInt64BitSize);
|
||||
|
||||
|
|
|
@ -105,7 +105,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
_blocksCount = blockShifts.Length;
|
||||
_blocks = new Block[_memoryBlockPageShifts.Length];
|
||||
|
||||
var currBitmapStorage = new ArraySegment<ulong>(new ulong[CalculateManagementOverheadSize(size, blockShifts)]);
|
||||
ArraySegment<ulong> currBitmapStorage = new ArraySegment<ulong>(new ulong[CalculateManagementOverheadSize(size, blockShifts)]);
|
||||
|
||||
for (int i = 0; i < blockShifts.Length; i++)
|
||||
{
|
||||
|
|
|
@ -70,7 +70,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
|
||||
public void IncrementPagesReferenceCount(KMemoryManager manager)
|
||||
{
|
||||
foreach (var node in this)
|
||||
foreach (KPageNode node in this)
|
||||
{
|
||||
manager.IncrementPagesReferenceCount(node.Address, node.PagesCount);
|
||||
}
|
||||
|
@ -78,7 +78,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
|
||||
public void DecrementPagesReferenceCount(KMemoryManager manager)
|
||||
{
|
||||
foreach (var node in this)
|
||||
foreach (KPageNode node in this)
|
||||
{
|
||||
manager.DecrementPagesReferenceCount(node.Address, node.PagesCount);
|
||||
}
|
||||
|
|
|
@ -28,8 +28,8 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
/// <inheritdoc/>
|
||||
protected override void GetPhysicalRegions(ulong va, ulong size, KPageList pageList)
|
||||
{
|
||||
var ranges = _cpuMemory.GetPhysicalRegions(va, size);
|
||||
foreach (var range in ranges)
|
||||
IEnumerable<MemoryRange> ranges = _cpuMemory.GetPhysicalRegions(va, size);
|
||||
foreach (MemoryRange range in ranges)
|
||||
{
|
||||
pageList.AddRange(range.Address + DramMemoryMap.DramBase, range.Size / PageSize);
|
||||
}
|
||||
|
@ -143,11 +143,11 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
bool shouldFillPages,
|
||||
byte fillValue)
|
||||
{
|
||||
using var scopedPageList = new KScopedPageList(Context.MemoryManager, pageList);
|
||||
using KScopedPageList scopedPageList = new KScopedPageList(Context.MemoryManager, pageList);
|
||||
|
||||
ulong currentVa = address;
|
||||
|
||||
foreach (var pageNode in pageList)
|
||||
foreach (KPageNode pageNode in pageList)
|
||||
{
|
||||
ulong addr = pageNode.Address - DramMemoryMap.DramBase;
|
||||
ulong size = pageNode.PagesCount * PageSize;
|
||||
|
@ -188,16 +188,16 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
}
|
||||
}
|
||||
|
||||
using var scopedPageList = new KScopedPageList(Context.MemoryManager, pageList);
|
||||
using KScopedPageList scopedPageList = new KScopedPageList(Context.MemoryManager, pageList);
|
||||
|
||||
foreach (var pageNode in pageList)
|
||||
foreach (KPageNode pageNode in pageList)
|
||||
{
|
||||
Context.CommitMemory(pageNode.Address - DramMemoryMap.DramBase, pageNode.PagesCount * PageSize);
|
||||
}
|
||||
|
||||
ulong offset = 0;
|
||||
|
||||
foreach (var region in regions)
|
||||
foreach (HostMemoryRange region in regions)
|
||||
{
|
||||
_cpuMemory.MapForeign(va + offset, region.Address, region.Size);
|
||||
|
||||
|
@ -214,9 +214,9 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
{
|
||||
KPageList pagesToClose = new();
|
||||
|
||||
var regions = _cpuMemory.GetPhysicalRegions(address, pagesCount * PageSize);
|
||||
IEnumerable<MemoryRange> regions = _cpuMemory.GetPhysicalRegions(address, pagesCount * PageSize);
|
||||
|
||||
foreach (var region in regions)
|
||||
foreach (MemoryRange region in regions)
|
||||
{
|
||||
ulong pa = region.Address + DramMemoryMap.DramBase;
|
||||
if (DramMemoryMap.IsHeapPhysicalAddress(pa))
|
||||
|
|
|
@ -617,7 +617,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
return result;
|
||||
}
|
||||
|
||||
using var _ = new OnScopeExit(() => pageList.DecrementPagesReferenceCount(Context.MemoryManager));
|
||||
using OnScopeExit _ = new OnScopeExit(() => pageList.DecrementPagesReferenceCount(Context.MemoryManager));
|
||||
|
||||
return MapPages(address, pageList, permission, MemoryMapFlags.Private);
|
||||
}
|
||||
|
@ -769,7 +769,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
|
||||
Result result = region.AllocatePages(out KPageList pageList, pagesCount);
|
||||
|
||||
using var _ = new OnScopeExit(() => pageList.DecrementPagesReferenceCount(Context.MemoryManager));
|
||||
using OnScopeExit _ = new OnScopeExit(() => pageList.DecrementPagesReferenceCount(Context.MemoryManager));
|
||||
|
||||
void CleanUpForError()
|
||||
{
|
||||
|
@ -1341,7 +1341,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
|
||||
Result result = region.AllocatePages(out KPageList pageList, remainingPages);
|
||||
|
||||
using var _ = new OnScopeExit(() => pageList.DecrementPagesReferenceCount(Context.MemoryManager));
|
||||
using OnScopeExit _ = new OnScopeExit(() => pageList.DecrementPagesReferenceCount(Context.MemoryManager));
|
||||
|
||||
void CleanUpForError()
|
||||
{
|
||||
|
@ -1867,7 +1867,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
ulong dstLastPagePa = 0;
|
||||
ulong currentVa = va;
|
||||
|
||||
using var _ = new OnScopeExit(() =>
|
||||
using OnScopeExit _ = new OnScopeExit(() =>
|
||||
{
|
||||
if (dstFirstPagePa != 0)
|
||||
{
|
||||
|
@ -1928,7 +1928,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
Context.Memory.Fill(GetDramAddressFromPa(dstFirstPagePa), unusedSizeBefore, (byte)_ipcFillValue);
|
||||
|
||||
ulong copySize = addressRounded <= endAddr ? addressRounded - address : size;
|
||||
var data = srcPageTable.GetReadOnlySequence(addressTruncated + unusedSizeBefore, (int)copySize);
|
||||
ReadOnlySequence<byte> data = srcPageTable.GetReadOnlySequence(addressTruncated + unusedSizeBefore, (int)copySize);
|
||||
|
||||
((IWritableBlock)Context.Memory).Write(GetDramAddressFromPa(dstFirstPagePa + unusedSizeBefore), data);
|
||||
|
||||
|
@ -1994,7 +1994,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Memory
|
|||
if (send)
|
||||
{
|
||||
ulong copySize = endAddr - endAddrTruncated;
|
||||
var data = srcPageTable.GetReadOnlySequence(endAddrTruncated, (int)copySize);
|
||||
ReadOnlySequence<byte> data = srcPageTable.GetReadOnlySequence(endAddrTruncated, (int)copySize);
|
||||
|
||||
((IWritableBlock)Context.Memory).Write(GetDramAddressFromPa(dstLastPagePa), data);
|
||||
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
using Ryujinx.Cpu;
|
||||
using Ryujinx.HLE.HOS.Diagnostics.Demangler;
|
||||
using Ryujinx.HLE.HOS.Kernel.Memory;
|
||||
using Ryujinx.HLE.HOS.Kernel.Threading;
|
||||
|
@ -47,7 +48,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Process
|
|||
{
|
||||
EnsureLoaded();
|
||||
|
||||
var context = thread.Context;
|
||||
IExecutionContext context = thread.Context;
|
||||
|
||||
StringBuilder trace = new();
|
||||
|
||||
|
@ -109,13 +110,13 @@ namespace Ryujinx.HLE.HOS.Kernel.Process
|
|||
{
|
||||
EnsureLoaded();
|
||||
|
||||
var context = thread.Context;
|
||||
IExecutionContext context = thread.Context;
|
||||
|
||||
StringBuilder sb = new();
|
||||
|
||||
string GetReg(int x)
|
||||
{
|
||||
var v = x == 32 ? context.Pc : context.GetX(x);
|
||||
ulong v = x == 32 ? context.Pc : context.GetX(x);
|
||||
if (!AnalyzePointer(out PointerInfo info, v, thread))
|
||||
{
|
||||
return $"0x{v:x16}";
|
||||
|
@ -251,7 +252,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Process
|
|||
info = default;
|
||||
|
||||
ulong sp = thread.Context.GetX(31);
|
||||
var memoryInfo = _owner.MemoryManager.QueryMemory(address);
|
||||
KMemoryInfo memoryInfo = _owner.MemoryManager.QueryMemory(address);
|
||||
MemoryState memoryState = memoryInfo.State;
|
||||
|
||||
if (!memoryState.HasFlag(MemoryState.Stack)) // Is this pointer within the stack?
|
||||
|
|
|
@ -105,7 +105,7 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
|
||||
KProcess process = new(_context);
|
||||
|
||||
using var _ = new OnScopeExit(process.DecrementReferenceCount);
|
||||
using OnScopeExit _ = new OnScopeExit(process.DecrementReferenceCount);
|
||||
|
||||
KResourceLimit resourceLimit;
|
||||
|
||||
|
@ -1425,7 +1425,7 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
|
||||
KCodeMemory codeMemory = new(_context);
|
||||
|
||||
using var _ = new OnScopeExit(codeMemory.DecrementReferenceCount);
|
||||
using OnScopeExit _ = new OnScopeExit(codeMemory.DecrementReferenceCount);
|
||||
|
||||
KProcess currentProcess = KernelStatic.GetCurrentProcess();
|
||||
|
||||
|
@ -2854,7 +2854,7 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
|
||||
KThread currentThread = KernelStatic.GetCurrentThread();
|
||||
|
||||
var syncObjs = new Span<KSynchronizationObject>(currentThread.WaitSyncObjects)[..handles.Length];
|
||||
Span<KSynchronizationObject> syncObjs = new Span<KSynchronizationObject>(currentThread.WaitSyncObjects)[..handles.Length];
|
||||
|
||||
if (handles.Length != 0)
|
||||
{
|
||||
|
|
|
@ -562,8 +562,8 @@ namespace Ryujinx.HLE.HOS.Kernel.Threading
|
|||
Action<KThread> removeCallback,
|
||||
Func<KThread, bool> predicate)
|
||||
{
|
||||
var candidates = threads.Where(predicate).OrderBy(x => x.DynamicPriority);
|
||||
var toSignal = (count > 0 ? candidates.Take(count) : candidates).ToArray();
|
||||
IOrderedEnumerable<KThread> candidates = threads.Where(predicate).OrderBy(x => x.DynamicPriority);
|
||||
KThread[] toSignal = (count > 0 ? candidates.Take(count) : candidates).ToArray();
|
||||
|
||||
foreach (KThread thread in toSignal)
|
||||
{
|
||||
|
|
|
@ -127,7 +127,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Threading
|
|||
public KThread ScheduledThreadsElementAtOrDefault(int core, int index)
|
||||
{
|
||||
int currentIndex = 0;
|
||||
foreach (var scheduledThread in ScheduledThreads(core))
|
||||
foreach (KThread scheduledThread in ScheduledThreads(core))
|
||||
{
|
||||
if (currentIndex == index)
|
||||
{
|
||||
|
@ -144,7 +144,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Threading
|
|||
|
||||
public KThread ScheduledThreadsWithDynamicPriorityFirstOrDefault(int core, int dynamicPriority)
|
||||
{
|
||||
foreach (var scheduledThread in ScheduledThreads(core))
|
||||
foreach (KThread scheduledThread in ScheduledThreads(core))
|
||||
{
|
||||
if (scheduledThread.DynamicPriority == dynamicPriority)
|
||||
{
|
||||
|
|
|
@ -1232,7 +1232,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Threading
|
|||
{
|
||||
if (_schedulerWaitEvent == null)
|
||||
{
|
||||
var schedulerWaitEvent = new ManualResetEvent(false);
|
||||
ManualResetEvent schedulerWaitEvent = new ManualResetEvent(false);
|
||||
|
||||
if (Interlocked.Exchange(ref _schedulerWaitEvent, schedulerWaitEvent) == null)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue