fpc/compiler/x86
sergei 179586f589 + SEH support for Win32. Enable by cycling with OPT=-dTEST_WIN32_SEH.
Although basic things work (no regressions in test suite, also with TEST_OPT=-O2), there are some secondary issues/TODOs:
- Exception frame around PASCALMAIN is not properly removed in DLLs
- No stack traces yet
- Stack overallocated in finalizer procedures, their entry/exit code needs cleanup
- Signals unit is probably completely broken.

git-svn-id: trunk@26225 -
2013-12-12 12:43:46 +00:00
..
aasmcpu.pas * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables 2013-12-01 17:02:08 +00:00
agx86att.pas * workaround for bug in Apple's assembler regarding movq/vmovq and integer 2013-09-02 14:39:26 +00:00
agx86int.pas * use FixNonCommutativeOpcodes in agx86int.pas as well (fixes compilation for i386) 2013-04-06 23:23:25 +00:00
agx86nsm.pas * use the 'wait' prefix (on the same line as the instruction), instead of 2013-12-05 21:31:16 +00:00
cga.pas
cgx86.pas + SEH support for Win32. Enable by cycling with OPT=-dTEST_WIN32_SEH. 2013-12-12 12:43:46 +00:00
cpubase.pas - rm FDISI,FENI,FSAVE,FSTCW,FSTENV and FSTSW from the requires_fwait_on_8087() 2013-12-03 23:56:45 +00:00
hlcgx86.pas
itcpugas.pas * command line compilation of i8086 fixed 2013-04-21 18:32:09 +00:00
itx86int.pas * merge i8086 branch by Nikolay Nikolov 2013-04-25 20:23:51 +00:00
nx86add.pas * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables 2013-12-01 17:02:08 +00:00
nx86cal.pas * moved ARM/x86 ifdef'ed code from ncgcal to virtual methods 2013-04-07 13:42:06 +00:00
nx86cnv.pas * basic avx support for floating point operations (use -Cfavx to activate) 2013-06-14 20:03:01 +00:00
nx86con.pas
nx86inl.pas * use the fwait prefixed FSTCW, followed by FWAIT, instead of FNSTCW in 2013-12-05 23:33:33 +00:00
nx86mat.pas * basic avx support for floating point operations (use -Cfavx to activate) 2013-06-14 20:03:01 +00:00
nx86mem.pas * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables 2013-12-01 17:02:08 +00:00
nx86set.pas * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables 2013-12-01 17:02:08 +00:00
rax86.pas * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables 2013-12-01 17:02:08 +00:00
rax86att.pas * properly propagate PIC-related suffixes from the x86 assembler reader in 2013-05-30 12:20:48 +00:00
rax86int.pas * convert i8086 inline asm instruction 'call symbol' to 'call far symbol' in memory models with far code 2013-09-08 16:34:12 +00:00
rgx86.pas * be able to replace lea by add when spilling 2013-11-01 19:01:20 +00:00
x86ins.dat + handle 32 bit references on x86-64 so lea can be used for 32 bit arithmetics 2013-11-01 19:01:39 +00:00
x86reg.dat * x86 targets: Profiling shows that quite a bit of time is spent in findreg_by_number(), despite it uses binary search. Worse, it is repeated for every piece of register information. Trying to get rid of some of these calls: rearranged registers so that their "opcode" matches 3 LSBs of superregister number (with a few exceptions described at the beginning of x86reg.dat). This allows to lookup opcodes in regval() with O(1) complexity, and removes need in rXXXop.inc files. 2013-10-03 08:08:04 +00:00