Commit Graph

66192 Commits

Author SHA1 Message Date
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
Ondrej Pokorny
6bb59c66cb clean up 2022-11-06 18:51:53 +00:00
Ondrej Pokorny
56cb11e3ef both callback interfaces: classic events and function references 2022-11-06 18:51:53 +00:00
Ondrej Pokorny
dab6c48b47 clean up 2022-11-06 18:51:53 +00:00
Ondrej Pokorny
7ee1dea027 use function references for callbacks + change TNotifyEvent to TFPHTTPClientPoolSimpleCallback 2022-11-06 18:51:53 +00:00
Ondrej Pokorny
28a8279d91 remove unused private variable 2022-11-06 18:51:30 +00:00
Ondrej Pokorny
b881deeb9f fix TServerSocketStream.CanRead result when FServer is gone (this happens on closing the server with open connections) 2022-11-06 18:51:30 +00:00
Ondrej Pokorny
a1a30876d5 disable KeepAlive flag in CloseConnectionSocket to close hanging keep-alive connections 2022-11-06 18:51:05 +00:00
J. Gareth "Curious Kit" Moreton
0dbf40a24c * Added new tests for BZHI optimisations 2022-11-06 15:42:09 +00:00
J. Gareth "Curious Kit" Moreton
c40f518de4 * x86: "x and ((1 shl y) - 1)" to BZHI adapted for in_and_assign_x_y 2022-11-06 15:42:09 +00:00
J. Gareth "Curious Kit" Moreton
7da9b4a988 * x86: The code generator will now attempt to manipulate "x and ((1 shl y) - 1)" to use BZHI 2022-11-06 15:42:09 +00:00
J. Gareth "Curious Kit" Moreton
e748e4c7ab * x86: Added new emit_reg_ref_reg routine and related methods to support BMI2 instructions 2022-11-06 15:42:09 +00:00
Jonas Maebe
95f94a279c llvmdbg: fixes for method debug info
Mark "self" parameter as artificial

Add methods to the scope of the class/record rather than to the file scope

Add the vmt field, strip the "($)hidden" prefix from its name, and emit its
real type
2022-11-06 16:41:25 +01:00
Jonas Maebe
c5cdfbd9c0 dwarf-eh: don't emit header if there's no data to emit 2022-11-06 16:41:25 +01:00
florian
1b08b89b7b * check if a target really supports safecall before calling load_safecallresult_node 2022-11-06 16:38:01 +01:00
florian
3db1415a44 * generate correct dfa for subroutines declared as safecall 2022-11-05 16:56:24 +01:00
ccrause
031c16dd3c Fix potential overflow when incrementing 8 bit high value of res. 2022-11-05 11:19:58 +02:00
Pierre Muller
9b6926c5f5 Introduce CTYPES_INLINE, enabled by default but which can be disabled using -dDISABLE_INLINE for ctypes unit 2022-11-04 22:21:29 +00:00
florian
e67670fa70 * changed of do_optdeadstoreelim must be passed by reference as noted by Alexey Torgashin 2022-11-03 19:01:02 +01:00
Ondrej Pokorny
c5f4fe2882 httpserver: add KeepConnectionIdleTimeout property and OnKeepConnectionIdle event. Fix KeepConnectionTimeout to match the meaning from the comment and the name 2022-11-03 08:14:52 +01:00
florian
342524c312 * run dead store elimination multiple times if needed 2022-11-02 22:14:12 +01:00
florian
a0366d7d28 * dead store elimnation should not remove statements which can cause an exception 2022-11-02 22:13:40 +01:00