From 0561939cf64e5d66153c2e7903e2411b802ff5c8 Mon Sep 17 00:00:00 2001 From: Shamus Hammons Date: Mon, 20 Aug 2018 10:35:12 -0500 Subject: [PATCH] Now we're pretty sure that the codebase doesn't cause any regressions. --- parmode.h | 6 +++--- procln.c | 4 +++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/parmode.h b/parmode.h index 4d37cdb..13b83fc 100644 --- a/parmode.h +++ b/parmode.h @@ -1169,7 +1169,7 @@ CHK_FOR_DISPn: // expr[.L] AMn = ABSL; - // Is .L forced here? + // .L is forced here if (*tok == DOTL) { tok++; @@ -1177,8 +1177,8 @@ CHK_FOR_DISPn: } else { - // Defined, absolute values from $FFFF8000..$00007FFF get optimized - // to absolute short + // Defined, absolute values from $FFFF8000..$00007FFF get + // optimized to absolute short if (CHECK_OPTS(OPT_ABS_SHORT) && ((AnEXATTR & (TDB | DEFINED)) == DEFINED) && (((uint32_t)AnEXVAL + 0x8000) < 0x10000)) diff --git a/procln.c b/procln.c index d7bf53c..0bb52e6 100644 --- a/procln.c +++ b/procln.c @@ -854,9 +854,11 @@ When checking to see if it's already been equated, issue a warning. // Keep a backup of chptr (used for optimisations during codegen) chptr_opcode = chptr; - while ((m->mnattr & siz) && (amsk0 & m->mn0) == 0 || (amsk1 & m->mn1) == 0) + while (!(m->mnattr & siz) || (amsk0 & m->mn0) == 0 || (amsk1 & m->mn1) == 0) m = &machtab[m->mncont]; + DEBUG { printf(" 68K: mninst=$%X, siz=$%X, mnattr=$%X, amsk0=$%X, mn0=$%X, amsk1=$%X, mn1=$%X\n", m->mninst, siz, m->mnattr, amsk0, m->mn0, amsk1, m->mn1); } + (*m->mnfunc)(m->mninst, siz); goto loop; } -- 2.37.2