Commit Graph

66213 Commits

Author SHA1 Message Date
florian
f6a8b045c2 * cosmetics 2022-11-21 22:10:29 +01:00
J. Gareth "Curious Kit" Moreton
735f297f5b * Range check fixes to BZHI tests 2022-11-21 14:44:39 +00:00
florian
4778973492 * further look ahead for temp. deallocation for FstpFldFstp2Fstp and FstpFld2<Nop> 2022-11-19 21:05:22 +01:00
florian
ef53f9bc25 + FstpFldFstp2Fstp optimization 2022-11-18 23:37:34 +01:00
J. Gareth "Curious Kit" Moreton
e7e4044bf0 * CollapseZeroDistJump no longer updates registers or strips dead labels, instead just setting p to p.Next 2022-11-18 17:20:20 +00:00
J. Gareth "Curious Kit" Moreton
c21bf747fb * x86: Extension to Cmp1Jl2Cmp0Jle to catch inverted variant 2022-11-18 17:20:20 +00:00
J. Gareth "Curious Kit" Moreton
e57ef24e37 * x86: TEST and CMP optimisations now perform jump optimisations prematurely to remove unnecessary TEST/CMPs 2022-11-18 17:20:20 +00:00
florian
c1ec558d0a * first (modified, added a comment) patch by Rika to improve generic Index*, part of #39996 2022-11-17 23:11:23 +01:00
Pierre Muller
5e0eb521c4 Fix use of unaligned for big endian code 2022-11-15 21:48:40 +00:00
J. Gareth "Curious Kit" Moreton
3cf8ae8433 * x86: New XOR->BTC peephole optimisation 2022-11-15 21:10:47 +00:00
J. Gareth "Curious Kit" Moreton
f2bd099afb * x86: Converted BTR and BTS tests to use a new utility function to check if BTx instructions are acceptable to use 2022-11-15 21:10:47 +00:00
J. Gareth "Curious Kit" Moreton
8220221866 * x86: New AND(NOT X)->BTR peephole optimisation 2022-11-15 21:10:47 +00:00
J. Gareth "Curious Kit" Moreton
827fe2bd83 * x86: New OR->BTS peephole optimisation 2022-11-15 21:10:47 +00:00
J. Gareth "Curious Kit" Moreton
314f632377 * x86: New TEST->BT peephole optimisation 2022-11-15 21:10:47 +00:00
florian
a27cb35fa8 * propagate life info properly 2022-11-15 22:06:56 +01:00
Marcus Sackrow
94368d06ee Amiga: Bugfix for Tagged Version of OpenWindow at WB1.2/1.3 2022-11-14 17:55:56 +01:00
Michaël Van Canneyt
75c252fd8f * Extra linux fcntl constants 2022-11-13 23:46:59 +01:00
Michaël Van Canneyt
9cda1666a6 * Modifier for allowed schemas 2022-11-13 23:46:59 +01:00
Michaël Van Canneyt
d38c3f8073 * Fix loading schemas 2022-11-13 23:46:59 +01:00
Michaël Van Canneyt
71f8893366 * Allow to specify DB connection params on command-line 2022-11-13 23:46:59 +01:00
Michaël Van Canneyt
9145565895 * Some extra published properties. Fix issue #39994 2022-11-13 23:46:59 +01:00
florian
3b43bd027c * calculate life info for if nodes correctly if the then branch is empty, resolves #39992 2022-11-13 22:28:08 +01:00
J. Gareth "Curious Kit" Moreton
c9461b7313 * x86: Flags that relate to optimization hints rather than features have been moved to a separate set 2022-11-13 19:23:30 +00:00
mattias
9b58545fb7 fcl-css: comments and warnings 2022-11-13 12:39:19 +01:00
florian
1853e94b98 * attempt to fix #39900 2022-11-12 22:08:21 +01:00
Jonas Maebe
57466587c5 llvmdbg: remove unnecessary typedef intermediates 2022-11-12 21:14:28 +01:00
J. Gareth "Curious Kit" Moreton
a0c87be0fc * x86: Zen processors now marked with CPUX86_HAS_FAST_BT_MEM flag 2022-11-12 13:18:53 +00:00
Pierre Muller
0f30af07e5 Fix test to succeed for big endian mips 2022-11-12 13:16:51 +00:00
florian
d3abd339b7 + cpu switch for zen 2022-11-11 23:45:52 +01:00
J. Gareth "Curious Kit" Moreton
e942c00f82 x86: MovMovMov2XChg optimisation now makes use of the CPUX86_HAS_FAST_XCHG flag 2022-11-11 22:29:58 +00:00
J. Gareth "Curious Kit" Moreton
aa5517d442 * x86: New CPU feature flags in cpuinfo units 2022-11-11 22:29:58 +00:00
Pierre Muller
71df6b83c6 Avoidd to use hp1 after calling RemoveInstruction, as the VMT is invalidated 2022-11-11 22:20:17 +00:00
marcoonthegit
cfc77315ca * getlongpath as per https://forum.lazarus.freepascal.org/index.php/topic,60972.0/topicseen.html 2022-11-10 10:42:11 +01:00
florian
3e6d4bf1cc * new cpu feature tests 2022-11-09 23:09:07 +01:00
florian
12aa48602b + CMOVSupport function 2022-11-08 21:15:11 +01:00
Sven/Sarah Barth
a2789d611f * fix crash in debug output in TX86AsmOptimizer.DoArithCombineOpt for DEC/INC $reg 2022-11-07 23:35:23 +01:00
Pierre Muller
d18ff64ed7 Fix a_load64_reg_ref and a_load64_ref_reg mips methods 2022-11-07 22:24:34 +00:00
Pierre Muller
c96bb0f416 Handle unaligned references in 64-bit a_load_ref_reg and a_load_reg_ref methods 2022-11-06 22:14:38 +00:00
florian
36afcbf7fe * only i386 uses same special fastcall calling convention 2022-11-06 22:48:18 +01:00
florian
9c8f362acc * more robust calculation of TBITS_SHIFT 2022-11-06 22:33:38 +01:00
J. Gareth "Curious Kit" Moreton
236febb148 * x86: Fixed bugs in and refactored and renamed
DoSubAddOpt optimisation method
2022-11-06 21:01:58 +00:00
Sven/Sarah Barth
9e3483fbeb * fix #39977: allow a capturer to access any method independant of visibility as the visibility checks are supposed to have been done before the captured symbol was converted
+ added test
2022-11-06 22:01:49 +01:00
Sven/Sarah Barth
b051e7667c * fix #39978: ensure that Self is captured when a method of the current class is captured into a function reference
+ added test
2022-11-06 22:01:49 +01:00
Sven/Sarah Barth
d221f42a57 * ensure that the correct overload is picked for function reference parameters
+ added tests
2022-11-06 22:01:49 +01:00
Sven/Sarah Barth
19cee9b841 + mark the def for a capturer class with a corresponding object option 2022-11-06 22:01:48 +01:00
Sven/Sarah Barth
a714e2ff35 * fix #39981: retrieve the symbol that returns the desired procdef/procvardef not maybe the Self or something else as we need that symbol to differentiate the procdefs
+ added test
2022-11-06 22:01:48 +01:00
Sven/Sarah Barth
3c2703787c * ensure that newly created tloadparentfpnodes have a valid resultdef as they might be created in situation where the loadnode itself is no longer typechecked 2022-11-06 22:01:48 +01:00
Rika Ichinose
7243befdb7 Better TBits. 2022-11-06 20:55:38 +00:00
Ondrej Pokorny
eab28cdd2e clean up 2022-11-06 18:51:53 +00:00
Ondrej Pokorny
029ea37ed9 * simplify implementation (almost) without touching the public interface
* make function references an option to classic events
2022-11-06 18:51:53 +00:00