Jonas Maebe 3c6aa91a96 * factored out the loading of threadvars in its own method, and put the 10 gadi atpakaļ
..
aopt386.pas 1b43930749 - removed long deprecated/buggy assembler cse optimiser for i386 10 gadi atpakaļ
cgcpu.pas 67b8aceaee * synchronized with privatetrunk till r30095 10 gadi atpakaļ
cpubase.inc bfbb0c5b9d * optimize mov/lea 11 gadi atpakaļ
cpuelf.pas 901275b4a1 Switch back to emitting BLX instructions and fix calculation of constant offsets(should rarely/never happen). 10 gadi atpakaļ
cpuinfo.pas 3cb9be73bc Moved tcontrollerdatatype out into cpuinfo. 10 gadi atpakaļ
cpunode.pas 4a79481c51 * isolated segment-related functionality of tabsolutevarsym into i386/i8086- 11 gadi atpakaļ
cpupara.pas f402b0d7df * changed getpointerdef() into a tpointerdef.getreusable() class method 10 gadi atpakaļ
cpupi.pas b1dc518ac4 * removed systems_need_16_byte_stack_alignment and use target_info.stackalign instead 13 gadi atpakaļ
cputarg.pas 4431ba2c08 merged/updated AROS/i386 target to trunk from AROS branch, to support Marcus Sackrow's work on AROS support which will hopefully benefit all Amiga-like targets (classic, MorphOS) on the long run. Compiler only, RTL comes in the next run. 11 gadi atpakaļ
daopt386.pas 4d5119bf1c * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables 11 gadi atpakaļ
hlcgcpu.pas b745dcc64c * moved g_external_wrapper() to the hlcg, and also g_intf_wrapper() because 11 gadi atpakaļ
i386att.inc d6e4af8279 + applied remaining patches of Torsten Grundke: adds gather instructions of avx2 10 gadi atpakaļ
i386atts.inc d6e4af8279 + applied remaining patches of Torsten Grundke: adds gather instructions of avx2 10 gadi atpakaļ
i386int.inc d6e4af8279 + applied remaining patches of Torsten Grundke: adds gather instructions of avx2 10 gadi atpakaļ
i386nop.inc d6e4af8279 + applied remaining patches of Torsten Grundke: adds gather instructions of avx2 10 gadi atpakaļ
i386op.inc d6e4af8279 + applied remaining patches of Torsten Grundke: adds gather instructions of avx2 10 gadi atpakaļ
i386prop.inc 99635658ec * corrects change flags for VSQRTSD 10 gadi atpakaļ
i386tab.inc d6e4af8279 + applied remaining patches of Torsten Grundke: adds gather instructions of avx2 10 gadi atpakaļ
n386add.pas 0fc1fd6ac1 * replaced current_procinfo.currtrue/falselabel with storing the true/false 10 gadi atpakaļ
n386cal.pas 4ee15b84da AROS: syscall (library call) support for based on the Amiga/68k and MorphOS/PPC versions 11 gadi atpakaļ
n386flw.pas e542800ea9 * Win64 SEH: Track control flow out of unwind-protected regions in a more precise way and don't generate expensive calls to __fpc_local_unwind when not necessary. 10 gadi atpakaļ
n386inl.pas 66e82f1655 + i386: generate optimized code for 64-bit arithmetic shifts by constant amount. Shifts by 63 and by less than 32 take just two instructions, shifts by 32..62 bits are done with 3 instructions. 11 gadi atpakaļ
n386ld.pas 3c6aa91a96 * factored out the loading of threadvars in its own method, and put the 10 gadi atpakaļ
n386mat.pas 5356f17fa5 * i386: switch the div/mod node to shared code, leaving in place the specific optimization for division by power of 2. 11 gadi atpakaļ
n386mem.pas 338c064beb * moved x86-specific tpointerdef functionality to architecture-specific 11 gadi atpakaļ
n386set.pas d0db391d7c * cleanup of unused units 12 gadi atpakaļ
popt386.pas 9f587625e7 + handle not and neg in isFoldableArithOp as well 10 gadi atpakaļ
r386ari.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386att.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386con.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386dwrf.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386int.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386iri.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386nasm.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386nor.inc 283ff05127 * merged avx support in inline assembler developed by Torsten Grundke 13 gadi atpakaļ
r386nri.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386num.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386ot.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386rni.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386sri.inc 5af873ee5b * 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. 11 gadi atpakaļ
r386stab.inc 283ff05127 * merged avx support in inline assembler developed by Torsten Grundke 13 gadi atpakaļ
r386std.inc 5af873ee5b * 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. 11 gadi atpakaļ
ra386att.pas 757ed4e8d3 * standard assembler reader for i386 20 gadi atpakaļ
ra386int.pas 6c6bf452ca * Fixed level 2 comment warnings. 17 gadi atpakaļ
rgcpu.pas b7fe6797bf Merged revisions 2921-2922,2925 via svnmerge from 19 gadi atpakaļ
symcpu.pas f402b0d7df * changed getpointerdef() into a tpointerdef.getreusable() class method 10 gadi atpakaļ