fd1831b65b
host_memory: Use transparent huge pages where available
2023-01-01 11:40:35 +00:00
4d7be85e73
host_memory: Allocate virtual_base with MAP_NORESERVE
...
Specify that we do not require swap to be reserved for this address range;
allow overcommitting.
2023-01-01 11:40:35 +00:00
cbaf642ffe
Initial ARM64 support
2022-11-09 16:58:49 -05:00
99ceb03a1c
general: Convert source file copyright comments over to SPDX
...
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-23 05:55:32 -04:00
c589db6add
common: Replace lock_guard with scoped_lock
2022-04-07 19:30:55 +01:00
866b7c20a8
general: Fix clang/gcc build errors
2022-03-20 02:25:09 -04:00
923decae5a
common: Reduce unused includes
2022-03-19 15:01:31 -04:00
b33f23cc46
host_memory: Fix fastmem crashes in debug builds
...
It is possible for virtual_offset to not be 0 when the iterator is at the beginning, and thus, std::prev(it) may be evaluated, leading to a crash in debug mode.
Co-Authored-By: Fernando S. <1731197+FernandoS27@users.noreply.github.com >
2022-03-02 18:36:59 -05:00
41aec2773f
general: Add missing copyright notices
2021-12-05 16:18:53 -05:00
3fc7aceea7
Fixed invalid iterator usage
2021-09-29 06:58:48 -04:00
353be2306c
host_memory: Add workaround for FreeBSD 12
...
src/common/host_memory.cpp:360:14: error: use of undeclared identifier
'memfd_create'
fd = memfd_create("HostMemory", 0);
^
2021-07-27 20:15:23 +00:00
c4cd82fa7c
host_memory: Enable Linux implementation on FreeBSD
...
HW.Memory <Critical> common/host_memory.cpp:HostMemory:492: Fastmem unavailable, falling back to VirtualBuffer for memory allocation
2021-07-27 20:09:43 +00:00
9a06b85b24
host_memory: Correct MEM_RESERVE_PLACEHOLDER
...
Microsoft defines `MEM_RESERVE_PLACEHOLDER` as `0x00040000`, but our
manually imported version of it drops the last zero.
2021-06-19 04:38:33 -04:00
7f85abb281
common/host_memory: Implement a fallback if fastmem fails.
...
This falls back to the old approach of using a virtual buffer.
Windows is untested, but this build should fix support for Windows < 10 v1803. However without fastmem support at all.
2021-06-11 17:27:17 +02:00
f332d4a9b5
common/host_shader: Load Windows 10 functions dynamically
...
Workaround old headers and libraries shipped on MinGW.
2021-06-11 17:27:17 +02:00
ee67460ff0
host_memory: Support staged VirtualProtect calls
2021-06-11 17:27:17 +02:00
c4609c92ee
common/host_memory: Optimize for huge tables.
...
In theory, if we have 2 MB continously mapped, this should save one layer of TLB.
Let's make it at least more likely by aligning the memory.
2021-06-11 17:27:06 +02:00
5105318bbc
common/host_memory: Add Linux implementation
2021-06-11 17:27:06 +02:00
a7837a3791
common/host_memory: Add interface and Windows implementation
2021-06-11 17:27:06 +02:00