Commit Graph

70095 Commits

Author SHA1 Message Date
Nikolay Nikolov
50c1eb4089 + added WebAssembly inline asm test for the instructions:
i32.mul
    i64.mul
    f32.mul
    f64.mul
2024-07-21 15:23:20 +03:00
Nikolay Nikolov
813427da84 + added WebAssembly inline asm test for the instructions:
i32.sub
    i64.sub
    f32.sub
    f64.sub
2024-07-21 15:03:38 +03:00
Karoly Balogh
2e8955b3c8 human68k: enable building a handful of simpler packages for human68k 2024-07-21 12:53:13 +02:00
Karoly Balogh
37d699ed60 human68k: sync h68kdos.inc file between packages and rtl 2024-07-21 12:52:15 +02:00
Rika Ichinose
1030f67fb4 Use IndexQWord_SSE41 directly if -Cp RTL compiled with supports SSE 4.1. 2024-07-21 08:40:12 +00:00
Nikolay Nikolov
7f4f254888 + added test for the WebAssembly inline asm call instruction 2024-07-20 21:54:03 +03:00
Nikolay Nikolov
b08b5bf136 * fixed the WebAssembly inline asm call instruction with the internal assembler writer 2024-07-20 21:53:24 +03:00
Nikolay Nikolov
d8340641cc + support the call instruction in the WebAssembly inline asm 2024-07-20 21:30:00 +03:00
Michaël Van Canneyt
258ad62c4d * Do not try to export symbol if an error occurred, avoid internal error. Fixes issue #40858 2024-07-20 17:51:45 +02:00
Nikolay Nikolov
0a9169eb67 + allow referencing '$__stack_pointer' in WebAssembly inline asm as argument to
the global.get and global.set instructions. This will be used in the future to
  implement the thread start routine in inline asm.
2024-07-20 17:38:10 +03:00
Nikolay Nikolov
bbb159658a + added basic WebAssembly inline assembler test 2024-07-20 17:08:23 +03:00
Nikolay Nikolov
6277c21261 + support OPR_FLOATCONSTANT in TInstruction.ConcatInstruction 2024-07-20 17:07:21 +03:00
Nikolay Nikolov
e67094ec28 * WebAssembly temp gen: introduced localsfirsttemp and localslasttemp, use these
for the locals temps indices, instead of firsttemp and lasttemp, which refer
  to the temps on the linear stack
2024-07-20 16:38:03 +03:00
florian
e4b88655af * test for mr 724 2024-07-20 13:46:06 +02:00
Rika Ichinose
be11d22c17 Fix val(str, enum). 2024-07-20 08:30:02 +00:00
Michaël Van Canneyt
9059ac067c * write dependent rtti for non-published in case of extended RTTI 2024-07-20 09:52:38 +02:00
Rika Ichinose
10b7ad9d0c Faster val(str, enum). 2024-07-19 20:51:24 +00:00
florian
9f6a3eebb7 * handle adress registers properly in tcg64f68k.a_op64_reg_ref 2024-07-19 20:00:21 +02:00
florian
b71b5b771f * fixes building for ARM 2024-07-19 18:34:40 +02:00
Michaël Van Canneyt
fac7c21b9b * Small correction in property resolve 2024-07-19 16:05:14 +02:00
Michaël Van Canneyt
b0a82993e6 * Inherit extended RTTI settings from parent object 2024-07-19 16:05:14 +02:00
Rika Ichinose
8cfc87ffdf Sink lnfodwrf.pp global variables down to their actual scopes. 2024-07-19 12:07:33 +00:00
Michaël Van Canneyt
de1b3a982b * Do not generate RTTI for generic methods (delphi compatible) 2024-07-19 10:42:41 +02:00
florian
437e7fa75a * make warning on unsupported esp-idf version a warning string so it can be translated 2024-07-18 22:40:05 +02:00
Michael Ring
f6651f8855 Add -Ff to firstpass options 2024-07-18 20:16:04 +00:00
Michael Ring
e0229632fb Make idfpath and idf_version macros available as replacement vars in fpc.cfg 2024-07-18 20:16:04 +00:00
Michael Ring
14b3c11c0d Initial support for esp32-c6-s2-s3. Support for idf versions 5.0.6 and 5.2.1 2024-07-18 20:16:04 +00:00
Rika Ichinose
8bf2dc3f2b Simplify CPU units (70 LoC + 500 b code + 500 b data). 2024-07-18 20:13:11 +00:00
J. Gareth "Curious Kit" Moreton
0fadf3515e * x86-64: Workaround to permit CPU types in command line with dashes in names (e.g. X86-64-V3) 2024-07-18 20:05:13 +00:00
Nikolay Nikolov
7cbf18c6f3 * don't create block..end_block around WebAssembly inline asm routines 2024-07-16 16:53:55 +03:00
Nikolay Nikolov
65d4319dc2 * don't do anything in postprocess_code for WebAssembly inline asm routines 2024-07-16 16:28:32 +03:00
Nikolay Nikolov
4adac78f85 + respect the nostackframe directive in WebAssembly inline asm routines 2024-07-16 15:25:12 +03:00
Nikolay Nikolov
83a8d584e0 + set result.ops in twasmreader.HandlePlainInstruction 2024-07-16 15:13:56 +03:00
Nikolay Nikolov
d9e3afcb1d + actually enable the parsing of WebAssembly inline asm instructions 2024-07-16 14:53:56 +03:00
Nikolay Nikolov
fd1fb255a6 * started implementing twasmreader.HandleBlockInstruction 2024-07-16 14:48:55 +03:00
Nikolay Nikolov
152bb316c3 + call ConcatInstruction for plain instructions in twasmreader.HandleInstruction 2024-07-16 12:58:47 +03:00
Nikolay Nikolov
8ec86ad053 + insert plain instructions and parse nested instructions in twasmreader.HandleFoldedInstruction 2024-07-16 02:04:58 +03:00
Nikolay Nikolov
95593f15dd + handle the local and global variable instructions with a constant integer
parameter in twasmreader.HandlePlainInstruction
2024-07-16 01:38:57 +03:00
Nikolay Nikolov
ea988e0b92 + recognize the memory access instructions with an optional memarg operand (not
parsed, yet) in twasmreader.HandlePlainInstruction
2024-07-15 20:27:32 +03:00
Nikolay Nikolov
09f2fa0daf + support the f32.const and f64.const instructions in twasmreader.HandlePlainInstruction 2024-07-15 20:20:13 +03:00
Michaël Van Canneyt
02e90adfe1 * Need IFDEF, compiler stops "with unreachable code" 2024-07-15 17:19:52 +02:00
Nikolay Nikolov
8e79108e51 * changed twasmreader.HandlePlainInstruction to return an instruction 2024-07-15 16:49:06 +03:00
Nikolay Nikolov
c1c1d46c15 + parse the instructions with integer parameter i32.const and i64.const in twasmreader.HandlePlainInstruction 2024-07-15 16:49:06 +03:00
Rika Ichinose
a575a5c0fd Move Int128Rec to System; remove i386 and x86_64 CPU unit dependency on SysUtils. 2024-07-15 13:31:20 +00:00
Michaël Van Canneyt
e86882580d * Do not free used units during reset, they can be in use during load cycle. Fixes issue #40852 2024-07-15 14:09:49 +02:00
Rika Ichinose
73bf0c82bb Disable _Plain versions when compiling RTL for newer CPUs. 2024-07-14 14:36:17 +00:00
florian
7630726e2d * patch Peter Blackman to fix .po file headers, resolves #40853 2024-07-14 14:48:30 +02:00
Nikolay Nikolov
748dbbcb20 * fixed another warning 2024-07-14 00:09:18 +03:00
Nikolay Nikolov
4c3d8d016e + added else clause to silence warning, treated as error in CI 2024-07-13 12:21:36 +03:00
Nikolay Nikolov
c6e715a54e + WebAssembly inline assembler instruction parsing work in progress 2024-07-12 23:35:38 +03:00