* config/m68k-parse.h (m68k_register): Add CAC and MBB.
	* config/tc-m68k.c (fido_ctrl): New.
	(m68k_archs): Use fido_ctrl for -mfidoa.
	(m68k_cpus): Use fido_ctrl on fido-*-*.
	(m68k_ip): Add support for CAC and MBB.
	(init_table): Add CAC and MBB.

opcodes/
	* m68k-dis.c (print_insn_arg): Add support for cac and mbb.
This commit is contained in:
Kazu Hirata 2006-12-27 07:15:02 +00:00
parent 6bd025df59
commit f7ec513bed
5 changed files with 35 additions and 4 deletions

View File

@ -1,3 +1,12 @@
2006-12-27 Kazu Hirata <kazu@codesourcery.com>
* config/m68k-parse.h (m68k_register): Add CAC and MBB.
* config/tc-m68k.c (fido_ctrl): New.
(m68k_archs): Use fido_ctrl for -mfidoa.
(m68k_cpus): Use fido_ctrl on fido-*-*.
(m68k_ip): Add support for CAC and MBB.
(init_table): Add CAC and MBB.
2006-12-26 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (i386_immediate): Remove prototype.

View File

@ -126,7 +126,9 @@ enum m68k_register
FLASHBAR, RAMBAR, /* mcf528x added these. */
MBAR2, /* mcf5249 added this. */
MBAR,
#define last_movec_reg MBAR
CAC, /* fido added this. */
MBB,
#define last_movec_reg MBB
/* End of movec ordering constraints. */
FPI,

View File

@ -231,6 +231,10 @@ static const enum m68k_register mcfv4e_ctrl[] = {
PCR3U0, PCR3L0, PCR3U1, PCR3L1,
0
};
static const enum m68k_register fido_ctrl[] = {
SFC, DFC, USP, VBR, CAC, MBB,
0
};
#define cpu32_ctrl m68010_ctrl
static const enum m68k_register *control_regs;
@ -421,7 +425,7 @@ static const struct m68k_cpu m68k_archs[] =
{m68040, m68040_ctrl, "68040", 0},
{m68060, m68060_ctrl, "68060", 0},
{cpu32|m68881, cpu32_ctrl, "cpu32", 0},
{cpu32|fido_a, cpu32_ctrl, "fidoa", 0},
{cpu32|fido_a, fido_ctrl, "fidoa", 0},
{mcfisa_a|mcfhwdiv, NULL, "isaa", 0},
{mcfisa_a|mcfhwdiv|mcfisa_aa|mcfusp, NULL, "isaaplus", 0},
{mcfisa_a|mcfhwdiv|mcfisa_b|mcfusp, NULL, "isab", 0},
@ -553,7 +557,7 @@ static const struct m68k_cpu m68k_cpus[] =
{mcfisa_a|mcfisa_b|mcfhwdiv|mcfemac|mcfusp|cfloat, mcfv4e_ctrl, "5485", -1},
{mcfisa_a|mcfisa_b|mcfhwdiv|mcfemac|mcfusp|cfloat, mcfv4e_ctrl, "548x", 0},
{cpu32|fido_a, cpu32_ctrl, "fido", 1},
{cpu32|fido_a, fido_ctrl, "fido", 1},
{0,NULL,NULL, 0}
};
@ -3074,6 +3078,12 @@ m68k_ip (char *instring)
case PCR3U1:
tmpreg = 0xD0F;
break;
case CAC:
tmpreg = 0xFFE;
break;
case MBB:
tmpreg = 0xFFF;
break;
default:
abort ();
}
@ -3798,6 +3808,9 @@ static const struct init_entry init_table[] =
{ "rambar", RAMBAR }, /* mcf528x registers. */
{ "mbar2", MBAR2 }, /* mcf5249 registers. */
{ "cac", CAC }, /* fido registers. */
{ "mbb", MBB }, /* fido registers. */
/* End of control registers. */
{ "ac", AC },

View File

@ -1,3 +1,7 @@
2006-12-27 Kazu Hirata <kazu@codesourcery.com>
* m68k-dis.c (print_insn_arg): Add support for cac and mbb.
2006-12-27 Kazu Hirata <kazu@codesourcery.com>
* m68k-opc.c (m68k_opcodes): Add sleep and trapx.

View File

@ -650,7 +650,10 @@ print_insn_arg (const char *d,
/* Should we be calling this psr like we do in case 'Y'? */
{"%mmusr",0x805},
{"%urp", 0x806}, {"%srp", 0x807}, {"%pcr", 0x808}};
{"%urp", 0x806}, {"%srp", 0x807}, {"%pcr", 0x808},
/* Fido added these. */
{"%cac", 0xffe}, {"%mbb", 0xfff}};
val = fetch_arg (buffer, place, 12, info);
for (regno = sizeof names / sizeof names[0] - 1; regno >= 0; regno--)