* app.c (do_scrub_chars): In MRI mode, keep a space before a

possible comment character.
	* config/tc-m68k.c (m68k_ip): In MRI mode, ignore anything after
	an instruction which takes no operands.
This commit is contained in:
Ian Lance Taylor 1995-09-08 19:17:46 +00:00
parent 138b11d825
commit 92a25e12ff
3 changed files with 30 additions and 4 deletions

View File

@ -1,5 +1,10 @@
Fri Sep 8 00:27:46 1995 Ian Lance Taylor <ian@cygnus.com> Fri Sep 8 00:27:46 1995 Ian Lance Taylor <ian@cygnus.com>
* app.c (do_scrub_chars): In MRI mode, keep a space before a
possible comment character.
* config/tc-m68k.c (m68k_ip): In MRI mode, ignore anything after
an instruction which takes no operands.
* Makefile.in (install): Don't install gasp in $(tooldir). * Makefile.in (install): Don't install gasp in $(tooldir).
* config/tc-mips.c (macro): Handle a non zero base register for * config/tc-mips.c (macro): Handle a non zero base register for

View File

@ -587,6 +587,13 @@ do_scrub_chars (get, tostart, tolen)
/* cpp never outputs a leading space before the #, so /* cpp never outputs a leading space before the #, so
try to avoid being confused. */ try to avoid being confused. */
not_cpp_line = 1; not_cpp_line = 1;
if (flag_mri)
{
/* In MRI mode, we keep these spaces. */
UNGET (ch);
PUT (' ');
break;
}
goto recycle; goto recycle;
} }

View File

@ -29,7 +29,7 @@
/* This array holds the chars that always start a comment. If the /* This array holds the chars that always start a comment. If the
pre-processor is disabled, these aren't very useful */ pre-processor is disabled, these aren't very useful */
#ifdef OBJ_ELF #if defined (OBJ_ELF) || defined (TE_DELTA)
CONST char comment_chars[] = "|#"; CONST char comment_chars[] = "|#";
#else #else
CONST char comment_chars[] = "|"; CONST char comment_chars[] = "|";
@ -714,6 +714,18 @@ m68k_ip (instring)
return; return;
} }
if (flag_mri && opcode->m_opnum == 0)
{
/* In MRI mode, random garbage is allowed after an instruction
which accepts no operands. */
the_ins.args = opcode->m_operands;
the_ins.numargs = opcode->m_opnum;
the_ins.numo = opcode->m_codenum;
the_ins.opcode[0] = getone (opcode);
the_ins.opcode[1] = gettwo (opcode);
return;
}
for (opP = &the_ins.operands[0]; *p; opP++) for (opP = &the_ins.operands[0]; *p; opP++)
{ {
p = crack_operand (p, opP); p = crack_operand (p, opP);
@ -1757,7 +1769,7 @@ m68k_ip (instring)
siz2 = SIZE_LONG; siz2 = SIZE_LONG;
nextword |= 0x3; nextword |= 0x3;
} }
else if (! isvar (&opP->disp) && outro == 0) else if (! isvar (&opP->odisp) && outro == 0)
nextword |= 0x1; nextword |= 0x1;
else else
{ {
@ -1775,7 +1787,8 @@ m68k_ip (instring)
nextword |= 0x3; nextword |= 0x3;
break; break;
} }
if (opP->mode == POST) if (opP->mode == POST
&& (nextword & 0x40) == 0)
nextword |= 0x04; nextword |= 0x04;
} }
addword (nextword); addword (nextword);
@ -5842,7 +5855,8 @@ md_show_usage (stream)
specify variant of 680X0 architecture [default 68020]\n\ specify variant of 680X0 architecture [default 68020]\n\
-m68881 | -m68882 | -mno-68881 | -mno-68882\n\ -m68881 | -m68882 | -mno-68881 | -mno-68882\n\
target has/lacks floating-point coprocessor\n\ target has/lacks floating-point coprocessor\n\
[default yes for 68020, 68030, and cpu32]\n\ [default yes for 68020, 68030, and cpu32]\n");
fprintf(stream, "\
-m68851 | -mno-68851\n\ -m68851 | -mno-68851\n\
target has/lacks memory-management unit coprocessor\n\ target has/lacks memory-management unit coprocessor\n\
[default yes for 68020 and up]\n\ [default yes for 68020 and up]\n\