From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Lance Taylor To: jeffdb@goodnet.com Cc: gas2@cygnus.com Subject: Re: Question re fstsww fstcww fnstsww && fldcww i386pei /* note RETURN address */ Date: Sun, 06 Dec 1998 10:24:00 -0000 Message-id: <199812061824.NAA06551@subrogation.cygnus.com> References: <36670e45.1065414@mail.goodnet.com> X-SW-Source: 1998/msg00245.html From: jeffdbREMOVETHIS@goodnet.com (Mikey) Date: Thu, 03 Dec 1998 22:28:41 GMT is there a reason that support was dropped for these instructions, or to put it another way that the size suffix is no longer recognized? my binutils is 980705, so this may have been fixed in more recent. ;^) #define fstsww fstsw #define fstcww fstcw #define fnstsww fnstsw #define fldcww fldcw Although the size suffix is redundant for these instructions, I can't think of any reason that gas should reject it. I checked in the appended patch. Ian Index: i386.h =================================================================== RCS file: /cvs/cvsfiles/devo/include/opcode/i386.h,v retrieving revision 1.66 retrieving revision 1.67 diff -u -r1.66 -r1.67 --- i386.h 1998/11/11 05:58:08 1.66 +++ i386.h 1998/12/06 18:22:56 1.67 @@ -674,15 +674,15 @@ /* processor control */ {"fninit", 0, 0xdbe3, X, FP, { 0, 0, 0} }, {"finit", 0, 0xdbe3, X, FP|FWait, { 0, 0, 0} }, -{"fldcw", 1, 0xd9, 5, FP|Modrm, { ShortMem, 0, 0} }, -{"fnstcw", 1, 0xd9, 7, FP|Modrm, { ShortMem, 0, 0} }, -{"fstcw", 1, 0xd9, 7, FP|FWait|Modrm, { ShortMem, 0, 0} }, -{"fnstsw", 1, 0xdfe0, X, FP, { Acc, 0, 0} }, -{"fnstsw", 1, 0xdd, 7, FP|Modrm, { ShortMem, 0, 0} }, -{"fnstsw", 0, 0xdfe0, X, FP, { 0, 0, 0} }, -{"fstsw", 1, 0xdfe0, X, FP|FWait, { Acc, 0, 0} }, -{"fstsw", 1, 0xdd, 7, FP|FWait|Modrm, { ShortMem, 0, 0} }, -{"fstsw", 0, 0xdfe0, X, FP|FWait, { 0, 0, 0} }, +{"fldcw", 1, 0xd9, 5, w_Suf|IgnoreSize|Modrm, { ShortMem, 0, 0} }, +{"fnstcw", 1, 0xd9, 7, w_Suf|IgnoreSize|Modrm, { ShortMem, 0, 0} }, +{"fstcw", 1, 0xd9, 7, w_Suf|IgnoreSize|FWait|Modrm, { ShortMem, 0, 0} }, +{"fnstsw", 1, 0xdfe0, X, w_Suf|IgnoreSize, { Acc, 0, 0} }, +{"fnstsw", 1, 0xdd, 7, w_Suf|IgnoreSize|Modrm, { ShortMem, 0, 0} }, +{"fnstsw", 0, 0xdfe0, X, w_Suf|IgnoreSize, { 0, 0, 0} }, +{"fstsw", 1, 0xdfe0, X, w_Suf|IgnoreSize|FWait, { Acc, 0, 0} }, +{"fstsw", 1, 0xdd, 7, w_Suf|IgnoreSize|FWait|Modrm, { ShortMem, 0, 0} }, +{"fstsw", 0, 0xdfe0, X, w_Suf|IgnoreSize|FWait, { 0, 0, 0} }, {"fnclex", 0, 0xdbe2, X, FP, { 0, 0, 0} }, {"fclex", 0, 0xdbe2, X, FP|FWait, { 0, 0, 0} }, /* Short forms of fldenv, fstenv use data size prefix.