Michael VAN CANNEYT
fa735ba7b2
* Refactor, so the combination CPU-OS-SubTarget is a record. Allows for extension if need be
2023-06-19 07:04:50 +00:00
Michael VAN CANNEYT
193550945c
* Lazarus project file
...
* Remove unused KnownArchitectures tryout
* Add SUB_TARGET
2023-06-19 07:04:50 +00:00
Michaël Van Canneyt
c94531645a
* Implement -t options for fpc executable
...
* Remove some debugging statements
* Refactor processorname -> suffix name for clarity of flow
* Refactor initialization of binary and processor name for clarity of flow
* Rename variables for clarity
* subroutine to simplify command-line handling
* Limited subtarget config file parsing to detect -V
* Specifying multiple -V should not give an error but warn, as for -T or -t
2023-06-19 07:04:50 +00:00
Michael VAN CANNEYT
5605cebd46
* Implement -t and -x options
...
* Fix spurious warning of already specified -t
* If no subtarget file found, error out instead of hint/warn
* Globals needs subtarget for macro substitution
2023-06-19 07:04:50 +00:00
Nikolay Nikolov
8bd18fc6d3
Merge remote-tracking branch 'origin/main' into wasm_js_promise_integration
2023-06-17 17:11:23 +03:00
Nikolay Nikolov
322befbf56
+ added mutable globals to the target switches section
2023-06-17 17:00:36 +03:00
Nikolay Nikolov
fa27856478
+ added promising _start and _initialize exports
2023-06-17 14:34:09 +03:00
Nikolay Nikolov
389646adee
* fixed erroneously duplicated code from previous commit
2023-06-17 13:39:29 +03:00
Nikolay Nikolov
8acf2e3ff3
+ print a proper error message if a suspending external is used on a non-WebAssembly platform
2023-06-17 12:46:44 +03:00
Nikolay Nikolov
553cee72eb
* tsk_wasm_suspending renamed tsk_wasm_suspending_first
2023-06-17 12:28:12 +03:00
Sven/Sarah Barth
0b7a771ca9
* fix #40221 : don't allow a conversion from an anonymous function to a procvar type if compare_defs_ext already rejected them
...
+ added tests
2023-06-16 17:28:50 +02:00
Sven/Sarah Barth
e44a33a78b
+ previous commit also fixes #40143 , #40144 , #40145 , #40308 and #40315 , so add the tests for them
2023-06-16 17:03:51 +02:00
Sven/Sarah Barth
08dca09c7e
* revert 430bcac389
as with the change that the functions to insert hidden parameters are idempotent this is no longer required and also wrong as uses of the deleted symbols aside from Self and the framepointer would be left dangling
2023-06-16 16:16:58 +02:00
Sven/Sarah Barth
d5a538b590
* ensure that the functions that insert the hidden parameters (function result, open array high parameters, etc.) are idempotent
2023-06-16 16:15:45 +02:00
Nikolay Nikolov
f800e40595
+ print an error message, in case 'promising' exports are used on non-WebAssembly platform
2023-06-16 15:44:58 +03:00
Nikolay Nikolov
2f1ccd6f2a
+ support 'promising last' exports
2023-06-16 11:00:19 +03:00
Nikolay Nikolov
9d893b5d0d
* tcpuprocdef.promising_export_name renamed promising_first_export_name
2023-06-16 10:50:35 +03:00
Pierre Muller
be0c92c65d
Set default abi for riscv 32/64 embedded
2023-06-15 15:33:23 +00:00
mattias
63bf4dacbf
fcl-pdf: fixed example pdfdump
2023-06-15 11:34:57 +02:00
Rika Ichinose
f20c7b9ae9
Shorter x86_64.inc:inc/declocked.
2023-06-14 21:19:11 +00:00
Rika Ichinose
9249506a2e
Shorter i386.inc:fpc_AnsiStr_Decr_Ref.
2023-06-14 21:19:11 +00:00
marcoonthegit
f1fcdcfbc3
* Switched from waitformultiple objects to -handles for xp/w7 compat, closes 40297
2023-06-14 14:22:08 +02:00
Michaël Van Canneyt
90b7c8ace7
* PDF internal link objects, example adapted to show possibility. Fixes issue #40318
2023-06-14 08:30:45 +02:00
Pierre Muller
87e4931489
Fix fullcycle compilation error due to -Sew option
...
Add 'else' branch to 'case' keyword construct
for the setting of ABI in riscv32 assembler call.
Do the same for riscv64 assembler call.
2023-06-14 08:19:06 +02:00
Pierre Muller
f410d8a77c
Set defualt riscv32 linux abi to abi_riscv_ipl32
2023-06-13 19:41:02 +00:00
Pierre Muller
0d256f517f
Set defualt riscv32 linux abi to abi_riscv_ipl32
2023-06-13 19:39:55 +00:00
Nikolay Nikolov
9ea1f6de19
+ added 'last' or 'first' to the internal promising wrapper name
2023-06-13 12:15:46 +03:00
Nikolay Nikolov
ed748a65b4
+ added last:boolean parameter to implement_wasm_promising_wrapper
2023-06-13 12:14:09 +03:00
Nikolay Nikolov
2eb3f5f0b8
+ introduced implement_wasm_promising_wrapper
2023-06-13 12:10:54 +03:00
Nikolay Nikolov
c67bcf0032
+ introduced tcpuprocdef.add_promising_export
2023-06-13 11:57:23 +03:00
Nikolay Nikolov
601c8f9c8b
* assert that any exported promising function is not synthetic
2023-06-13 11:44:10 +03:00
Nikolay Nikolov
c6b059ede6
* eo_promising renamed eo_promising_first
2023-06-13 11:42:15 +03:00
Nikolay Nikolov
4d62764fa3
+ also allow declaring an external as 'suspending first'
2023-06-13 09:56:44 +03:00
Nikolay Nikolov
0f89852908
+ support 'suspending last' externals as well
2023-06-13 09:34:54 +03:00
Nikolay Nikolov
aedacd9160
+ comment for the po_wasm_suspending value
2023-06-13 09:12:59 +03:00
Nikolay Nikolov
f6cd75add9
+ comments for tsk_wasm_suspending and tsk_wasm_promising
2023-06-13 09:11:02 +03:00
Pierre Muller
61e53fd42a
Rename variable called section to _section to avoid parsing error for morphos OS
2023-06-11 23:30:18 +02:00
Pierre Muller
ad1812f90a
Handle the specific NaN pattern of mips floating-point unit
2023-06-11 15:56:54 +01:00
Nikolay Nikolov
d2396a848b
+ added a basic JS promise test
2023-06-11 16:59:29 +03:00
Nikolay Nikolov
c22b6c10b7
* fixed generating wrappers for suspending functions that return something, other than double
2023-06-11 16:50:49 +03:00
Nikolay Nikolov
15c95e0ac7
+ initial implementation of WebAssembly promising exports
2023-06-11 16:43:45 +03:00
Nikolay Nikolov
80c8575636
* fixed creating suspended wrappers for functions without parameters
2023-06-11 15:24:55 +03:00
Nikolay Nikolov
1a4b97a62a
* fixed compilation with -Sew
2023-06-11 15:09:49 +03:00
Nikolay Nikolov
b97f3a08ed
* since exporting webassembly globals doesn't yet work accross units, added a
...
workaround by using property getters and setters
2023-06-11 15:00:56 +03:00
Nikolay Nikolov
b247302871
+ initial attempt (not fully working, yet) at implementing WebAssembly suspending externals
2023-06-11 14:07:35 +03:00
Nikolay Nikolov
b891cef5d2
* ppudump compilation fixed
2023-06-11 12:00:54 +03:00
Nikolay Nikolov
95d7bdc3da
+ added parser support for the 'suspending' directive
2023-06-11 11:57:33 +03:00
Nikolay Nikolov
9b4366e4f6
+ support externref and funcref WebAssembly globals in the internal object writer
2023-06-11 10:41:56 +03:00
Nikolay Nikolov
8eea58f649
+ support WebAssembly reference types as WebAssembly globals
2023-06-11 10:31:12 +03:00
Nikolay Nikolov
d38dbcac8f
* use tcallparanode.parasym to find the tparavarsym in twasmcallnode.pass_typecheck
2023-06-11 09:29:07 +03:00