diff options
| author | lizzie <lizzie@eden-emu.dev> | 2026-02-12 02:14:50 +0100 |
|---|---|---|
| committer | crueter <crueter@eden-emu.dev> | 2026-02-12 02:14:50 +0100 |
| commit | c263b6af6fd6a164b859075366b8aaa697834146 (patch) | |
| tree | b06b8a19f9c67a219fe09a8b7450cd924200b49d /src/core/memory.cpp | |
| parent | e46576b4c3059d74ce76c3449904c491ada692c9 (diff) | |
[dynarmic] add current code page cache (#3459)
should make JIT translation a bit faster - especially for non-fastmem
test if thumb still werks
previously:
we read 32-bits one by one, and do translation **for each u32 we read**
now:
one big read of 4096 bytes (aligned of course), only 1 VAddr translation
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3459
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
Diffstat (limited to 'src/core/memory.cpp')
| -rw-r--r-- | src/core/memory.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/core/memory.cpp b/src/core/memory.cpp index 672676cf12..0550a5bf81 100644 --- a/src/core/memory.cpp +++ b/src/core/memory.cpp @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project +// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project // SPDX-License-Identifier: GPL-3.0-or-later // SPDX-FileCopyrightText: 2015 Citra Emulator Project @@ -36,8 +36,7 @@ namespace Core::Memory { -static inline bool AddressSpaceContains(const Common::PageTable& table, const Common::ProcessAddress addr, - const std::size_t size) { +static inline bool AddressSpaceContains(const Common::PageTable& table, const Common::ProcessAddress addr, const std::size_t size) { const Common::ProcessAddress max_addr = 1ULL << table.GetAddressSpaceBits(); return addr + size >= addr && addr + size <= max_addr; } |
