From 0b810a6ee0b12ade68680f149f167650390d80fc Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 1 Oct 1996 17:59:56 +0000 Subject: [PATCH] * config/tc-m68k.c (init_table): Correct access control unit register numbers. From Ken Rose . --- gas/ChangeLog | 3 +++ gas/config/tc-m68k.c | 22 +++++++++++----------- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index d862ba5..bb2aab5 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,8 @@ Tue Oct 1 12:37:48 1996 Ian Lance Taylor + * config/tc-m68k.c (init_table): Correct access control unit + register numbers. From Ken Rose . + * config/tc-alpha.c: Add some static function prototypes. (alpha_macros): Move to top of file. Make static. (alpha_num_macros): Move to top of file. diff --git a/gas/config/tc-m68k.c b/gas/config/tc-m68k.c index 4e8938c..9c5c9ab 100644 --- a/gas/config/tc-m68k.c +++ b/gas/config/tc-m68k.c @@ -259,7 +259,7 @@ add_fix (width, exp, pc_rel, pc_fix) int pc_rel; int pc_fix; { - the_ins.reloc[the_ins.nrel].n = (((width)=='B') + the_ins.reloc[the_ins.nrel].n = ((width == 'B' || width == '3') ? (the_ins.numo*2-1) : (((width)=='b') ? (the_ins.numo*2+1) @@ -992,12 +992,10 @@ m68k_ip (instring) /* If we didn't get the right number of ops, or we have no common model with this pattern then reject this pattern. */ + ok_arch |= opcode->m_arch; if (opsfound != opcode->m_opnum || ((opcode->m_arch & current_architecture) == 0)) - { - ++losing; - ok_arch |= opcode->m_arch; - } + ++losing; else { for (s = opcode->m_operands, opP = &the_ins.operands[0]; @@ -3026,11 +3024,13 @@ static const struct init_entry init_table[] = { "dacr0", DTT0 }, /* Data Access Control Register 0 */ { "dacr1", DTT1 }, /* Data Access Control Register 0 */ - /* mcf5200 versions of same */ - { "acr2", ITT0 }, /* Access Control Unit 2 */ - { "acr3", ITT1 }, /* Access Control Unit 3 */ - { "acr0", DTT0 }, /* Access Control Unit 0 */ - { "acr1", DTT1 }, /* Access Control Unit 1 */ + /* mcf5200 versions of same. The ColdFire programmer's reference + manual indicated that the order is 2,3,0,1, but Ken Rose + says that 0,1,2,3 is the correct order. */ + { "acr0", ITT0 }, /* Access Control Unit 0 */ + { "acr1", ITT1 }, /* Access Control Unit 1 */ + { "acr2", DTT0 }, /* Access Control Unit 2 */ + { "acr3", DTT1 }, /* Access Control Unit 3 */ { "tc", TC }, /* MMU Translation Control Register */ { "tcr", TC }, @@ -3210,7 +3210,7 @@ md_assemble (str) n = 1; break; case '3': - n = 2; + n = 1; break; case 'w': n = 2; -- 2.7.4