From bfc49a8c524c098f5df0244e7329dfe5d6702acb Mon Sep 17 00:00:00 2001 From: Michael Pavone Date: Tue, 10 May 2016 08:59:17 -0700 Subject: Fix bug in 68K movep.l when the destination is a register mapped to a host register --- m68k_core_x86.c | 1 + 1 file changed, 1 insertion(+) (limited to 'm68k_core_x86.c') diff --git a/m68k_core_x86.c b/m68k_core_x86.c index 26a8dbb..c07760b 100644 --- a/m68k_core_x86.c +++ b/m68k_core_x86.c @@ -949,6 +949,7 @@ void translate_m68k_movep(m68k_options * opts, m68kinst * inst) add_ir(code, 2, opts->gen.scratch1, SZ_D); push_r(code, opts->gen.scratch1); call(code, opts->read_8); + movzx_rr(code, opts->gen.scratch1, opts->gen.scratch1, SZ_B, SZ_W); shl_ir(code, 16, opts->gen.scratch1, SZ_D); or_rr(code, opts->gen.scratch1, reg, SZ_D); } else { -- cgit v1.2.3