* config/tc-i386.c (i386_intel_operand): Always call i386_index_check

for memory operands.  Pass the full operand_string to i386_index_check.
This commit is contained in:
Alan Modra 2003-08-04 12:03:49 +00:00
parent 8c6756949e
commit a4622f4072
2 changed files with 10 additions and 4 deletions

View file

@ -1,3 +1,8 @@
2003-08-04 Alan Modra <amodra@bigpond.net.au>
* config/tc-i386.c (i386_intel_operand): Always call i386_index_check
for memory operands. Pass the full operand_string to i386_index_check.
2003-08-01 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c: Remove SYNTAX_SVR4 macro and occurrences.

View file

@ -1417,13 +1417,13 @@ md_assemble (line)
if ((i.tm.cpu_flags & CpuPNI) && i.operands > 0)
{
/* These Intel Precott New Instructions have the fixed
/* These Intel Precott New Instructions have the fixed
operands with an opcode suffix which is coded in the same
place as an 8-bit immediate field would be. Here we check
those operands and remove them afterwards. */
unsigned int x;
for (x = 0; x < i.operands; x++)
for (x = 0; x < i.operands; x++)
if (i.op[x].regs->reg_num != x)
as_bad (_("can't use register '%%%s' as operand %d in '%s'."),
i.op[x].regs->reg_name, x + 1, i.tm.name);
@ -5621,8 +5621,9 @@ i386_intel_operand (operand_string, got_a_float)
/* Add the displacement expression. */
if (*s != '\0')
ret = i386_displacement (s, s + strlen (s))
&& i386_index_check (s);
ret = i386_displacement (s, s + strlen (s));
if (ret)
ret = i386_index_check (operand_string);
}
}