aboutsummaryrefslogtreecommitdiff
path: root/src/common/virtual_buffer.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [common/core/dynarmic] Optimize page table allocations (#4219)Exverge2026-09-091-44/+0
| | | | | | | | | | | | | | Reduces the page entries from 32 bytes to 8 and rewrites `VirtualBuffer` to be more efficient in memory usage and specifically for large zero regions. The page table will now only reserve 1GiB instead of 4GiB and of this memory it should only use at most ~8MiB. This PR has the side effect of using Eden on Windows on low memory systems much more plausible since it would previously require ~10GiB of committable memory at front (despite using ~5-6 at most, inadvertently stalling other processes) where as now it should only require around the amount that it'll actually use. Co-authored-by: Lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4219 Reviewed-by: Maufeat <sahyno1996@gmail.com> Reviewed-by: lizzie <lizzie@eden-emu.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
* [common/virtual_buffer] Fix Windows on Snapdragon 7C realizing virtual pages ↵lizzie2026-06-251-2/+6
| | | | | | | | | | | | before they're needed (#4128) This should fix Windows devices with low RAM like 4GB, or anything lower than 8GB. Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4128 Reviewed-by: Maufeat <sahyno1996@gmail.com> Reviewed-by: MaranBr <maranbr@eden-emu.dev>
* [compat] HaikuOS port (#2805)lizzie2025-10-221-9/+7
| | | | | | | | | | | Still had the issues with libusb, but that should get solved with the other PRs anyways Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2805 Reviewed-by: MaranBr <maranbr@eden-emu.dev> Reviewed-by: crueter <crueter@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* general: Convert source file copyright comments over to SPDXMorph2022-04-231-3/+2
| | | | | 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.
* page_table: Allow page tables to be movedLioncash2020-11-171-2/+2
| | | | | | | | Makes page tables and virtual buffers able to be moved, but not copied, making the interface more flexible. Previously, with the destructor specified, but no move assignment or constructor specified, they wouldn't be implicitly generated.
* common/virtual_buffer: drop unused includesJan Beich2020-08-051-9/+0
| | | | | | | | | On DragonFly and NetBSD build fails with src/common/virtual_buffer.cpp src/common/virtual_buffer.cpp:16:10: fatal error: sys/sysinfo.h: No such file or directory #include <sys/sysinfo.h> ^~~~~~~~~~~~~~~
* virtual_buffer: Mark size parameter of FreeMemoryPages() as [[maybe_unused]]Lioncash2020-07-251-1/+1
| | | | | This isn't used on Windows, but is used on non-Windows operating systems.
* common: Add VirtualBuffer class, to abstract memory virtualization.bunnei2020-04-171-0/+52