From: Alan Modra Date: Mon, 19 Mar 2001 11:34:55 +0000 (+0000) Subject: Fix register name printed in warning message. X-Git-Tag: binutils-2_11~22 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=13e7a06f76596d64ab9b8993c8b0ef496b851e38;p=thirdparty%2Fbinutils-gdb.git Fix register name printed in warning message. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index 68aeedc174a..6eb8d3c6740 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 ffcfabe6c70..6e9fda2b916 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1962,7 +1962,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 @@ -2012,7 +2015,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 @@ -2083,7 +2086,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 63aa1cb80fe..cff7d202d6e 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. + Mon Feb 12 17:39:31 CET 2001 Jan Hubicka * i386.h (i386_optab): SSE integer converison instructions have diff --git a/include/opcode/i386.h b/include/opcode/i386.h index 2ab783e63f7..24c38971c81 100644 --- a/include/opcode/i386.h +++ b/include/opcode/i386.h @@ -1339,6 +1339,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}, @@ -1364,6 +1365,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}, @@ -1381,6 +1383,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},