Nikolay Nikolov
c21beefbb2
* added 'legacy' to comment before the WebAssembly exceptions instructions, because they've been declared 'legacy' now
2025-09-21 18:13:20 +03:00
Nikolay Nikolov
f9608e8506
* WebAssembly internal linker: fixed bug, when reading very large (in absolute
...
value) signed negative LEB128 numbers (encoded as 10 bytes). It is very
unlikely for this to have presented a problem in practice on the 32-bit
WebAssembly platforms, since reading signed LEB numbers is only used for
reading the initial value of WebAssembly globals in external modules, and the
affected values are unlikely, but it is still bug, which is why I'm fixing it.
2025-09-21 17:19:40 +03:00
florian
916810db41
* avr: optimized code generation for ... xor constant
2025-09-21 14:14:30 +02:00
florian
63c4bc29ba
* cleanup
2025-09-20 23:14:42 +02:00
florian
26d1b0b778
* better fix for #41412 I think as procedures can be tail call optimized as there is no result
2025-09-19 19:40:05 +02:00
Karoly Balogh
ed65f26e98
ncgmat: fix location for constant divisions-by-power-of-two after a291347d
2025-09-19 01:50:17 +02:00
Karoly Balogh
8030e218e1
m68k: do not allow the members of the register pair in division/remainder instructions be the same register
2025-09-19 01:14:08 +02:00
florian
c4c71d362c
* fix RiscV64 building
2025-09-18 22:02:16 +02:00
Pierre Muller
989b173b0b
Fix tailrec opt. error reoprted in #41412
...
Disable tailrec optimizationi for functions,
if callnode reuult is not used, because otherwise
the value of second call ends up as the return value.
Fixes bug reoprt #41412
2025-09-17 22:41:21 +00:00
florian
a291347d98
* emit_div/mod_reg_reg_reg takes now three operands
2025-09-17 22:40:28 +02:00
florian
e9026b2a1c
* reduce register usage in tcgmoddivnode.pass_generate_code
2025-09-16 22:56:50 +02:00
J. Gareth "Curious Kit" Moreton
23217f4ac9
* x86: Added new post-peephole optimisations to convert BMI2 shift/rotate instructions to their smaller traditional versions if possible
2025-09-16 22:31:19 +02:00
J. Gareth "Curious Kit" Moreton
54f7127048
* x86: New "Not/And -> Andn/Not" peephole optimisation
2025-09-16 22:31:19 +02:00
florian
6ed0a74f54
* compilation fixed
2025-09-15 22:51:24 +02:00
florian
a5b79cc7d7
* handle more inline operations in node_complexity
2025-09-15 22:30:18 +02:00
mattias
6a259624da
compiler: when queue is stuck, write state of waiting for, issue #41386
2025-09-15 08:42:08 +02:00
florian
e0daa4fe84
* fixed a few issues with last merge
2025-09-14 21:21:28 +02:00
Rika Ichinose
d12e8ddd50
Support “in” in node_complexity.
2025-09-14 20:39:48 +02:00
mattias
e059f7829b
compiler: when stuck with waiting queue, write items, issue #41386
2025-09-14 19:02:30 +02:00
Rika Ichinose
f1301a14e1
optloop.pas: move global variables to a context object.
2025-09-14 10:43:11 +02:00
J. Gareth "Curious Kit" Moreton
79eee75aa0
* x86: Convert isolated "(1 shl y) - 1" to BZHI, not just "x and ((1 shl y) - 1)"
2025-09-14 10:28:22 +02:00
florian
1d5a31ed41
+ comment
2025-09-13 22:07:18 +02:00
Pierre Muller
1f12737beb
Test local fix for powerpc out of reach conditional jump
2025-09-13 01:28:49 +02:00
Pierre Muller
688e20f7a5
Try to fix bug report #41397
2025-09-12 23:21:51 +00:00
florian
a45253c7ac
* fix AndiSb2Sb optimization
2025-09-12 21:40:43 +02:00
Sven/Sarah Barth
436c3049b9
+ define FPC_ABI_WIN64 for systems that use the Win64 ABI (currently it's only x86_64-win64, but there are also x86_64-nativent and x86_64-uefi as potential targets)
2025-09-12 15:23:41 +02:00
florian
f71871e60d
* generating a linear sub list makes no sense for RiscV
2025-09-11 22:41:41 +02:00
florian
0d2297c9ca
+ AndiSb2Sb optimization
2025-09-11 22:41:40 +02:00
Karoly Balogh
2b83745211
msg: fixed typos in the description of improperly indented multi-line strings error
2025-09-11 20:44:55 +02:00
Karoly Balogh
4f1f0d93a5
scanner: please do not try to byte swap a byte. not even on big endian.
2025-09-11 20:32:58 +02:00
Karoly Balogh
0fed8ffe7c
scanner: actually use the result of readquotedstring as cpattern. this fixes the fileexists() preprocessor directive, broken since 2c1fa9e9
2025-09-11 19:49:10 +02:00
Pierre Muller
e1d6a355b5
Set unititialized local boolean variables to false to avoid random behavior
2025-09-11 16:06:14 +00:00
Karoly Balogh
1fa7d4f92a
m68k: on CF, sign_extend the clone register not the original dst for rotate/shift ops
2025-09-11 10:38:35 +02:00
Karoly Balogh
21fe99bfcc
m68k: fix typos in 6a82ca8a - caused by blind refactor before committing
2025-09-11 05:20:30 +02:00
Karoly Balogh
820f0b2907
m68k: allow the optimizer to fold of two differently sized ANDs, but use the larger size in the resulting instruction
2025-09-11 05:05:32 +02:00
Karoly Balogh
6a82ca8a1e
m68k: add support for OP_ROL/OP_ROR to a_op_reg_reg. this fixes m68k builds after 0af3f2a9
2025-09-11 05:04:11 +02:00
Karoly Balogh
69611bba2d
m68k: fix indentation, no functional change
2025-09-11 05:01:43 +02:00
florian
f6ef9f2aa3
* spelling
2025-09-10 23:07:27 +02:00
ccrause
41fa38d217
Update esp32c3 for esp-idf v5.5
2025-09-10 22:42:42 +02:00
florian
8de37f69b9
* spelling
...
* check against current_settings.cputype
2025-09-09 22:52:37 +02:00
Pierre Muller
0f337a9a2c
Fix error about unset result in TDebugInfoLLVM.getabstractprocdeftypes method
2025-09-08 20:57:16 +00:00
J. Gareth "Curious Kit" Moreton
0af3f2a903
* Improved shift-to-rotate node optimisation to reduce code size and permit the use of a variable index
2025-09-08 14:26:34 +02:00
florian
f3a443f99e
* compilation with -dextdebug fixed
2025-09-08 14:23:38 +02:00
mattias
9e54493696
compiler: wait for crc: clean up waitingforunit, processqueue: stop endless loop
2025-09-03 02:41:59 +02:00
mattias
329442eb27
compiler: added module state ms_compiled_waitcrc and delay writing ppu until all used unit crcs are computed
2025-09-03 02:41:59 +02:00
mattias
bfab984080
compiler: re-added ms_moduleerror, small optimization
2025-09-03 02:41:59 +02:00
Pierre Muller
0b84ccd555
Fix bug report #41384
2025-09-02 12:30:34 +00:00
ccrause
d67f878722
Remove nonexistent controller.
2025-09-02 14:14:35 +02:00
ccrause
9af8d099fe
Add atxmega, AVR-Dx and AVR-Ex controllers.
2025-09-02 09:37:56 +00:00
mattias
0b176e43f7
compiler: tmodulestate comments and removed unused ms_error
2025-09-01 21:53:48 +02:00