| .. |
|
aoptcpu.pas
|
2fa066b003
* optimize vmovaps/vmovapd after avx instructions
|
před 11 roky |
|
aoptcpub.pas
|
2f5ce095ce
* RefsHaveIndexReg -> cpurefshaveindexreg
|
před 13 roky |
|
aoptcpud.pas
|
790a4fe2d3
* log and id tags removed
|
před 20 roky |
|
cgcpu.pas
|
d8c898742a
* handle the fact that records containing a single extended value are
|
před 11 roky |
|
cpubase.inc
|
bfbb0c5b9d
* optimize mov/lea
|
před 12 roky |
|
cpuelf.pas
|
f733e0021a
--- Merging r29574 into '.':
|
před 11 roky |
|
cpuinfo.pas
|
5c67fcc43f
+ change always floating point divisions into multiplications if they are a power of two,
|
před 11 roky |
|
cpunode.pas
|
b57c95043f
+ support overriding tdef/tsym methods with target-specific functionality:
|
před 11 roky |
|
cpupara.pas
|
ad937e79fa
--- Merging r30239 into '.':
|
před 10 roky |
|
cpupi.pas
|
70dda94474
* x86_64-win64: don't allocate outgoing parameter area in nostackframe procedures, it fails compilation if range/overflow/etc checking is enabled (which always sets pi_do_call) due to check introduced in r22677.
|
před 12 roky |
|
cputarg.pas
|
3327d508ee
Enable nasm assembler for x86_64 cpu
|
před 12 roky |
|
hlcgcpu.pas
|
71deda6f50
+ added interface to ncgutil.gen_load_loc_cgpara() to hlcgobj + generic
|
před 14 roky |
|
nx64add.pas
|
2459518bdd
* use IMUL even for unsigned multiplication on x86_64, when overflow checking is
|
před 12 roky |
|
nx64cal.pas
|
b837694207
* factored out releasing an unused return value into
|
před 14 roky |
|
nx64cnv.pas
|
edd42aa42a
* moved subsetref/reg and bit_set/test support from cgobj to hlcgobj for
|
před 13 roky |
|
nx64flw.pas
|
de3a3d11e2
--- Merging r31475 into '.':
|
před 10 roky |
|
nx64inl.pas
|
790a4fe2d3
* log and id tags removed
|
před 20 roky |
|
nx64mat.pas
|
b594eee70b
* Moved x86_64 mod/div code to x86, with minimal changes to ensure it compiles on i386/i8086. Merging optimized division-by-const code from i386 is pending...
|
před 11 roky |
|
nx64set.pas
|
859676d7d3
* fixed r26519 for darwin/x86-64, see comments (mantis #25644)
|
před 12 roky |
|
r8664ari.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.
|
před 12 roky |
|
r8664att.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.
|
před 12 roky |
|
r8664con.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.
|
před 12 roky |
|
r8664dwrf.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.
|
před 12 roky |
|
r8664int.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.
|
před 12 roky |
|
r8664iri.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.
|
před 12 roky |
|
r8664nasm.inc
|
2ec5a649d7
* set Ch_* for more operations
|
před 12 roky |
|
r8664nor.inc
|
283ff05127
* merged avx support in inline assembler developed by Torsten Grundke
|
před 13 roky |
|
r8664num.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.
|
před 12 roky |
|
r8664ot.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.
|
před 12 roky |
|
r8664rni.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.
|
před 12 roky |
|
r8664sri.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.
|
před 12 roky |
|
r8664stab.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.
|
před 12 roky |
|
r8664std.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.
|
před 12 roky |
|
rax64att.pas
|
8f05f8c839
- Forgot to commit with r29081
|
před 11 roky |
|
rax64int.pas
|
f726e1691b
* Fixed warnings and notes.
|
před 16 roky |
|
rgcpu.pas
|
a3f58e84be
* rbp can be used for normal purpose under certain conditions so it shouldn't interfere with all other registers
|
před 12 roky |
|
symcpu.pas
|
5f8057775b
--- Merging r30757 into '.':
|
před 9 roky |
|
win64unw.pas
|
6a3fe72de9
+ Support .rva directive in AT&T reader. Put it into base class because it generally applies to all targets with COFF output, but enabled for Windows targets only (others need additional testing).
|
před 14 roky |
|
x8664ats.inc
|
6040c041e4
--- Merging r32541 into '.':
|
před 9 roky |
|
x8664att.inc
|
dc628b8969
* x86: Completely skip instructions that do not exist for target CPU bit width. The existing behavior of writing mnemonics and properties but no encoding allows an invalid instruction to be recognized by assembler reader or even generated by compiler, but it but won't assemble anyway.
|
před 11 roky |
|
x8664int.inc
|
dc628b8969
* x86: Completely skip instructions that do not exist for target CPU bit width. The existing behavior of writing mnemonics and properties but no encoding allows an invalid instruction to be recognized by assembler reader or even generated by compiler, but it but won't assemble anyway.
|
před 11 roky |
|
x8664nop.inc
|
842e027a9f
+ prove of concept how FMA4 could be supported in inline assembler
|
před 11 roky |
|
x8664op.inc
|
dc628b8969
* x86: Completely skip instructions that do not exist for target CPU bit width. The existing behavior of writing mnemonics and properties but no encoding allows an invalid instruction to be recognized by assembler reader or even generated by compiler, but it but won't assemble anyway.
|
před 11 roky |
|
x8664pro.inc
|
6040c041e4
--- Merging r32541 into '.':
|
před 9 roky |
|
x8664tab.inc
|
842e027a9f
+ prove of concept how FMA4 could be supported in inline assembler
|
před 11 roky |