diff options
author | Markus Wick <markus@selfnet.de> | 2021-05-29 09:24:09 +0200 |
---|---|---|
committer | Markus Wick <markus@selfnet.de> | 2021-05-29 09:28:26 +0200 |
commit | 42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead (patch) | |
tree | 4fefc42bc8c52930851ddb783dae2b7ddf3fbbe3 /src/common | |
parent | core/arm_interface: Improve the performance of memory fallbacks. (diff) | |
download | yuzu-42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead.tar yuzu-42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead.tar.gz yuzu-42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead.tar.bz2 yuzu-42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead.tar.lz yuzu-42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead.tar.xz yuzu-42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead.tar.zst yuzu-42a7c5d017a3a6bb5e6ed1b51b955ea3d756eead.zip |
Diffstat (limited to 'src/common')
-rw-r--r-- | src/common/page_table.cpp | 1 | ||||
-rw-r--r-- | src/common/page_table.h | 6 |
2 files changed, 7 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 const size_t num_page_table_entries{1ULL << (address_space_width_in_bits - page_size_in_bits)}; pointers.resize(num_page_table_entries); backing_addr.resize(num_page_table_entries); + current_address_space_width_in_bits = address_space_width_in_bits; } } // namespace Common diff --git a/src/common/page_table.h b/src/common/page_table.h index 61c5552e0..e92b66b2b 100644 --- a/src/common/page_table.h +++ b/src/common/page_table.h @@ -98,6 +98,10 @@ struct PageTable { */ void Resize(size_t address_space_width_in_bits, size_t page_size_in_bits); + size_t GetAddressSpaceBits() const { + return current_address_space_width_in_bits; + } + /** * Vector of memory pointers backing each page. An entry can only be non-null if the * corresponding attribute element is of type `Memory`. @@ -105,6 +109,8 @@ struct PageTable { VirtualBuffer<PageInfo> pointers; VirtualBuffer<u64> backing_addr; + + size_t current_address_space_width_in_bits; }; } // namespace Common |