From decfd1ce9c1ac9444351efda77580268742207b9 Mon Sep 17 00:00:00 2001 From: ceriel Date: Fri, 15 May 1987 16:31:00 +0000 Subject: [PATCH] bug fix in jmp instruction --- mach/pdp/as/mach0.c | 4 ++++ mach/pdp/as/mach3.c | 1 - mach/pdp/as/mach5.c | 7 ++++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/mach/pdp/as/mach0.c b/mach/pdp/as/mach0.c index 7b3ad0187..9cc68e8be 100644 --- a/mach/pdp/as/mach0.c +++ b/mach/pdp/as/mach0.c @@ -12,6 +12,10 @@ #define WORDS_REVERSED #define LISTING #define RELOCATION +#undef ISALPHA +#define ISALPHA(c) (isalpha(c) || c == '_' || c == '.' || c == '~') +#undef ISALNUM +#define ISALNUM(c) (isalnum(c) || c == '_' || c == '.' || c == '~') #undef ALIGNWORD #define ALIGNWORD 2 diff --git a/mach/pdp/as/mach3.c b/mach/pdp/as/mach3.c index de7b3af43..5f6b511cb 100644 --- a/mach/pdp/as/mach3.c +++ b/mach/pdp/as/mach3.c @@ -49,7 +49,6 @@ 0, OP_SO, 005600, "sbc", 0, OP_SO, 0105600, "sbcb", 0, OP_SO, 006700, "sxt", -0, OP_SO, 0100, "jmp", 0, OP_DO, 010000, "mov", 0, OP_DO, 0110000, "movb", 0, OP_DO, 020000, "cmp", diff --git a/mach/pdp/as/mach5.c b/mach/pdp/as/mach5.c index f772d4340..5e066d02b 100644 --- a/mach/pdp/as/mach5.c +++ b/mach/pdp/as/mach5.c @@ -91,11 +91,12 @@ sob(reg, exp) expr_t exp; { } jump(opc,opr) { - register sm; register val; - if (opr==067) { # ifdef THREE_PASS + if (opr==067) { + register sm = 0; + val = adjust(exp_1) >> 1; if ( fitb(val) && (exp_1.typ & ~S_DOT) == DOTTYP) { sm = 1; @@ -105,8 +106,8 @@ jump(opc,opr) { im1flag = 0; return(0); } -# endif } +# endif emit2(opc | opr); op1(opr); } -- 2.34.1