From: Toni Wilen Date: Mon, 22 Oct 2018 17:34:36 +0000 (+0300) Subject: PACK and UNPACK undefined fetch order fix. X-Git-Tag: 4100~43 X-Git-Url: https://git.unchartedbackwaters.co.uk/w/?a=commitdiff_plain;h=dc08fa1bf9305b778d31bfc4b83ed01929dc3178;p=francis%2Fwinuae.git PACK and UNPACK undefined fetch order fix. --- diff --git a/gencpu.cpp b/gencpu.cpp index 6ad2ab7b..b2186173 100644 --- a/gencpu.cpp +++ b/gencpu.cpp @@ -5292,7 +5292,8 @@ bccl_not68020: printf ("\tm68k_areg (regs, srcreg) -= areg_byteinc[srcreg];\n"); printf ("\tval = (uae_u16)(%s (m68k_areg (regs, srcreg)) & 0xff);\n", srcb); printf ("\tm68k_areg (regs, srcreg) -= areg_byteinc[srcreg];\n"); - printf ("\tval = (val | ((uae_u16)(%s (m68k_areg (regs, srcreg)) & 0xff) << 8)) + %s;\n", srcb, gen_nextiword (0)); + printf ("\tval = val | ((uae_u16)(%s (m68k_areg (regs, srcreg)) & 0xff) << 8);\n", srcb); + printf ("\tval += %s;\n", gen_nextiword(0)); addmmufixup ("dstreg"); printf ("\tm68k_areg (regs, dstreg) -= areg_byteinc[dstreg];\n"); gen_set_fault_pc (); @@ -5302,7 +5303,8 @@ bccl_not68020: case i_UNPK: if (curi->smode == Dreg) { printf ("\tuae_u16 val = m68k_dreg (regs, srcreg);\n"); - printf ("\tval = (((val << 4) & 0xf00) | (val & 0xf)) + %s;\n", gen_nextiword (0)); + printf ("\tval = ((val << 4) & 0xf00) | (val & 0xf);\n"); + printf ("\tval += %s;\n", gen_nextiword(0)); printf ("\tm68k_dreg (regs, dstreg) = (m68k_dreg (regs, dstreg) & 0xffff0000) | (val & 0xffff);\n"); } else { printf ("\tuae_u16 val;\n");