Commit Graph

71720 Commits

Author SHA1 Message Date
Rika Ichinose
98a5072fbe Remove NewAnsiString & NewUnicodeString. 2025-02-09 14:27:09 +00:00
florian
1802a8c493 + apply OptPass1Data to variable shifting/rotating operations as well 2025-02-09 15:23:24 +01:00
florian
ec76f13bd7 * node_not_zero can be apply to int->int conversion only if no data is cut off 2025-02-09 15:22:44 +01:00
florian
6cd75b75c3 * apply OptPass1Data to UDIV/SDIV as well 2025-02-09 10:41:39 +01:00
florian
09be204011 + extend node_not_zero to take range types into account
+ aarch64: if no FPC_DIVBYZERO call is needed, div nodes do not generate calls
2025-02-09 10:26:10 +01:00
florian
bcaa58db01 * extend node_not_zero and make more use of it 2025-02-09 09:42:52 +01:00
Rika Ichinose
f7f8c9a615 Publish System.MemPos. 2025-02-09 03:40:40 +03:00
florian
9cb6497fae + function node_not_zero and make use of it 2025-02-08 20:07:20 +01:00
Michaël Van Canneyt
92b3e6a7d7 * Correct string definition. Fixes issue #41135 2025-02-08 18:15:43 +01:00
Michaël Van Canneyt
ac98583fb4 * Correctly write labels. Patch by Simone Tacconi. Fixes issue #41133 2025-02-08 17:51:01 +01:00
Michaël Van Canneyt
b3d555c258 * Patch from Lipinast Lekrisov to get/set record-typed values. Fixes issue #41129 2025-02-08 17:24:11 +01:00
florian
b2f6214b33 + a_bit_scan_reg_reg gets a flag if src cannot be zero: this simplifies the generated code 2025-02-08 14:27:48 +01:00
Michaël Van Canneyt
b5254fbeb4 * TDirectory.GetDirectories should actually only return directories. Patch by Artem Izmaylov. Fixes issue #41137 2025-02-08 13:30:21 +01:00
Michaël Van Canneyt
10e6a54b59 * Call correct newinstance when overridden. Fixes issue #41090 2025-02-08 12:59:47 +01:00
Rika Ichinose
66d7408b3d Faster Pos(ansistring). 2025-02-08 11:04:22 +00:00
Rika Ichinose
6631f83ccf Change CompareChar uses inside compiler/RTL to CompareByte. 2025-02-07 20:51:50 +03:00
Michaël Van Canneyt
0b3d059458 * Allow host environmentto get main and self thread IDs. Needed for inter-thread messaging in browser 2025-02-07 16:42:44 +01:00
Michaël Van Canneyt
44282acecb * Allow to process .fmx files just as .lfm/.dfm files 2025-02-07 16:12:05 +01:00
Michaël Van Canneyt
b935cc7f93 * Correct typo. Fixes issue #41141 2025-02-07 14:39:05 +01:00
Rika Ichinose
814370b894 Fix NaturalCompareText for string = unicodestring. 2025-02-07 07:02:43 +03:00
Michaël Van Canneyt
1cfa628320 * Test from merge request !312 2025-02-06 22:00:55 +01:00
Rika Ichinose
acaa4660fb Improve NaturalCompareText behaviour as a comparer.
This version probably can’t return garbage or intransitive results.
2025-02-06 21:38:45 +03:00
mattias
d0b4e8730a pastojs: fixed refcount for-Intf-in-something-do, issue #39293 2025-02-05 16:51:46 +01:00
mattias
4d8c9c9d78 pastojs: convert exit(ComIntf) to setting Result variable, issue #39292 2025-02-05 12:46:01 +01:00
mattias
7f4df82e7a pas2js: make typeinfo(char) a tTypeInfoInteger descendant 2025-02-04 18:46:21 +01:00
Michaël Van Canneyt
f270543bf4 * Assign result in async 2025-02-04 17:57:23 +01:00
florian
125da5f10a * SubLea2Lea has to check both times for equal super registers, resolves the second part of #41126 2025-02-03 22:19:25 +01:00
mattias
83f9a94503 fcl-passrc: fixed generic templates as string 2025-02-03 14:06:10 +01:00
mattias
3b5482b580 fcl-passrc: clean up 2025-02-03 14:05:51 +01:00
mattias
00ed18a61b pastojs: rtti flag for class property 2025-02-03 13:59:43 +01:00
Tomas Hajny
2b6c136d01 * added short name for fcl-hash 2025-02-02 23:58:35 +00:00
florian
f75de6c340 * check for 64 bit registers in TX86AsmOptimizer.RegReadByInstruction as well for sanity reasons 2025-02-02 22:12:06 +01:00
Nikolay Nikolov
ba8554fcf5 * override tcpuparamanager.has_strict_proc_signature and return true for WebAssembly 2025-02-02 19:11:14 +02:00
Nikolay Nikolov
f1725289e9 + added option -CN to tests tabsvr6.pp and tabsvr7.pp in order to make them work in WebAssembly 2025-02-02 17:18:46 +02:00
Nikolay Nikolov
9a77a855e4 * WebAssembly codegen: enable -CN nil pointer checks in more places: a_cmp_const_ref_stack, a_cmp_ref_reg_stack and a_cmp_reg_ref_stack 2025-02-02 17:17:42 +02:00
Nikolay Nikolov
bd1a6a60e8 + added ref2string debug helper function to the WebAssembly code generator 2025-02-02 17:05:40 +02:00
Nikolay Nikolov
6ce57a1625 * WebAssembly: also handle dup=true in thlcgwasm.prepare_stack_for_ref for absolute address refs 2025-02-02 16:46:44 +02:00
Nikolay Nikolov
2e77e1a471 * WebAssembly codegen: fixed access to absolute variables, pointing to just a constant address, e.g. var a: longint absolute 5; 2025-02-02 16:26:42 +02:00
Nikolay Nikolov
452c766f04 * fixes in test test/cg/tcalext6.pp for compatibility with the WebAssembly ABI,
which does not support calling an external cdecl function with different
  number of parameters than it was declared with.
2025-02-02 15:26:57 +02:00
florian
56fa196b03 * properly read +/- for the warn directive, resolves #41105 2025-02-01 21:39:49 +01:00
Rika Ichinose
6ccad3dc4e Shortcut declocked on refcount = 1. 2025-01-31 22:03:25 +00:00
Michaël Van Canneyt
d06dd9532c * Fix compilation for unicode 2025-01-31 17:27:57 +01:00
Michaël Van Canneyt
3e6ae3f887 * Add TJSAtomics.waitAsync 2025-01-31 11:36:13 +01:00
mattias
671079789c pastojs: extended rtti: strict private, protected 2025-01-31 09:41:39 +01:00
florian
212b0fb7a8 * cleanup 2025-01-30 22:49:29 +01:00
Michaël Van Canneyt
f18d1deb08 * Fix from Dokkie8844. Fix blob access in Firebird 4.0, fixes issue #40506 2025-01-30 22:47:27 +01:00
Michaël Van Canneyt
370883c86a * Fix generating docs 2025-01-29 21:43:42 +01:00
Michaël Van Canneyt
53e4c5b5fb * Fix by Simone Tacconi to fix with..do writing. Fixes issue #41124 2025-01-29 21:25:19 +01:00
Michaël Van Canneyt
498408a376 * Patch from Simone Taccone to allow to show accessors on properties. Fixes issue #41123 2025-01-29 21:24:15 +01:00
Michaël Van Canneyt
0e3c9b9531 * Fix parsing of system unit 2025-01-29 20:52:09 +01:00