|
@@ -14,6 +14,7 @@
|
|
|
#endif
|
|
|
#include "hw/core/cpu.h"
|
|
|
#include "tcg/debug-assert.h"
|
|
|
+#include "exec/page-protection.h"
|
|
|
|
|
|
#define EXCP_INTERRUPT 0x10000 /* async interruption */
|
|
|
#define EXCP_HLT 0x10001 /* hlt instruction reached */
|
|
@@ -208,36 +209,6 @@ G_NORETURN void cpu_loop_exit_atomic(CPUState *cpu, uintptr_t pc);
|
|
|
G_NORETURN void cpu_loop_exit(CPUState *cpu);
|
|
|
G_NORETURN void cpu_loop_exit_restore(CPUState *cpu, uintptr_t pc);
|
|
|
|
|
|
-/* same as PROT_xxx */
|
|
|
-#define PAGE_READ 0x0001
|
|
|
-#define PAGE_WRITE 0x0002
|
|
|
-#define PAGE_EXEC 0x0004
|
|
|
-#define PAGE_RWX (PAGE_READ | PAGE_WRITE | PAGE_EXEC)
|
|
|
-#define PAGE_VALID 0x0008
|
|
|
-/*
|
|
|
- * Original state of the write flag (used when tracking self-modifying code)
|
|
|
- */
|
|
|
-#define PAGE_WRITE_ORG 0x0010
|
|
|
-/*
|
|
|
- * Invalidate the TLB entry immediately, helpful for s390x
|
|
|
- * Low-Address-Protection. Used with PAGE_WRITE in tlb_set_page_with_attrs()
|
|
|
- */
|
|
|
-#define PAGE_WRITE_INV 0x0020
|
|
|
-/* For use with page_set_flags: page is being replaced; target_data cleared. */
|
|
|
-#define PAGE_RESET 0x0040
|
|
|
-/* For linux-user, indicates that the page is MAP_ANON. */
|
|
|
-#define PAGE_ANON 0x0080
|
|
|
-
|
|
|
-/* Target-specific bits that will be used via page_get_flags(). */
|
|
|
-#define PAGE_TARGET_1 0x0200
|
|
|
-#define PAGE_TARGET_2 0x0400
|
|
|
-
|
|
|
-/*
|
|
|
- * For linux-user, indicates that the page is mapped with the same semantics
|
|
|
- * in both guest and host.
|
|
|
- */
|
|
|
-#define PAGE_PASSTHROUGH 0x0800
|
|
|
-
|
|
|
/* accel/tcg/cpu-exec.c */
|
|
|
int cpu_exec(CPUState *cpu);
|
|
|
|