From e53d3a5d95b7c476569007171bb69c3b6302431d Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Fri, 25 Feb 2000 11:41:12 +0000 Subject: [PATCH] Extend the i386 gas testsuite to do some tests for intel_syntax. Fix all the errors exposed by this addition. These were intel mode "fi... word ptr", "fi... dword ptr", "jmp Imm seg, Imm offset", "out dx,al". The failure with intel "out dx,al" was also present in att "out al,dx". Extend testsuite to catch this case too. --- include/opcode/ChangeLog | 5 +++++ include/opcode/i386.h | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog index 41b7dbbe1..1beea886c 100644 --- a/include/opcode/ChangeLog +++ b/include/opcode/ChangeLog @@ -1,3 +1,8 @@ +2000-02-25 Alan Modra + + * i386.h (fild, fistp): Change intel d_Suf form to fildd and + fistpd without suffix. + 2000-02-24 Nick Clifton * cgen.h (cgen_cpu_desc): Rename field 'flags' to diff --git a/include/opcode/i386.h b/include/opcode/i386.h index ee7554b0e..8693ef056 100644 --- a/include/opcode/i386.h +++ b/include/opcode/i386.h @@ -513,7 +513,7 @@ static const template i386_optab[] = { {"fld", 1, 0xdb, 5, x_FP|Modrm, { LLongMem, 0, 0} }, /* %st0 <-- mem efloat */ {"fild", 1, 0xdf, 0, sl_Suf|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} }, /* %st0 <-- mem word(16)/dword(32) */ /* Intel Syntax */ -{"fild", 1, 0xdf, 5, d_Suf|IgnoreSize|Modrm,{ LLongMem, 0, 0} }, /* %st0 <-- mem qword (64) */ +{"fildd", 1, 0xdf, 5, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 <-- mem qword (64) */ {"fildq", 1, 0xdf, 5, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 <-- mem qword (64) */ {"fildll", 1, 0xdf, 5, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 <-- mem qword (64) */ {"fldt", 1, 0xdb, 5, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 <-- mem efloat */ @@ -533,7 +533,7 @@ static const template i386_optab[] = { {"fstp", 1, 0xdb, 7, x_FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem efloat */ {"fistp", 1, 0xdf, 3, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} }, /* %st0 --> mem word(16)/dword(32) */ /* Intel Syntax */ -{"fistp", 1, 0xdf, 7, d_FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem qword (64) */ +{"fistpd", 1, 0xdf, 7, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem qword (64) */ {"fistpq", 1, 0xdf, 7, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem qword (64) */ {"fistpll",1, 0xdf, 7, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem qword (64) */ {"fstpt", 1, 0xdb, 7, FP|Modrm, { LLongMem, 0, 0} }, /* %st0 --> mem efloat */