backend/arm64/address_space: Assert that code_cache_size <= 128 MiB
This commit is contained in:
parent
99df721442
commit
300046b60b
3 changed files with 8 additions and 6 deletions
|
@ -21,6 +21,8 @@ AddressSpace::AddressSpace(size_t code_cache_size)
|
||||||
, mem(code_cache_size)
|
, mem(code_cache_size)
|
||||||
, code(mem.ptr())
|
, code(mem.ptr())
|
||||||
, fastmem_manager(exception_handler) {
|
, fastmem_manager(exception_handler) {
|
||||||
|
ASSERT_MSG(code_cache_size <= 128 * 1024 * 1024, "code_cache_size > 128 MiB not currently supported");
|
||||||
|
|
||||||
exception_handler.Register(mem, code_cache_size);
|
exception_handler.Register(mem, code_cache_size);
|
||||||
exception_handler.SetFastmemCallback([this](u64 host_pc) {
|
exception_handler.SetFastmemCallback([this](u64 host_pc) {
|
||||||
return FastmemCallback(host_pc);
|
return FastmemCallback(host_pc);
|
||||||
|
|
|
@ -228,9 +228,9 @@ struct UserConfig {
|
||||||
/// in unusual behavior.
|
/// in unusual behavior.
|
||||||
bool always_little_endian = false;
|
bool always_little_endian = false;
|
||||||
|
|
||||||
// Minimum size is about 8MiB. Maximum size is about 2GiB. Maximum size is limited by
|
// Minimum size is about 8MiB. Maximum size is about 128MiB (arm64 host) or 2GiB (x64 host).
|
||||||
// the maximum length of a x64 jump.
|
// Maximum size is limited by the maximum length of a x86_64 / arm64 jump.
|
||||||
size_t code_cache_size = 256 * 1024 * 1024; // bytes
|
size_t code_cache_size = 128 * 1024 * 1024; // bytes
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace A32
|
} // namespace A32
|
||||||
|
|
|
@ -285,9 +285,9 @@ struct UserConfig {
|
||||||
/// AddTicks and GetTicksRemaining are never called, and no cycle counting is done.
|
/// AddTicks and GetTicksRemaining are never called, and no cycle counting is done.
|
||||||
bool enable_cycle_counting = true;
|
bool enable_cycle_counting = true;
|
||||||
|
|
||||||
// Minimum size is about 8MiB. Maximum size is about 2GiB. Maximum size is limited by
|
// Minimum size is about 8MiB. Maximum size is about 128MiB (arm64 host) or 2GiB (x64 host).
|
||||||
// the maximum length of a x64 jump.
|
// Maximum size is limited by the maximum length of a x86_64 / arm64 jump.
|
||||||
size_t code_cache_size = 256 * 1024 * 1024; // bytes
|
size_t code_cache_size = 128 * 1024 * 1024; // bytes
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace A64
|
} // namespace A64
|
||||||
|
|
Loading…
Reference in a new issue