This will enable further cleanups further down the call chain. Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org> Signed-off-by: Richard Henderson <richard.hender...@linaro.org> --- target/m68k/translate.c | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-)
diff --git a/target/m68k/translate.c b/target/m68k/translate.c index 340d72bc4f..b9633e06da 100644 --- a/target/m68k/translate.c +++ b/target/m68k/translate.c @@ -897,14 +897,6 @@ static TCGv gen_ea_mode(CPUM68KState *env, DisasContext *s, int mode, int reg0, return NULL_QREG; } -static TCGv gen_ea(CPUM68KState *env, DisasContext *s, uint16_t insn, - int opsize, TCGv val, TCGv *addrp, ea_what what, int index) -{ - int mode = extract32(insn, 3, 3); - int reg0 = REG(insn, 0); - return gen_ea_mode(env, s, mode, reg0, opsize, val, addrp, what, index); -} - static TCGv_ptr gen_fp_ptr(int freg) { TCGv_ptr fp = tcg_temp_new_ptr(); @@ -1368,18 +1360,22 @@ static void gen_exit_tb(DisasContext *s) s->base.is_jmp = DISAS_EXIT; } -#define SRC_EA(env, result, opsize, op_sign, addrp) do { \ - result = gen_ea(env, s, insn, opsize, NULL_QREG, addrp, \ - op_sign ? EA_LOADS : EA_LOADU, IS_USER(s)); \ +#define SRC_EA(env, result, opsize, op_sign, addrp) \ + do { \ + result = gen_ea_mode(env, s, extract32(insn, 3, 3), \ + REG(insn, 0), opsize, NULL_QREG, addrp, \ + op_sign ? EA_LOADS : EA_LOADU, IS_USER(s)); \ if (IS_NULL_QREG(result)) { \ gen_addr_fault(s); \ return; \ } \ } while (0) -#define DEST_EA(env, insn, opsize, val, addrp) do { \ - TCGv ea_result = gen_ea(env, s, insn, opsize, val, addrp, \ - EA_STORE, IS_USER(s)); \ +#define DEST_EA(env, insn, opsize, val, addrp) \ + do { \ + TCGv ea_result = gen_ea_mode(env, s, extract32(insn, 3, 3), \ + REG(insn, 0), opsize, val, addrp, \ + EA_STORE, IS_USER(s)); \ if (IS_NULL_QREG(ea_result)) { \ gen_addr_fault(s); \ return; \ -- 2.43.0