diff options
author | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-05-24 13:56:15 +0000 |
---|---|---|
committer | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-05-24 13:56:15 +0000 |
commit | fab94c0e989b5a270fe90d553bd665c91fc15f8c (patch) | |
tree | 32bee7c8bbc17d32262135ddf94d7d4189128b86 /exec.c | |
parent | 64e3257c03fda8355d4e38b0671143b3c6e03069 (diff) |
Dynamically allocate tbs. Avoids branch range problems on RISC hosts.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4555 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'exec.c')
-rw-r--r-- | exec.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -84,7 +84,7 @@ #define TARGET_PHYS_ADDR_SPACE_BITS 32 #endif -TranslationBlock tbs[CODE_GEN_MAX_BLOCKS]; +TranslationBlock *tbs; TranslationBlock *tb_phys_hash[CODE_GEN_PHYS_HASH_SIZE]; int nb_tbs; /* any access to the tbs or the page table must use this lock */ @@ -335,6 +335,7 @@ void cpu_exec_init(CPUState *env) if (!code_gen_ptr) { cpu_gen_init(); + tbs = qemu_malloc(CODE_GEN_MAX_BLOCKS * sizeof(TranslationBlock)); code_gen_ptr = code_gen_buffer; page_init(); io_mem_init(); |