Revision c227f099 cpu-all.h
b/cpu-all.h | ||
---|---|---|
814 | 814 |
/* Return the physical page corresponding to a virtual one. Use it |
815 | 815 |
only for debugging because no protection checks are done. Return -1 |
816 | 816 |
if no page found. */ |
817 |
a_target_phys_addr cpu_get_phys_page_debug(CPUState *env, target_ulong addr);
|
|
817 |
target_phys_addr_t cpu_get_phys_page_debug(CPUState *env, target_ulong addr);
|
|
818 | 818 |
|
819 | 819 |
#define CPU_LOG_TB_OUT_ASM (1 << 0) |
820 | 820 |
#define CPU_LOG_TB_IN_ASM (1 << 1) |
... | ... | |
847 | 847 |
|
848 | 848 |
extern int phys_ram_fd; |
849 | 849 |
extern uint8_t *phys_ram_dirty; |
850 |
extern a_ram_addr ram_size;
|
|
851 |
extern a_ram_addr last_ram_offset;
|
|
850 |
extern ram_addr_t ram_size;
|
|
851 |
extern ram_addr_t last_ram_offset;
|
|
852 | 852 |
|
853 | 853 |
/* physical memory access */ |
854 | 854 |
|
... | ... | |
876 | 876 |
#define MIGRATION_DIRTY_FLAG 0x08 |
877 | 877 |
|
878 | 878 |
/* read dirty bit (return 0 or 1) */ |
879 |
static inline int cpu_physical_memory_is_dirty(a_ram_addr addr)
|
|
879 |
static inline int cpu_physical_memory_is_dirty(ram_addr_t addr)
|
|
880 | 880 |
{ |
881 | 881 |
return phys_ram_dirty[addr >> TARGET_PAGE_BITS] == 0xff; |
882 | 882 |
} |
883 | 883 |
|
884 |
static inline int cpu_physical_memory_get_dirty(a_ram_addr addr,
|
|
884 |
static inline int cpu_physical_memory_get_dirty(ram_addr_t addr,
|
|
885 | 885 |
int dirty_flags) |
886 | 886 |
{ |
887 | 887 |
return phys_ram_dirty[addr >> TARGET_PAGE_BITS] & dirty_flags; |
888 | 888 |
} |
889 | 889 |
|
890 |
static inline void cpu_physical_memory_set_dirty(a_ram_addr addr)
|
|
890 |
static inline void cpu_physical_memory_set_dirty(ram_addr_t addr)
|
|
891 | 891 |
{ |
892 | 892 |
phys_ram_dirty[addr >> TARGET_PAGE_BITS] = 0xff; |
893 | 893 |
} |
894 | 894 |
|
895 |
void cpu_physical_memory_reset_dirty(a_ram_addr start, a_ram_addr end,
|
|
895 |
void cpu_physical_memory_reset_dirty(ram_addr_t start, ram_addr_t end,
|
|
896 | 896 |
int dirty_flags); |
897 | 897 |
void cpu_tlb_update_dirty(CPUState *env); |
898 | 898 |
|
... | ... | |
900 | 900 |
|
901 | 901 |
int cpu_physical_memory_get_dirty_tracking(void); |
902 | 902 |
|
903 |
int cpu_physical_sync_dirty_bitmap(a_target_phys_addr start_addr,
|
|
904 |
a_target_phys_addr end_addr);
|
|
903 |
int cpu_physical_sync_dirty_bitmap(target_phys_addr_t start_addr,
|
|
904 |
target_phys_addr_t end_addr);
|
|
905 | 905 |
|
906 | 906 |
void dump_exec_info(FILE *f, |
907 | 907 |
int (*cpu_fprintf)(FILE *f, const char *fmt, ...)); |
... | ... | |
911 | 911 |
* batching which can make a major impact on performance when using |
912 | 912 |
* virtualization. |
913 | 913 |
*/ |
914 |
void qemu_register_coalesced_mmio(a_target_phys_addr addr, a_ram_addr size);
|
|
914 |
void qemu_register_coalesced_mmio(target_phys_addr_t addr, ram_addr_t size);
|
|
915 | 915 |
|
916 |
void qemu_unregister_coalesced_mmio(a_target_phys_addr addr, a_ram_addr size);
|
|
916 |
void qemu_unregister_coalesced_mmio(target_phys_addr_t addr, ram_addr_t size);
|
|
917 | 917 |
|
918 | 918 |
/*******************************************/ |
919 | 919 |
/* host CPU ticks (if available) */ |
Also available in: Unified diff