sergei 9c1f917e3a * a_call_ref functionality cannot be implemented efficiently at code generator level, because references need specific preparations at earlier points. Moved this support to tcgcallnode and its x86 descendants, and got rid of all ifdef's around. vor 11 Jahren
..
aoptcpu.pas 19c8abac0b + enable jump optimizer for i8086 vor 12 Jahren
aoptcpub.pas 19c8abac0b + enable jump optimizer for i8086 vor 12 Jahren
aoptcpud.pas 19c8abac0b + enable jump optimizer for i8086 vor 12 Jahren
cgcpu.pas 9c1f917e3a * a_call_ref functionality cannot be implemented efficiently at code generator level, because references need specific preparations at earlier points. Moved this support to tcgcallnode and its x86 descendants, and got rid of all ifdef's around. vor 11 Jahren
cpubase.inc c48d572996 Implement support for saving and restoring address registers. vor 12 Jahren
cpuinfo.pas e83ef05b74 - disable cs_opt_nodecse from -O2 on i8086, because it breaks building packages vor 11 Jahren
cpunode.pas b342588af1 + i8086 specific far proc aware implementation of ttypeconvnode.second_proc_to_procvar vor 12 Jahren
cpupara.pas 4b93fa1323 * set all the i8086 calling conventions' volatile registers to be the same as the 'pascal' calling convention; this should make cdecl compatible with 16-bit C compilers vor 12 Jahren
cpupi.pas c916105db8 - rm ti8086procinfo.allocate_got_register as it isn't used on the i8086 vor 12 Jahren
cputarg.pas eff0894a66 all the extra i8086 units added vor 12 Jahren
hlcgcpu.pas 039979fdcc * handle 4-byte records in registers as well in location_force_mem on i8086 vor 12 Jahren
i8086att.inc 7028210817 + tzcnt assembler instruction vor 11 Jahren
i8086atts.inc 7028210817 + tzcnt assembler instruction vor 11 Jahren
i8086int.inc 7028210817 + tzcnt assembler instruction vor 11 Jahren
i8086nop.inc 7028210817 + tzcnt assembler instruction vor 11 Jahren
i8086op.inc 7028210817 + tzcnt assembler instruction vor 11 Jahren
i8086prop.inc 8989a40b4f * more flags to mark changes fixed vor 11 Jahren
i8086tab.inc 7028210817 + tzcnt assembler instruction vor 11 Jahren
n8086add.pas 2602f379d7 * fixes in the 16 to 32-bit multiplication in ti8086addnode.second_mul vor 11 Jahren
n8086cal.pas 9c1f917e3a * a_call_ref functionality cannot be implemented efficiently at code generator level, because references need specific preparations at earlier points. Moved this support to tcgcallnode and its x86 descendants, and got rid of all ifdef's around. vor 11 Jahren
n8086cnv.pas 645cd11b9d * fixed the assignment of global functions to nested procvars in i8086 far code vor 12 Jahren
n8086con.pas a308994423 * i8086 specific code from tcgpointerconstnode.pass_generate_code moved to an i8086 specific overriden method vor 12 Jahren
n8086inl.pas 97ca0fa323 - removed ti8086inlinenode.second_round_real, second_trunc_real and load_fpu_location as they mostly repeat the code in tx86inlinenode.load_fpu_location; tx86inlinenode.load_fpu_location adapted for i8086 instead vor 12 Jahren
n8086mat.pas dc432918da + enabled the use of the DIV/IDIV instruction for 16-bit div/mod on i8086 vor 11 Jahren
n8086mem.pas 6aae88578c + getting the address of a label now returns a far pointer in i8086 far code memory models; this fixes the call to fpc_raiseexception in the raise node vor 12 Jahren
r8086ari.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. vor 12 Jahren
r8086att.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. vor 12 Jahren
r8086con.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. vor 12 Jahren
r8086dwrf.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. vor 12 Jahren
r8086int.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. vor 12 Jahren
r8086iri.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. vor 12 Jahren
r8086nasm.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. vor 12 Jahren
r8086nor.inc 107a6f6552 * i8086 versions of i386*.inc and r386*.inc renamed to i8086*.inc and r8086*.inc vor 12 Jahren
r8086nri.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. vor 12 Jahren
r8086num.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. vor 12 Jahren
r8086ot.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. vor 12 Jahren
r8086rni.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. vor 12 Jahren
r8086sri.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. vor 12 Jahren
r8086stab.inc 107a6f6552 * i8086 versions of i386*.inc and r386*.inc renamed to i8086*.inc and r8086*.inc vor 12 Jahren
r8086std.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. vor 12 Jahren
ra8086att.pas a04cbc09b0 * changed the default i8086 asmmode to Intel vor 12 Jahren
ra8086int.pas a04cbc09b0 * changed the default i8086 asmmode to Intel vor 12 Jahren
rgcpu.pas 42e82c9de3 * when a i8086 reference uses only one register, choose it from the set [BX,BP,SI,DI] as it can be treated either as a base or an index, depending on what's convenient vor 12 Jahren