diff --git a/exec-all.h b/exec-all.h index 4565dd060..a775582be 100644 --- a/exec-all.h +++ b/exec-all.h @@ -80,7 +80,6 @@ void gen_intermediate_code_pc(CPUState *env, struct TranslationBlock *tb); void gen_pc_load(CPUState *env, struct TranslationBlock *tb, unsigned long searched_pc, int pc_pos, void *puc); -unsigned long code_gen_max_block_size(void); void cpu_gen_init(void); int cpu_gen_code(CPUState *env, struct TranslationBlock *tb, int *gen_code_size_ptr); diff --git a/exec.c b/exec.c index bb3dcadcd..aedfda4e0 100644 --- a/exec.c +++ b/exec.c @@ -557,7 +557,7 @@ static void code_gen_alloc(unsigned long tb_size) #endif /* !USE_STATIC_CODE_GEN_BUFFER */ map_exec(code_gen_prologue, sizeof(code_gen_prologue)); code_gen_buffer_max_size = code_gen_buffer_size - - code_gen_max_block_size(); + (TCG_MAX_OP_SIZE * OPC_MAX_SIZE); code_gen_max_blocks = code_gen_buffer_size / CODE_GEN_AVG_BLOCK_SIZE; tbs = qemu_malloc(code_gen_max_blocks * sizeof(TranslationBlock)); } diff --git a/tcg/tcg-opc.h b/tcg/tcg-opc.h index 674c73a52..5531da745 100644 --- a/tcg/tcg-opc.h +++ b/tcg/tcg-opc.h @@ -22,7 +22,7 @@ * THE SOFTWARE. */ #ifndef DEF2 -#define DEF2(name, oargs, iargs, cargs, flags) DEF(name, oargs + iargs + cargs, 0) +#define DEF2(name, oargs, iargs, cargs, flags) DEF(name, oargs + iargs + cargs) #endif /* predefined ops */ diff --git a/tcg/tcg.c b/tcg/tcg.c index 3368d93a9..b1fe470f4 100644 --- a/tcg/tcg.c +++ b/tcg/tcg.c @@ -69,7 +69,7 @@ static void patch_reloc(uint8_t *code_ptr, int type, tcg_target_long value, tcg_target_long addend); static TCGOpDef tcg_op_defs[] = { -#define DEF(s, n, copy_size) { #s, 0, 0, n, n, 0, copy_size }, +#define DEF(s, n) { #s, 0, 0, n, n, 0 }, #define DEF2(s, oargs, iargs, cargs, flags) { #s, oargs, iargs, cargs, iargs + oargs + cargs, flags, 0 }, #include "tcg-opc.h" #undef DEF diff --git a/tcg/tcg.h b/tcg/tcg.h index 9134700cf..7fe7ab045 100644 --- a/tcg/tcg.h +++ b/tcg/tcg.h @@ -48,7 +48,7 @@ typedef uint64_t TCGRegSet; #endif typedef enum TCGOpcode { -#define DEF(s, n, copy_size) INDEX_op_ ## s, +#define DEF(s, n) INDEX_op_ ## s, #include "tcg-opc.h" #undef DEF NB_OPS, @@ -422,7 +422,6 @@ typedef struct TCGOpDef { const char *name; uint8_t nb_oargs, nb_iargs, nb_cargs, nb_args; uint8_t flags; - uint16_t copy_size; TCGArgConstraint *args_ct; int *sorted_args; #if defined(CONFIG_DEBUG_TCG) diff --git a/translate-all.c b/translate-all.c index 91cbbc492..efcfb9adc 100644 --- a/translate-all.c +++ b/translate-all.c @@ -41,22 +41,6 @@ target_ulong gen_opc_pc[OPC_BUF_SIZE]; uint16_t gen_opc_icount[OPC_BUF_SIZE]; uint8_t gen_opc_instr_start[OPC_BUF_SIZE]; -/* XXX: suppress that */ -unsigned long code_gen_max_block_size(void) -{ - static unsigned long max; - - if (max == 0) { - max = TCG_MAX_OP_SIZE; -#define DEF(s, n, copy_size) max = copy_size > max? copy_size : max; -#include "tcg-opc.h" -#undef DEF - max *= OPC_MAX_SIZE; - } - - return max; -} - void cpu_gen_init(void) { tcg_context_init(&tcg_ctx);