diff options
| author | 2021-05-29 09:24:09 +0200 | |
|---|---|---|
| committer | 2021-05-29 09:28:26 +0200 | |
| commit | 42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead (patch) | |
| tree | 4fefc42bc8c52930851ddb783dae2b7ddf3fbbe3 /src/common/page_table.cpp | |
| parent | core/arm_interface: Improve the performance of memory fallbacks. (diff) | |
| download | yuzu-42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead.tar.gz yuzu-42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead.tar.xz yuzu-42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead.zip | |
core/memory: Check our memory fallbacks for out-of-bound behavior.
This makes it by far harder to crash yuzu.
Also implement the 48bit masking of AARCH64 while touching this code.
Diffstat (limited to '')
| -rw-r--r-- | src/common/page_table.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/common/page_table.cpp b/src/common/page_table.cpp index 8fd8620fd..9fffd816f 100644 --- a/src/common/page_table.cpp +++ b/src/common/page_table.cpp | |||
| @@ -14,6 +14,7 @@ void PageTable::Resize(size_t address_space_width_in_bits, size_t page_size_in_b | |||
| 14 | const size_t num_page_table_entries{1ULL << (address_space_width_in_bits - page_size_in_bits)}; | 14 | const size_t num_page_table_entries{1ULL << (address_space_width_in_bits - page_size_in_bits)}; |
| 15 | pointers.resize(num_page_table_entries); | 15 | pointers.resize(num_page_table_entries); |
| 16 | backing_addr.resize(num_page_table_entries); | 16 | backing_addr.resize(num_page_table_entries); |
| 17 | current_address_space_width_in_bits = address_space_width_in_bits; | ||
| 17 | } | 18 | } |
| 18 | 19 | ||
| 19 | } // namespace Common | 20 | } // namespace Common |