* config/tc-m68k.c (m68k_ip): When recognizing '#', use isbyte and

iword rather than expr8 and expr16.  When recognizing 'M', use
	issbyte rather than expr8.  When recognizing 'Q' and 't', just
	check for O_constant rather than using expr8.
	* config/m68k-parse.h (expr8, expr16): Don't define.
	* Makefile.in (m68k-parse.o): Depend upon m68k-parse.h, not
	m68k-parse.y.
This commit is contained in:
Ian Lance Taylor 1995-08-10 16:43:00 +00:00
parent e14994d980
commit 336435bc4d
3 changed files with 17 additions and 6 deletions

View file

@ -1,5 +1,13 @@
Thu Aug 10 00:38:11 1995 Ian Lance Taylor <ian@cygnus.com>
* config/tc-m68k.c (m68k_ip): When recognizing '#', use isbyte and
iword rather than expr8 and expr16. When recognizing 'M', use
issbyte rather than expr8. When recognizing 'Q' and 't', just
check for O_constant rather than using expr8.
* config/m68k-parse.h (expr8, expr16): Don't define.
* Makefile.in (m68k-parse.o): Depend upon m68k-parse.h, not
m68k-parse.y.
* read.c (potable): Add spc, ttl, xcom, xref.
(s_mri_sect): New function.
* read.h (s_mri_sect): Declare.

View file

@ -354,7 +354,7 @@ e-mipsecoff.o : $(srcdir)/config/e-mipsecoff.c
m68k-parse.c: $(srcdir)/config/m68k-parse.y
$(BISON) $(BISONFLAGS) $(srcdir)/config/m68k-parse.y
mv -f y.tab.c m68k-parse.c
m68k-parse.o: m68k-parse.c $(srcdir)/config/m68k-parse.y
m68k-parse.o: m68k-parse.c $(srcdir)/config/m68k-parse.h
# Remake the info files.

View file

@ -768,11 +768,13 @@ m68k_ip (instring)
losing++;
else if (s[1] == 'b'
&& ! isvar (&opP->disp)
&& ! expr8 (&opP->disp))
&& (opP->disp.exp.X_op != O_constant
|| ! isbyte (opP->disp.exp.X_add_number)))
losing++;
else if (s[1] == 'w'
&& ! isvar (&opP->disp)
&& ! expr16 (&opP->disp))
&& (opP->disp.exp.X_op != O_constant
|| ! isword (opP->disp.exp.X_add_number)))
losing++;
break;
@ -1076,7 +1078,8 @@ m68k_ip (instring)
case 'M':
if (opP->mode != IMMED)
losing++;
else if (! expr8 (&opP->disp))
else if (opP->disp.exp.X_op != O_constant
|| ! issbyte (opP->disp.exp.X_add_number))
losing++;
else if (! m68k_quick
&& instring[3] != 'q'
@ -1092,7 +1095,7 @@ m68k_ip (instring)
case 'Q':
if (opP->mode != IMMED)
losing++;
else if (! expr8 (&opP->disp)
else if (opP->disp.exp.X_op != O_constant
|| opP->disp.exp.X_add_number < 1
|| opP->disp.exp.X_add_number > 8)
losing++;
@ -1139,7 +1142,7 @@ m68k_ip (instring)
case 't':
if (opP->mode != IMMED)
losing++;
else if (! expr8 (&opP->disp)
else if (opP->disp.exp.X_op != O_constant
|| opP->disp.exp.X_add_number < 0
|| opP->disp.exp.X_add_number > 7)
losing++;