Commit Graph

69567 Commits

Author SHA1 Message Date
florian
f28cbbf73b * run test with different options as it is tricky 2024-03-27 22:40:06 +01:00
J. Gareth "Curious Kit" Moreton
889c55ecae * "tminmax" test now prints out 'ok' if it passes and the error code if it fails 2024-03-27 02:56:44 +00:00
florian
fea8050457 * fix i386 building after fb3c4ff75b 2024-03-27 00:04:46 +01:00
florian
15398549a4 * fix simplication of max(double,double) with both values being constants 2024-03-26 23:55:47 +01:00
florian
fb3c4ff75b * avoid CMPs with constants outside the range of signed 32 bit values 2024-03-26 23:53:46 +01:00
Michaël Van Canneyt
b1312ed3c6 * Patch from Thierry Gayet to fix double prefix when using aliases 2024-03-26 16:38:17 +01:00
Michaël Van Canneyt
564597a573 * Fix access violation: module can be reset while loading dependent units. Fixes issue #40705 2024-03-26 16:06:27 +01:00
J. Gareth "Curious Kit" Moreton
ee1916e919 * i8086: Local variables unused in "second_AndOrXorShiftRot_assign" on i8086 are now not defined on this platform 2024-03-26 14:18:31 +00:00
J. Gareth "Curious Kit" Moreton
11b341cc97 * x86: Added new OptPass1CMOVcc peephole optimisation routine to dust up min/max code 2024-03-26 14:18:31 +00:00
J. Gareth "Curious Kit" Moreton
c79361c010 * Min/max intrinsics now simplify deterministic results 2024-03-26 14:18:31 +00:00
J. Gareth "Curious Kit" Moreton
e4a0ce2fb5 * x86: Min/max intrinsic support 2024-03-26 14:18:31 +00:00
J. Gareth "Curious Kit" Moreton
77c86cafd0 * a64: Fixed bug where unsigned min/max inlines used a signed comparison 2024-03-26 14:18:31 +00:00
J. Gareth "Curious Kit" Moreton
81b7b80749 * Added support for 64-bit min/max intrinsics 2024-03-26 14:18:31 +00:00
florian
961e8fb749 * patch by Joeny Ang: fix TDbf memory leak, resolves #40709 2024-03-26 15:02:50 +01:00
Michaël Van Canneyt
14d4b0808b * Patch from Thierry Gayet to fix compilation of tests 2024-03-26 14:54:19 +01:00
florian
8971103a00 * use bit_set_reg_reg also to clear single bits in thlcgobj.a_load_regconst_subsetref_intern 2024-03-26 14:46:01 +01:00
ccrause
f4828950a2 Add efuse library to default list of static link libraries. 2024-03-26 13:26:45 +00:00
J. Gareth "Curious Kit" Moreton
4378319f87 * Added missing "override" directive for XML node dump routine on TDerefNode 2024-03-26 13:25:46 +00:00
Pierre Muller
afea558fbe Add -32/-64 for sparc GNU assembler calls 2024-03-25 23:48:14 +01:00
Pierre Muller
c68ddc5360 Add $EMUL also for sparc CPU GNU linker call on solaris OS 2024-03-25 23:48:14 +01:00
J. Gareth "Curious Kit" Moreton
948766a37a * x86: New Op/TEST optimisation that rearranges register usage for the most efficient execution 2024-03-25 22:25:29 +00:00
florian
7c609ee7c4 * proper fix for 9056ab8025 2024-03-25 22:33:30 +01:00
Michaël Van Canneyt
dcadafa1b8 * Fix memleak 2024-03-25 15:47:30 +01:00
Michaël Van Canneyt
04e715445f * Patch from Thierry Gayet to fix crash when no options are specified on command-line 2024-03-25 15:47:06 +01:00
Pierre Muller
9056ab8025 Fix generation of i8086 CPU code, as BTR/BTS instructions require at least 386 CPU 2024-03-25 14:29:08 +00:00
florian
ac150e58c8 * thlcgobj.a_load_regconst_subsetref_intern uses a_bit_set_reg_reg if applicable 2024-03-25 00:01:24 +01:00
florian
12176d3683 * avoid to generate bts/r with memory operand
+ thlcgx86.a_bit_set_reg_reg
2024-03-24 23:03:33 +01:00
J. Gareth "Curious Kit" Moreton
2b7df4237b * nf_pass1_done, nf_error, nf_processing and nf_do_not_execute
have been moved to a new "transientflags" node field that
    isn't stored in PPU files
2024-03-24 18:14:49 +00:00
ccrause
dd858f37aa Ensure register to be eliminated is de-allocated before applying optimization LdsMov2Lds. 2024-03-24 13:54:31 +00:00
J. Gareth "Curious Kit" Moreton
99851f22f5 * a64: New B -> RET peephole optimisation 2024-03-24 13:31:52 +00:00
florian
3327204ebd * restored overwritten test 2024-03-24 14:30:07 +01:00
florian
20f9b82543 * AArch64: overflow checking for abs
* tabs adapted: also abs(longint) must overflow check on 64 bit platforms
2024-03-24 12:47:16 +01:00
florian
1fccfd3ee1 * AArch64: avoid false overflow error in case of -2^63+0 2024-03-24 12:36:02 +01:00
florian
cf6b38c35f * regenerated Makefiles after last commit 2024-03-23 22:30:37 +01:00
Michael Ring
6fadd49fb6 Added missing RP2040 definition in Makefile.rtl to make sure that regenerating of Makefiles does not remove rp2040 unit 2024-03-23 21:25:37 +00:00
florian
b7322ae4c3 * write correct type name in error message 2024-03-23 22:24:55 +01:00
florian
367beaaef4 + extend test to test overflow checking 2024-03-23 22:21:42 +01:00
florian
4100f75056 + optimize s:=s+[e] into include(s,e) 2024-03-23 21:02:15 +01:00
florian
06fc6f1e6b * use destination location instead of a temp when constructing sets, resolves #40384 2024-03-22 21:50:42 +01:00
florian
8aca910435 * improve test so it exits with the proper error code 2024-03-21 22:52:56 +01:00
Michaël Van Canneyt
5bcedcfe30 * Small improvements, quiet mode 2024-03-21 16:47:00 +01:00
Michaël Van Canneyt
173233d78e * Correct dependency for SYSUTILS 2024-03-21 10:34:51 +01:00
Michaël Van Canneyt
77673c5e37 * Fix typo 2024-03-21 10:32:23 +01:00
Michaël Van Canneyt
3fcd891577 * Namespace support 2024-03-20 23:10:48 +01:00
Michaël Van Canneyt
4680d41d67 * Add dpktolpk unit plus example 2024-03-20 23:02:56 +01:00
florian
635b06d53c + test for commit e1297e0859 2024-03-20 22:01:59 +01:00
J. Gareth "Curious Kit" Moreton
e1297e0859 * Adjustment to "(v>=x) and (v<=y)" so it also optimises its inverse: "(v<x) or (v>y)" 2024-03-20 21:01:35 +00:00
Pierre Muller
d0f08ef259 Regenerate RTL Makefile's after RP2040UNIT variable addition, and debug buildrtl.pp unit for Linux OS 2024-03-20 17:33:14 +00:00
Pierre Muller
1caa5dfde8 Re-implement (for debugging purposes) buildrtl.pp unit for Linux OS (not used in regular RTL compilation) 2024-03-20 17:31:38 +00:00
Pierre Muller
36b511f057 FFix compilation of compiler with -dTest_Double_checksum 2024-03-20 17:30:12 +00:00