Checkpoint

This commit is contained in:
Steve Chamberlain
1992-05-26 18:26:13 +00:00
parent 8b046402f5
commit 20ccefe6d4

View File

@ -19,28 +19,29 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
/* These are used as bit flags for arch below. */
enum m68k_architecture {
_m68k_undef = 0,
m68000 = 0x01,
m68008 = m68000, /* synonym for -m68000. otherwise unused. */
m68010 = 0x02,
m68020 = 0x04,
m68030 = 0x08,
m68040 = 0x10,
m68881 = 0x20,
m68882 = m68881, /* synonym for -m68881. otherwise unused. */
m68851 = 0x40,
enum m68k_architecture { a,b };
#define _m68k_undef 0
#define m68000 0x01
#define m68008 m68000 /* synonym for -m68000. otherwise unused. */
#define m68010 0x02
#define m68020 0x04
#define m68030 0x08
#define m68040 0x10
#define m68881 0x20
#define m68882 m68881 /* synonym for -m68881. otherwise unused. */
#define m68851 0x40
/* handy aliases */
m68040up = m68040,
m68030up = (m68030 | m68040up),
m68020up = (m68020 | m68030up),
m68010up = (m68010 | m68020up),
m68000up = (m68000 | m68010up),
#define m68040up m68040
#define m68030up (m68030 | m68040up)
#define m68020up (m68020 | m68030up)
#define m68010up (m68010 | m68020up)
#define m68000up (m68000 | m68010up)
#define mfloat (m68881 | m68882 | m68040)
#define mmmu (m68851 | m68030 | m68040)
mfloat = (m68881 | m68882 | m68040),
mmmu = (m68851 | m68030 | m68040)
}; /* enum m68k_architecture */
/* note that differences in addressing modes that aren't distinguished
in the following table are handled explicitly by gas. */
@ -50,7 +51,7 @@ struct m68k_opcode {
unsigned long opcode;
unsigned long match;
char *args;
enum m68k_architecture arch;
int arch;
};
/* We store four bytes of opcode for all opcodes because that
@ -277,9 +278,9 @@ struct m68k_opcode m68k_opcodes[] =
{"addb", one(0150000), one(0170700), ";bDd", m68000up }, /* addb <ea>, Dd */
{"addb", one(0150400), one(0170700), "Dd~b", m68000up }, /* addb Dd, <ea> */
{"addw", one(0150300), one(0170700), "*wAd", m68000up }, /* adda written as add */
{"addw", one(0050100), one(0170700), "Qd%w", m68000up }, /* addq written as add */
{"addw", one(0003100), one(0177700), "#w$w", m68000up }, /* addi written as add */
{"addw", one(0150300), one(0170700), "*wAd", m68000up }, /* adda written as add */
{"addw", one(0150100), one(0170700), "*wDd", m68000up }, /* addw <ea>, Dd */
{"addw", one(0150500), one(0170700), "Dd~w", m68000up }, /* addw Dd, <ea> */
@ -420,6 +421,11 @@ struct m68k_opcode m68k_opcodes[] =
{"bclrb", one(0000600), one(0170700), "Dd$s", m68000up },
{"bclrb", one(0004200), one(0177700), "#b$s", m68000up },
{"bchgl", one(0000500), one(0170700), "Dd$s", m68000up },
{"bchgl", one(0004100), one(0177700), "#b$s", m68000up },
{"bclrl", one(0000600), one(0170700), "Dd$s", m68000up },
{"bclrl", one(0004200), one(0177700), "#b$s", m68000up },
#endif
{"bchg", one(0000500), one(0170700), "Dd$s", m68000up },
@ -444,6 +450,12 @@ struct m68k_opcode m68k_opcodes[] =
{"btstb", one(0000400), one(0170700), "Dd@s", m68000up },
{"btstb", one(0004000), one(0177700), "#b@s", m68000up },
{"bsetl", one(0000700), one(0170700), "Dd$s", m68000up },
{"bsetl", one(0004300), one(0177700), "#b$s", m68000up },
{"btstl", one(0000400), one(0170700), "Dd@s", m68000up },
{"btstl", one(0004000), one(0177700), "#b@s", m68000up },
#endif
{"bset", one(0000700), one(0170700), "Dd$s", m68000up },
@ -1978,6 +1990,7 @@ struct m68k_opcode m68k_opcodes[] =
{"subil", one(0002200), one(0177700), "#l$s", m68000up },
{"subiw", one(0002100), one(0177700), "#w$s", m68000up },
{"subl", one(0050600), one(0170700), "Qd%s", m68000up },
{"suba", one(0110700), one(0170700), "*lAd", m68000up },
{"subl", one(0002200), one(0177700), "#l$s", m68000up },
{"subl", one(0110700), one(0170700), "*lAd", m68000up },
{"subl", one(0110200), one(0170700), "*lDd", m68000up },
@ -2030,39 +2043,39 @@ struct m68k_opcode m68k_opcodes[] =
{"trapvc", one(0054374), one(0177777), "", m68020up },
{"trapvs", one(0054774), one(0177777), "", m68020up },
{"trapcc.w", one(0052372), one(0177777), "", m68020up },
{"trapcs.w", one(0052772), one(0177777), "", m68020up },
{"trapeq.w", one(0053772), one(0177777), "", m68020up },
{"trapf.w", one(0050772), one(0177777), "", m68020up },
{"trapge.w", one(0056372), one(0177777), "", m68020up },
{"trapgt.w", one(0057372), one(0177777), "", m68020up },
{"traphi.w", one(0051372), one(0177777), "", m68020up },
{"traple.w", one(0057772), one(0177777), "", m68020up },
{"trapls.w", one(0051772), one(0177777), "", m68020up },
{"traplt.w", one(0056772), one(0177777), "", m68020up },
{"trapmi.w", one(0055772), one(0177777), "", m68020up },
{"trapne.w", one(0053372), one(0177777), "", m68020up },
{"trappl.w", one(0055372), one(0177777), "", m68020up },
{"trapt.w", one(0050372), one(0177777), "", m68020up },
{"trapvc.w", one(0054372), one(0177777), "", m68020up },
{"trapvs.w", one(0054772), one(0177777), "", m68020up },
{"trapccw", one(0052372), one(0177777), "#w", m68020up },
{"trapcsw", one(0052772), one(0177777), "#w", m68020up },
{"trapeqw", one(0053772), one(0177777), "#w", m68020up },
{"trapfw", one(0050772), one(0177777), "#w", m68020up },
{"trapgew", one(0056372), one(0177777), "#w", m68020up },
{"trapgtw", one(0057372), one(0177777), "#w", m68020up },
{"traphiw", one(0051372), one(0177777), "#w", m68020up },
{"traplew", one(0057772), one(0177777), "#w", m68020up },
{"traplsw", one(0051772), one(0177777), "#w", m68020up },
{"trapltw", one(0056772), one(0177777), "#w", m68020up },
{"trapmiw", one(0055772), one(0177777), "#w", m68020up },
{"trapnew", one(0053372), one(0177777), "#w", m68020up },
{"trapplw", one(0055372), one(0177777), "#w", m68020up },
{"traptw", one(0050372), one(0177777), "#w", m68020up },
{"trapvcw", one(0054372), one(0177777), "#w", m68020up },
{"trapvsw", one(0054772), one(0177777), "#w", m68020up },
{"trapcc.l", one(0052373), one(0177777), "", m68020up },
{"trapcs.l", one(0052773), one(0177777), "", m68020up },
{"trapeq.l", one(0053773), one(0177777), "", m68020up },
{"trapf.l", one(0050773), one(0177777), "", m68020up },
{"trapge.l", one(0056373), one(0177777), "", m68020up },
{"trapgt.l", one(0057373), one(0177777), "", m68020up },
{"traphi.l", one(0051373), one(0177777), "", m68020up },
{"traple.l", one(0057773), one(0177777), "", m68020up },
{"trapls.l", one(0051773), one(0177777), "", m68020up },
{"traplt.l", one(0056773), one(0177777), "", m68020up },
{"trapmi.l", one(0055773), one(0177777), "", m68020up },
{"trapne.l", one(0053373), one(0177777), "", m68020up },
{"trappl.l", one(0055373), one(0177777), "", m68020up },
{"trapt.l", one(0050373), one(0177777), "", m68020up },
{"trapvc.l", one(0054373), one(0177777), "", m68020up },
{"trapvs.l", one(0054773), one(0177777), "", m68020up },
{"trapccl", one(0052373), one(0177777), "#l", m68020up },
{"trapcsl", one(0052773), one(0177777), "#l", m68020up },
{"trapeql", one(0053773), one(0177777), "#l", m68020up },
{"trapfl", one(0050773), one(0177777), "#l", m68020up },
{"trapgel", one(0056373), one(0177777), "#l", m68020up },
{"trapgtl", one(0057373), one(0177777), "#l", m68020up },
{"traphil", one(0051373), one(0177777), "#l", m68020up },
{"traplel", one(0057773), one(0177777), "#l", m68020up },
{"traplsl", one(0051773), one(0177777), "#l", m68020up },
{"trapltl", one(0056773), one(0177777), "#l", m68020up },
{"trapmil", one(0055773), one(0177777), "#l", m68020up },
{"trapnel", one(0053373), one(0177777), "#l", m68020up },
{"trappll", one(0055373), one(0177777), "#l", m68020up },
{"traptl", one(0050373), one(0177777), "#l", m68020up },
{"trapvcl", one(0054373), one(0177777), "#l", m68020up },
{"trapvsl", one(0054773), one(0177777), "#l", m68020up },
{"trapv", one(0047166), one(0177777), "", m68000up },
@ -2083,7 +2096,10 @@ struct m68k_opcode m68k_opcodes[] =
{"jbsr", one(0047200), one(0177700), "!s", m68000up },
{"jra", one(0060000), one(0177400), "Bg", m68000up },
{"jra", one(0047300), one(0177700), "!s", m68000up },
#ifdef MRI
{"jbra", one(0060000), one(0177400), "Bg", m68000up },
{"jbra", one(0047300), one(0177700), "!s", m68000up },
#endif
{"jhi", one(0061000), one(0177400), "Bg", m68000up },
{"jls", one(0061400), one(0177400), "Bg", m68000up },
{"jcc", one(0062000), one(0177400), "Bg", m68000up },
@ -2099,6 +2115,23 @@ struct m68k_opcode m68k_opcodes[] =
{"jgt", one(0067000), one(0177400), "Bg", m68000up },
{"jle", one(0067400), one(0177400), "Bg", m68000up },
#ifdef MRI
{"jbhi", one(0061000), one(0177400), "Bg", m68000up },
{"jbls", one(0061400), one(0177400), "Bg", m68000up },
{"jbcc", one(0062000), one(0177400), "Bg", m68000up },
{"jbcs", one(0062400), one(0177400), "Bg", m68000up },
{"jbne", one(0063000), one(0177400), "Bg", m68000up },
{"jbeq", one(0063400), one(0177400), "Bg", m68000up },
{"jbvc", one(0064000), one(0177400), "Bg", m68000up },
{"jbvs", one(0064400), one(0177400), "Bg", m68000up },
{"jbpl", one(0065000), one(0177400), "Bg", m68000up },
{"jbmi", one(0065400), one(0177400), "Bg", m68000up },
{"jbge", one(0066000), one(0177400), "Bg", m68000up },
{"jblt", one(0066400), one(0177400), "Bg", m68000up },
{"jbgt", one(0067000), one(0177400), "Bg", m68000up },
{"jble", one(0067400), one(0177400), "Bg", m68000up },
#endif
/* aliases */
#ifdef MRI