Commit 6e59c1db892ce768178e705a5b68ab349eb5282f
1 parent
61382a50
full soft mmu support
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@411 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
25 additions
and
0 deletions
exec-all.h
| @@ -79,6 +79,7 @@ void cpu_exec_init(void); | @@ -79,6 +79,7 @@ void cpu_exec_init(void); | ||
| 79 | int page_unprotect(unsigned long address); | 79 | int page_unprotect(unsigned long address); |
| 80 | void page_unmap(void); | 80 | void page_unmap(void); |
| 81 | void tlb_flush_page(CPUState *env, uint32_t addr); | 81 | void tlb_flush_page(CPUState *env, uint32_t addr); |
| 82 | +void tlb_flush_page_write(CPUState *env, uint32_t addr); | ||
| 82 | void tlb_flush(CPUState *env); | 83 | void tlb_flush(CPUState *env); |
| 83 | 84 | ||
| 84 | #define CODE_GEN_MAX_SIZE 65536 | 85 | #define CODE_GEN_MAX_SIZE 65536 |
| @@ -415,3 +416,27 @@ static inline int spin_trylock(spinlock_t *lock) | @@ -415,3 +416,27 @@ static inline int spin_trylock(spinlock_t *lock) | ||
| 415 | 416 | ||
| 416 | extern spinlock_t tb_lock; | 417 | extern spinlock_t tb_lock; |
| 417 | 418 | ||
| 419 | + | ||
| 420 | +#if defined(TARGET_I386) && !defined(CONFIG_USER_ONLY) | ||
| 421 | + | ||
| 422 | +void tlb_fill(unsigned long addr, int is_write, int is_user, | ||
| 423 | + void *retaddr); | ||
| 424 | + | ||
| 425 | +#define ACCESS_TYPE 3 | ||
| 426 | +#define MEMSUFFIX _code | ||
| 427 | +#define env cpu_single_env | ||
| 428 | + | ||
| 429 | +#define DATA_SIZE 1 | ||
| 430 | +#include "softmmu_header.h" | ||
| 431 | + | ||
| 432 | +#define DATA_SIZE 2 | ||
| 433 | +#include "softmmu_header.h" | ||
| 434 | + | ||
| 435 | +#define DATA_SIZE 4 | ||
| 436 | +#include "softmmu_header.h" | ||
| 437 | + | ||
| 438 | +#undef ACCESS_TYPE | ||
| 439 | +#undef MEMSUFFIX | ||
| 440 | +#undef env | ||
| 441 | + | ||
| 442 | +#endif |