ryujinx-mirror/Ryujinx.HLE/OsHle/Utilities/IntUtils.cs
gdkchan c393cdf8e3
More flexible memory manager (#307)
* Keep track mapped buffers with fixed offsets

* Started rewriting the memory manager

* Initial support for MapPhysicalMemory and UnmapPhysicalMemory, other tweaks

* MapPhysicalMemory/UnmapPhysicalMemory support, other tweaks

* Rebased

* Optimize the map/unmap physical memory svcs

* Integrate shared font support

* Fix address space reserve alignment

* Some fixes related to gpu memory mapping

* Some cleanup

* Only try uploading const buffers that are really used

* Check if memory region is contiguous

* Rebased

* Add missing count increment on IsRegionModified

* Check for reads/writes outside of the address space, optimize translation with a tail call
2018-08-15 15:59:51 -03:00

25 lines
593 B
C#

namespace Ryujinx.HLE.OsHle.Utilities
{
static class IntUtils
{
public static int AlignUp(int Value, int Size)
{
return (Value + (Size - 1)) & ~(Size - 1);
}
public static long AlignUp(long Value, int Size)
{
return (Value + (Size - 1)) & ~((long)Size - 1);
}
public static int AlignDown(int Value, int Size)
{
return Value & ~(Size - 1);
}
public static long AlignDown(long Value, int Size)
{
return Value & ~((long)Size - 1);
}
}
}