From 7c25fb468470dff701900749dd769941a083c802 Mon Sep 17 00:00:00 2001 From: Peter Veenstra Date: Sun, 12 Jan 2014 12:54:58 +0000 Subject: [PATCH] reg_eip is 32 bit(jmarsh) Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3856 --- src/cpu/core_dynrec/decoder_basic.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/cpu/core_dynrec/decoder_basic.h b/src/cpu/core_dynrec/decoder_basic.h index 89cd49a0..079383bc 100644 --- a/src/cpu/core_dynrec/decoder_basic.h +++ b/src/cpu/core_dynrec/decoder_basic.h @@ -490,7 +490,8 @@ static INLINE void dyn_set_eip_end(void) { // set reg_eip to the start of the next instruction plus an offset (imm) static INLINE void dyn_set_eip_end(HostReg reg,Bit32u imm=0) { - gen_mov_word_to_reg(reg,®_eip,decode.big_op); + gen_mov_word_to_reg(reg,®_eip,true); //get_extend_word will mask off the upper bits + //gen_mov_word_to_reg(reg,®_eip,decode.big_op); gen_add_imm(reg,(Bit32u)(decode.code-decode.code_start+imm)); if (!decode.big_op) gen_extend_word(false,reg); }