From 1ee08f1748be7868b0ebf2b8a487ed7e840380ad Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Tue, 13 Jun 2017 16:22:33 +0300 Subject: [PATCH] Fix undefined calling order of get_byte() calls. --- gencpu.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gencpu.cpp b/gencpu.cpp index d602cbc9..19f8e315 100644 --- a/gencpu.cpp +++ b/gencpu.cpp @@ -3526,11 +3526,14 @@ static void gen_opcode (unsigned int opcode) printf ("\tuaecptr memp = m68k_areg (regs, srcreg) + (uae_s32)(uae_s16)%s;\n", gen_nextiword (0)); genamode (curi, curi->dmode, "dstreg", curi->size, "dst", 2, 0, 0); if (curi->size == sz_word) { - printf ("\tuae_u16 val = ((%s (memp) & 0xff) << 8) + (%s (memp + 2) & 0xff);\n", srcb, srcb); + printf ("\tuae_u16 val = (%s (memp) & 0xff) << 8;\n", srcb); + printf ("\t val |= (%s (memp + 2) & 0xff);\n", srcb); count_read += 2; } else { - printf ("\tuae_u32 val = ((%s (memp) & 0xff) << 24) + ((%s (memp + 2) & 0xff) << 16)\n", srcb, srcb); - printf (" + ((%s (memp + 4) & 0xff) << 8) + (%s (memp + 6) & 0xff);\n", srcb, srcb); + printf ("\tuae_u32 val = (%s (memp) & 0xff) << 24;\n", srcb); + printf ("\t val |= (%s (memp + 2) & 0xff) << 16;\n", srcb); + printf ("\t val |= (%s (memp + 4) & 0xff) << 8;\n", srcb); + printf ("\t val |= (%s (memp + 6) & 0xff);\n", srcb); count_read += 4; } fill_prefetch_next (); -- 2.47.3