diff options
author | bunnei <bunneidev@gmail.com> | 2020-11-18 20:40:10 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-18 20:40:10 -0800 |
commit | 92344da20ce4801543c1d3148e1f1b62ba162ffb (patch) | |
tree | a5cd5980b1287dfd9b56e6df48cad3790e173284 /src/common/page_table.h | |
parent | abda36636245c416a75774165d2a5b49610952fc (diff) | |
parent | 0ca91ced2dab3654e78e4c465506d7baad3cbeeb (diff) |
Merge pull request #4936 from lioncash/page
page_table: Allow page tables to be moved
Diffstat (limited to 'src/common/page_table.h')
-rw-r--r-- | src/common/page_table.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/common/page_table.h b/src/common/page_table.h index cf5eed780..9754fabf9 100644 --- a/src/common/page_table.h +++ b/src/common/page_table.h @@ -4,9 +4,7 @@ #pragma once -#include <vector> - -#include <boost/icl/interval_map.hpp> +#include <tuple> #include "common/common_types.h" #include "common/memory_hook.h" @@ -51,13 +49,21 @@ struct SpecialRegion { */ struct PageTable { PageTable(); - ~PageTable(); + ~PageTable() noexcept; + + PageTable(const PageTable&) = delete; + PageTable& operator=(const PageTable&) = delete; + + PageTable(PageTable&&) noexcept = default; + PageTable& operator=(PageTable&&) noexcept = default; /** * Resizes the page table to be able to accomodate enough pages within * a given address space. * * @param address_space_width_in_bits The address size width in bits. + * @param page_size_in_bits The page size in bits. + * @param has_attribute Whether or not this page has any backing attributes. */ void Resize(std::size_t address_space_width_in_bits, std::size_t page_size_in_bits, bool has_attribute); |