fpc/compiler/i386
sergei f97f223de6 x86_64 assembler reader improvements:
+ Added new value TAttSuffix.attsufINTdual, assigned it to movsX and movzX instructions
* Moved suffix-to-size translation tables from rax86att.pas to itcpugas.pas
+ Added x86_64 specific suffix-to-size translation, enabling BQ and WQ suffixes (LQ seems unnecessary at the moment)
* Fixed logic of tx86attreader.is_asmopcode so it only assigns dual suffix to instructions that explicitly allow it. This disambiguates cases like movsbq=movs+bq vs. cmovbq=cmovb+q
* As a net result: movz[bw]q and movs[bw]q now compile for x86_64; cmovbw and cmovbl which were incorrectly handled for i386 are now fixed.
+ Test for correct assembling of cmov.

git-svn-id: trunk@17353 -
2011-04-20 11:18:13 +00:00
..
ag386nsm.pas + user section type 2011-03-20 15:42:28 +00:00
aopt386.pas
cgcpu.pas Rebase to revision 17306 2011-04-13 10:04:14 +00:00
cpubase.inc
cpuinfo.pas * rename cpu instruction set define cpu386 to cpu80386. cpu386 is used already as a family define 2010-01-17 21:16:23 +00:00
cpunode.pas + added {$modeswitch objectivec1}/-Mobjectivec1 mode switch to enable 2009-03-08 18:40:32 +00:00
cpupara.pas * i386-win32: Pass const variants by reference to safecall procedures, confirmed this behavior with Delphi (in general, safecall on win32 must behave as close as possible to stdcall). 2011-04-15 12:12:36 +00:00
cpupi.pas + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
cputarg.pas + basic i386-embedded implementation for multiboot by Jeppe Johansen, resolves #15676 2011-01-23 11:18:50 +00:00
csopt386.pas * optbase empty skeleton removed with two dependancies. Duplicate unit name caused problems. 2009-05-03 21:31:33 +00:00
daopt386.pas * Fixed spell error revealed by lintian. 2010-10-06 20:33:57 +00:00
i386att.inc * support for SSSE3, SSE4,1, SSE4.2, AES instructions set by Emelyanov Roman, resolves #18527 2011-04-05 20:22:57 +00:00
i386atts.inc x86_64 assembler reader improvements: 2011-04-20 11:18:13 +00:00
i386int.inc * support for SSSE3, SSE4,1, SSE4.2, AES instructions set by Emelyanov Roman, resolves #18527 2011-04-05 20:22:57 +00:00
i386nop.inc * support for SSSE3, SSE4,1, SSE4.2, AES instructions set by Emelyanov Roman, resolves #18527 2011-04-05 20:22:57 +00:00
i386op.inc * support for SSSE3, SSE4,1, SSE4.2, AES instructions set by Emelyanov Roman, resolves #18527 2011-04-05 20:22:57 +00:00
i386prop.inc * support for SSSE3, SSE4,1, SSE4.2, AES instructions set by Emelyanov Roman, resolves #18527 2011-04-05 20:22:57 +00:00
i386tab.inc * support for SSSE3, SSE4,1, SSE4.2, AES instructions set by Emelyanov Roman, resolves #18527 2011-04-05 20:22:57 +00:00
n386add.pas * implementation of 32x32->64 multiplication for i386 based on patch 2008-11-06 21:03:10 +00:00
n386cal.pas + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
n386inl.pas
n386mat.pas
n386mem.pas * the compiler now explicitly keeps track of the minimally guaranteed 2009-02-08 13:00:24 +00:00
n386set.pas + create jump tables for case statements on x86-64 2008-07-13 10:26:25 +00:00
popt386.pas * skip instructions containing a reference with a segment prefix (fixes 2010-12-23 15:24:29 +00:00
r386ari.inc
r386att.inc
r386con.inc
r386dwrf.inc
r386int.inc
r386iri.inc
r386nasm.inc
r386nor.inc
r386nri.inc
r386num.inc
r386op.inc
r386ot.inc
r386rni.inc
r386sri.inc
r386stab.inc
r386std.inc
ra386att.pas
ra386int.pas * Fixed level 2 comment warnings. 2008-07-23 10:08:48 +00:00
rgcpu.pas
rropt386.pas * the compiler now explicitly keeps track of the minimally guaranteed 2009-02-08 13:00:24 +00:00