This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [patch]: i386 gas, intel syntax and IgnoreSize modifier


On Wed, 9 Aug 2000, Diego Novillo wrote:

> When using i386 gas with intel syntax I found that gas was
> rejecting the following instruction:
> 
> 	pand	mm1, qword ptr [esi]
> 
> which I believe is correct (I'm not too familiar with i386
> assembly, but MASM was accepting the instruction). However, when
> you removed the `qword' qualifier, the instruction assembled
> fine.
> 
> The following patch fixes this problem. It essentially ignores
> the instruction prefix if the opcode modifier has the IgnoreSize
> bit set.
> 
> OK to install?

No.  Your patch removes suffix checking on many instructions, eg. all FP
instructions, and will affect AT&T mode as well as Intel mode.  Please
modify the patch to only affect Intel mode.

Here would be a better place to add more intel mode hacks:

	/* Check the suffix, except for some instructions in intel mode.  */
	if ((t->opcode_modifier & suffix_check)
	    && !(intel_syntax
		 && t->base_opcode == 0xd9
		 && (t->extension_opcode == 5	/* 0xd9,5 "fldcw"  */
		     || t->extension_opcode == 7))) /* 0xd9,7 "f{n}stcw"  */

Alan Modra
-- 
Linuxcare.  Support for the Revolution.




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]