nickysn 645cd11b9d * fixed the assignment of global functions to nested procvars in i8086 far code 12 years ago
..
aoptcpu.pas 19c8abac0b + enable jump optimizer for i8086 12 years ago
aoptcpub.pas 19c8abac0b + enable jump optimizer for i8086 12 years ago
aoptcpud.pas 19c8abac0b + enable jump optimizer for i8086 12 years ago
cgcpu.pas bfd31e7516 * optimizations in tcg8086.g_copyvaluepara_openarray: 12 years ago
cpubase.inc c48d572996 Implement support for saving and restoring address registers. 12 years ago
cpuinfo.pas b327eac688 - disable cs_opt_regvar from -O2 on i8086, since it's not working properly yet 12 years ago
cpunode.pas b342588af1 + i8086 specific far proc aware implementation of ttypeconvnode.second_proc_to_procvar 12 years ago
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 12 years ago
cpupi.pas c916105db8 - rm ti8086procinfo.allocate_got_register as it isn't used on the i8086 12 years ago
cputarg.pas eff0894a66 all the extra i8086 units added 12 years ago
hlcgcpu.pas 7e7ab2fd4d * also handle nested proc ptrs in thlcgcpu.location_force_mem on i8086 12 years ago
i8086att.inc f6e846c574 + added the NEC V20/V30 instructions 12 years ago
i8086atts.inc f6e846c574 + added the NEC V20/V30 instructions 12 years ago
i8086int.inc f6e846c574 + added the NEC V20/V30 instructions 12 years ago
i8086nop.inc 0f69362edd - rm LEA reg,imm from x86ins.dat, as that's not a valid x86 instruction, 12 years ago
i8086op.inc f6e846c574 + added the NEC V20/V30 instructions 12 years ago
i8086prop.inc f6e846c574 + added the NEC V20/V30 instructions 12 years ago
i8086tab.inc 0f69362edd - rm LEA reg,imm from x86ins.dat, as that's not a valid x86 instruction, 12 years ago
n8086add.pas 2a64ba0ad3 * do a 32-bit comparison on far and huge pointers 12 years ago
n8086cal.pas 3853d06ac0 + added n8086cal.pas, based on n386cal.pas; this pulls in nx86cal.pas as well and fixes compilation of the system unit on i8086 after the merge of the i8086 branch to trunk 12 years ago
n8086cnv.pas 645cd11b9d * fixed the assignment of global functions to nested procvars in i8086 far code 12 years ago
n8086con.pas a308994423 * i8086 specific code from tcgpointerconstnode.pass_generate_code moved to an i8086 specific overriden method 12 years ago
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 12 years ago
n8086mat.pas 43dba74a5c + implemented 64-bit shl and shr for i8086 12 years ago
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 12 years ago
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. 12 years ago
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. 12 years ago
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. 12 years ago
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. 12 years ago
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. 12 years ago
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. 12 years ago
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. 12 years ago
r8086nor.inc 107a6f6552 * i8086 versions of i386*.inc and r386*.inc renamed to i8086*.inc and r8086*.inc 12 years ago
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. 12 years ago
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. 12 years ago
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. 12 years ago
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. 12 years ago
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. 12 years ago
r8086stab.inc 107a6f6552 * i8086 versions of i386*.inc and r386*.inc renamed to i8086*.inc and r8086*.inc 12 years ago
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. 12 years ago
ra8086att.pas a04cbc09b0 * changed the default i8086 asmmode to Intel 12 years ago
ra8086int.pas a04cbc09b0 * changed the default i8086 asmmode to Intel 12 years ago
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 12 years ago