.. |
aoptcpu.pas
|
19c8abac0b
+ enable jump optimizer for i8086
|
12 yıl önce |
aoptcpub.pas
|
19c8abac0b
+ enable jump optimizer for i8086
|
12 yıl önce |
aoptcpud.pas
|
19c8abac0b
+ enable jump optimizer for i8086
|
12 yıl önce |
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.
|
11 yıl önce |
cpubase.inc
|
c48d572996
Implement support for saving and restoring address registers.
|
12 yıl önce |
cpuinfo.pas
|
e83ef05b74
- disable cs_opt_nodecse from -O2 on i8086, because it breaks building packages
|
11 yıl önce |
cpunode.pas
|
b342588af1
+ i8086 specific far proc aware implementation of ttypeconvnode.second_proc_to_procvar
|
12 yıl önce |
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 yıl önce |
cpupi.pas
|
c916105db8
- rm ti8086procinfo.allocate_got_register as it isn't used on the i8086
|
12 yıl önce |
cputarg.pas
|
eff0894a66
all the extra i8086 units added
|
12 yıl önce |
hlcgcpu.pas
|
039979fdcc
* handle 4-byte records in registers as well in location_force_mem on i8086
|
11 yıl önce |
i8086att.inc
|
7028210817
+ tzcnt assembler instruction
|
11 yıl önce |
i8086atts.inc
|
7028210817
+ tzcnt assembler instruction
|
11 yıl önce |
i8086int.inc
|
7028210817
+ tzcnt assembler instruction
|
11 yıl önce |
i8086nop.inc
|
7028210817
+ tzcnt assembler instruction
|
11 yıl önce |
i8086op.inc
|
7028210817
+ tzcnt assembler instruction
|
11 yıl önce |
i8086prop.inc
|
be0a29da95
* fix modification information for bmi instructions
|
11 yıl önce |
i8086tab.inc
|
7028210817
+ tzcnt assembler instruction
|
11 yıl önce |
n8086add.pas
|
2602f379d7
* fixes in the 16 to 32-bit multiplication in ti8086addnode.second_mul
|
11 yıl önce |
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.
|
11 yıl önce |
n8086cnv.pas
|
645cd11b9d
* fixed the assignment of global functions to nested procvars in i8086 far code
|
12 yıl önce |
n8086con.pas
|
a308994423
* i8086 specific code from tcgpointerconstnode.pass_generate_code moved to an i8086 specific overriden method
|
12 yıl önce |
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 yıl önce |
n8086mat.pas
|
dc432918da
+ enabled the use of the DIV/IDIV instruction for 16-bit div/mod on i8086
|
11 yıl önce |
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 yıl önce |
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 yıl önce |
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 yıl önce |
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 yıl önce |
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 yıl önce |
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 yıl önce |
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 yıl önce |
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 yıl önce |
r8086nor.inc
|
107a6f6552
* i8086 versions of i386*.inc and r386*.inc renamed to i8086*.inc and r8086*.inc
|
12 yıl önce |
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 yıl önce |
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 yıl önce |
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 yıl önce |
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 yıl önce |
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 yıl önce |
r8086stab.inc
|
107a6f6552
* i8086 versions of i386*.inc and r386*.inc renamed to i8086*.inc and r8086*.inc
|
12 yıl önce |
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 yıl önce |
ra8086att.pas
|
a04cbc09b0
* changed the default i8086 asmmode to Intel
|
12 yıl önce |
ra8086int.pas
|
a04cbc09b0
* changed the default i8086 asmmode to Intel
|
12 yıl önce |
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 yıl önce |