Jonas Maebe 8244d366d0 - moved deallocation of NR_PIC_OFFSET_REG from the x86_64 to the i386 code %!s(int64=11) %!d(string=hai) anos
..
aopt386.pas ba5297be37 * support disabling the i386 peephole optimizer with -Oonopeephole %!s(int64=11) %!d(string=hai) anos
cgcpu.pas 8244d366d0 - moved deallocation of NR_PIC_OFFSET_REG from the x86_64 to the i386 code %!s(int64=11) %!d(string=hai) anos
cpubase.inc bfbb0c5b9d * optimize mov/lea %!s(int64=12) %!d(string=hai) anos
cpuelf.pas 74581a07af AROS: assembler fixes %!s(int64=11) %!d(string=hai) anos
cpuinfo.pas d88d644925 + support for FMA intrinsic: if there is no hardware support, the compiler throws an error. %!s(int64=11) %!d(string=hai) anos
cpunode.pas 4a79481c51 * isolated segment-related functionality of tabsolutevarsym into i386/i8086- %!s(int64=11) %!d(string=hai) anos
cpupara.pas 09e0734b7c * fix working with short record function results under OS/2 %!s(int64=11) %!d(string=hai) anos
cpupi.pas b1dc518ac4 * removed systems_need_16_byte_stack_alignment and use target_info.stackalign instead %!s(int64=13) %!d(string=hai) anos
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. %!s(int64=11) %!d(string=hai) anos
csopt386.pas 4d5119bf1c * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables %!s(int64=11) %!d(string=hai) anos
daopt386.pas 4d5119bf1c * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables %!s(int64=11) %!d(string=hai) anos
hlcgcpu.pas 26b53607f8 + added method reference_reset_base with support for different pointer types to %!s(int64=11) %!d(string=hai) anos
i386att.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. %!s(int64=11) %!d(string=hai) anos
i386atts.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. %!s(int64=11) %!d(string=hai) anos
i386int.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. %!s(int64=11) %!d(string=hai) anos
i386nop.inc 842e027a9f + prove of concept how FMA4 could be supported in inline assembler %!s(int64=11) %!d(string=hai) anos
i386op.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. %!s(int64=11) %!d(string=hai) anos
i386prop.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. %!s(int64=11) %!d(string=hai) anos
i386tab.inc 842e027a9f + prove of concept how FMA4 could be supported in inline assembler %!s(int64=11) %!d(string=hai) anos
n386add.pas 07ad2a04ac * fix warnings when compiling the compiler with DFA optimizer enabled on i386 %!s(int64=11) %!d(string=hai) anos
n386cal.pas 4ee15b84da AROS: syscall (library call) support for based on the Amiga/68k and MorphOS/PPC versions %!s(int64=11) %!d(string=hai) anos
n386flw.pas 5479b6e722 * Provide initialization of all variables, fixes cycling with OPT="-dTEST_WIN32_SEH -OoDFA". %!s(int64=11) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
n386ld.pas 4a79481c51 * isolated segment-related functionality of tabsolutevarsym into i386/i8086- %!s(int64=11) %!d(string=hai) anos
n386mat.pas 5356f17fa5 * i386: switch the div/mod node to shared code, leaving in place the specific optimization for division by power of 2. %!s(int64=11) %!d(string=hai) anos
n386mem.pas 338c064beb * moved x86-specific tpointerdef functionality to architecture-specific %!s(int64=11) %!d(string=hai) anos
n386set.pas d0db391d7c * cleanup of unused units %!s(int64=12) %!d(string=hai) anos
popt386.pas 2ee0c8de45 * i386: For integer comparisons with zero, emit "test $-1,%reg" instead of "test %reg,%reg". It is more spilling-friendly, because it transforms into "test $-1,spilltemp" and does not require a register. %!s(int64=11) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
r386nor.inc 283ff05127 * merged avx support in inline assembler developed by Torsten Grundke %!s(int64=13) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
r386stab.inc 283ff05127 * merged avx support in inline assembler developed by Torsten Grundke %!s(int64=13) %!d(string=hai) anos
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. %!s(int64=12) %!d(string=hai) anos
ra386att.pas 757ed4e8d3 * standard assembler reader for i386 %!s(int64=20) %!d(string=hai) anos
ra386int.pas 6c6bf452ca * Fixed level 2 comment warnings. %!s(int64=17) %!d(string=hai) anos
rgcpu.pas b7fe6797bf Merged revisions 2921-2922,2925 via svnmerge from %!s(int64=19) %!d(string=hai) anos
rropt386.pas 4d5119bf1c * fixes several issues which cause warnings by the dfa code when using it to detect uninitialized variables %!s(int64=11) %!d(string=hai) anos
symcpu.pas aa6b62cf4c Add new procedure option: po_syscall_has_libsym, %!s(int64=11) %!d(string=hai) anos