Rebased
This commit is contained in:
parent
2770b1d044
commit
bec39a10e4
2 changed files with 9 additions and 2 deletions
|
@ -228,7 +228,7 @@ namespace ChocolArm64.Memory
|
|||
PageTable[L0][L1] = Ptr;
|
||||
}
|
||||
|
||||
public bool[] IsRegionModified(long Position, long Size)
|
||||
public (bool[], int) IsRegionModified(long Position, long Size)
|
||||
{
|
||||
long EndPosition = (Position + Size + PageMask) & ~PageMask;
|
||||
|
||||
|
@ -238,6 +238,8 @@ namespace ChocolArm64.Memory
|
|||
|
||||
bool[] Modified = new bool[Size >> PTPageBits];
|
||||
|
||||
int Count = 0;
|
||||
|
||||
lock (ObservedPages)
|
||||
{
|
||||
for (int Page = 0; Page < Modified.Length; Page++)
|
||||
|
@ -257,7 +259,10 @@ namespace ChocolArm64.Memory
|
|||
|
||||
if (Lvl1 != null)
|
||||
{
|
||||
Modified[Page] = Lvl1[L1] != null;
|
||||
if (Modified[Page] = Lvl1[L1] != null)
|
||||
{
|
||||
Count++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -130,6 +130,8 @@ namespace Ryujinx.HLE.Gpu.Memory
|
|||
{
|
||||
(bool[] Modified, long ModifiedCount) = Memory.IsRegionModified(PA, Size);
|
||||
|
||||
PA = Memory.GetPhysicalAddress(PA);
|
||||
|
||||
ClearCachedPagesIfNeeded();
|
||||
|
||||
long PageSize = AMemory.PageSize;
|
||||
|
|
Loading…
Add table
Reference in a new issue