mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 07:43:54 -06:00
exec: Expose 'target_page.h' API to user emulation
User-only objects might benefit from the "exec/target_page.h" API, which allows to build some objects once for all targets. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Warner Losh <imp@bsdimp.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20231211212003.21686-3-philmd@linaro.org>
This commit is contained in:
parent
8501048b50
commit
75bbe6a4d2
5 changed files with 45 additions and 43 deletions
|
@ -3540,36 +3540,6 @@ int cpu_memory_rw_debug(CPUState *cpu, vaddr addr,
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Allows code that needs to deal with migration bitmaps etc to still be built
|
||||
* target independent.
|
||||
*/
|
||||
size_t qemu_target_page_size(void)
|
||||
{
|
||||
return TARGET_PAGE_SIZE;
|
||||
}
|
||||
|
||||
int qemu_target_page_bits(void)
|
||||
{
|
||||
return TARGET_PAGE_BITS;
|
||||
}
|
||||
|
||||
int qemu_target_page_bits_min(void)
|
||||
{
|
||||
return TARGET_PAGE_BITS_MIN;
|
||||
}
|
||||
|
||||
/* Convert target pages to MiB (2**20). */
|
||||
size_t qemu_target_pages_to_MiB(size_t pages)
|
||||
{
|
||||
int page_bits = TARGET_PAGE_BITS;
|
||||
|
||||
/* So far, the largest (non-huge) page size is 64k, i.e. 16 bits. */
|
||||
g_assert(page_bits < 20);
|
||||
|
||||
return pages >> (20 - page_bits);
|
||||
}
|
||||
|
||||
bool cpu_physical_memory_is_io(hwaddr phys_addr)
|
||||
{
|
||||
MemoryRegion*mr;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue