From 2e98d2de04d92a7486ea1007f82c93510aed16b1 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Mon, 19 Mar 2001 11:28:20 +0000 Subject: [PATCH] Fix register name printed in warning message. --- gas/ChangeLog | 5 +++++ gas/config/tc-i386.c | 9 ++++++--- include/opcode/ChangeLog | 4 ++++ include/opcode/i386.h | 3 +++ 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 3f41a18..054e911 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2001-03-19 Alan Modra + + * config/tc-i386.c (md_assemble ): Correct + used register name. + 2001-03-18 Stephane Carrez * config/tc-m68hc11.c (md_pseudo_table): Recognize xrefb to comply diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 74e5e13..585aa8d 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1996,7 +1996,10 @@ md_assemble (line) if (!quiet_warnings && (i.tm.operand_types[op] & InOutPortReg) == 0) as_warn (_("using `%%%s' instead of `%%%s' due to `%c' suffix"), - (i.op[op].regs - (i.types[op] & Reg16 ? 8 : 16))->reg_name, + (i.op[op].regs + + (i.types[op] & Reg16 + ? REGNAM_AL - REGNAM_AX + : REGNAM_AL - REGNAM_EAX))->reg_name, i.op[op].regs->reg_name, i.suffix); #endif @@ -2046,7 +2049,7 @@ md_assemble (line) #if REGISTER_WARNINGS else as_warn (_("using `%%%s' instead of `%%%s' due to `%c' suffix"), - (i.op[op].regs + 8)->reg_name, + (i.op[op].regs + REGNAM_EAX - REGNAM_AX)->reg_name, i.op[op].regs->reg_name, i.suffix); #endif @@ -2117,7 +2120,7 @@ md_assemble (line) else #if REGISTER_WARNINGS as_warn (_("using `%%%s' instead of `%%%s' due to `%c' suffix"), - (i.op[op].regs - 8)->reg_name, + (i.op[op].regs + REGNAM_AX - REGNAM_EAX)->reg_name, i.op[op].regs->reg_name, i.suffix); #endif diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog index ce26821..eef5c4d 100644 --- a/include/opcode/ChangeLog +++ b/include/opcode/ChangeLog @@ -1,3 +1,7 @@ +2001-03-19 Alan Modra + + * i386.h (REGNAM_AL, REGNAM_AX, REGNAM_EAX): Define. + 2001-02-28 Igor Shevlyakov * m68k.h: new defines for Coldfire V4. Update mcf to know diff --git a/include/opcode/i386.h b/include/opcode/i386.h index 1af44fb..f480dd4 100644 --- a/include/opcode/i386.h +++ b/include/opcode/i386.h @@ -1340,6 +1340,7 @@ static const reg_entry i386_regtab[] = { /* make %st first as we test for it */ {"st", FloatReg|FloatAcc, 0, 0}, /* 8 bit regs */ +#define REGNAM_AL 1 /* Entry in i386_regtab. */ {"al", Reg8|Acc, 0, 0}, {"cl", Reg8|ShiftCount, 0, 1}, {"dl", Reg8, 0, 2}, @@ -1365,6 +1366,7 @@ static const reg_entry i386_regtab[] = { {"r14b", Reg8, RegRex64|RegRex, 6}, {"r15b", Reg8, RegRex64|RegRex, 7}, /* 16 bit regs */ +#define REGNAM_AX 25 {"ax", Reg16|Acc, 0, 0}, {"cx", Reg16, 0, 1}, {"dx", Reg16|InOutPortReg, 0, 2}, @@ -1382,6 +1384,7 @@ static const reg_entry i386_regtab[] = { {"r14w", Reg16, RegRex, 6}, {"r15w", Reg16, RegRex, 7}, /* 32 bit regs */ +#define REGNAM_EAX 41 {"eax", Reg32|BaseIndex|Acc, 0, 0}, /* Must be in ax + 16 slot */ {"ecx", Reg32|BaseIndex, 0, 1}, {"edx", Reg32|BaseIndex, 0, 2}, -- 2.7.4