aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog6
-rw-r--r--gas/config/m68k-parse.h1
-rw-r--r--gas/config/tc-m68k.c11
3 files changed, 17 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 3afe1b4..1c0af35 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2004-10-08 Linus Nielsen Feltzing <linus@haxx.se>
+
+ * config/m68k-parse.h (enum m68k_register): New control register,
+ MBAR2 (for MCF5249)
+ * config/tc-m68k.c: Correct control register set for MCF5249.
+
2004-10-07 Bob Wilson <bob.wilson@acm.org>
* config/tc-xtensa.c (absolute_literals_supported): New global flag.
diff --git a/gas/config/m68k-parse.h b/gas/config/m68k-parse.h
index 3b98b8a..769a432 100644
--- a/gas/config/m68k-parse.h
+++ b/gas/config/m68k-parse.h
@@ -124,6 +124,7 @@ enum m68k_register
MBAR0, MBAR1, /* mcfv4e added these. */
ACR0, ACR1, ACR2, ACR3, /* mcf5200 added these. */
FLASHBAR, RAMBAR, /* mcf528x added these. */
+ MBAR2, /* mcf5249 added this. */
MBAR,
#define last_movec_reg MBAR
/* End of movec ordering constraints. */
diff --git a/gas/config/tc-m68k.c b/gas/config/tc-m68k.c
index d784c03..04baa6e 100644
--- a/gas/config/tc-m68k.c
+++ b/gas/config/tc-m68k.c
@@ -178,6 +178,10 @@ static const enum m68k_register mcf_control_regs[] = {
RAMBAR0, RAMBAR1, MBAR,
0
};
+static const enum m68k_register mcf5249_control_regs[] = {
+ CACR, ACR0, ACR1, VBR, RAMBAR0, RAMBAR1, MBAR, MBAR2,
+ 0
+};
static const enum m68k_register mcf528x_control_regs[] = {
CACR, ACR0, ACR1, VBR, FLASHBAR, RAMBAR,
0
@@ -2989,6 +2993,7 @@ m68k_ip (char *instring)
tmpreg = 0xC0D;
break;
case MBAR0:
+ case MBAR2:
case SECMBAR:
tmpreg = 0xC0E;
break;
@@ -3754,6 +3759,8 @@ static const struct init_entry init_table[] =
{ "flashbar", FLASHBAR }, /* mcf528x registers. */
{ "rambar", RAMBAR }, /* mcf528x registers. */
+
+ { "mbar2", MBAR2 }, /* mcf5249 registers. */
/* End of control registers. */
{ "ac", AC },
@@ -4341,11 +4348,13 @@ select_control_regs (void)
break;
case mcf5200:
case mcf5206e:
- case mcf5249:
case mcf5307:
case mcf5407:
control_regs = mcf_control_regs;
break;
+ case mcf5249:
+ control_regs = mcf5249_control_regs;
+ break;
case mcf528x:
case mcf521x:
control_regs = mcf528x_control_regs;