Fix register name printed in warning message.

This commit is contained in:
Alan Modra 2001-03-19 11:28:20 +00:00
parent d394a3392e
commit 2e98d2de04
4 changed files with 18 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2001-03-19 Alan Modra <alan@linuxcare.com.au>
* config/tc-i386.c (md_assemble <REGISTER_WARNINGS>): Correct
used register name.
2001-03-18 Stephane Carrez <Stephane.Carrez@worldnet.fr>
* config/tc-m68hc11.c (md_pseudo_table): Recognize xrefb to comply

View File

@ -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

View File

@ -1,3 +1,7 @@
2001-03-19 Alan Modra <alan@linuxcare.com.au>
* i386.h (REGNAM_AL, REGNAM_AX, REGNAM_EAX): Define.
2001-02-28 Igor Shevlyakov <igor@windriver.com>
* m68k.h: new defines for Coldfire V4. Update mcf to know

View File

@ -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},