bug fix in jmp instruction

This commit is contained in:
ceriel 1987-05-15 16:31:00 +00:00
parent 0679596d4d
commit decfd1ce9c
3 changed files with 8 additions and 4 deletions

View file

@ -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

View file

@ -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",

View file

@ -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);
}