* 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:
parent
e14994d980
commit
336435bc4d
3 changed files with 17 additions and 6 deletions
|
@ -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.
|
||||
|
|
|
@ -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.
|
||||
|
||||
|
|
|
@ -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++;
|
||||
|
|
Loading…
Reference in a new issue