Commit Graph

68712 Commits

Author SHA1 Message Date
Nikolay Nikolov
7d41f5eb92 + added code section duplicate check in wasm object reader 2023-12-26 13:49:40 +02:00
Nikolay Nikolov
b2861bacdd - removed the repeated section bounds check in the section parsing code,
because now all reads go through the read function, which does section bounds
  checking on every read
2023-12-26 13:42:07 +02:00
Nikolay Nikolov
8591f1218c + added section bounds checking to the read function, used inside TWasmObjInput.ReadObjData.ReadSection 2023-12-26 13:40:26 +02:00
Nikolay Nikolov
16c18e845f - removed the TObjectReader parameter from ReadUleb, ReadUleb32 and ReadName 2023-12-26 13:24:29 +02:00
Nikolay Nikolov
01d97bea00 - rm commented out code 2023-12-26 13:13:42 +02:00
Nikolay Nikolov
36fe4cf43d * the ReadUleb, ReadUleb32 and ReadName methods moved to be local functions inside TWasmObjInput.ReadObjData.ReadSection 2023-12-26 13:12:44 +02:00
Nikolay Nikolov
c9b407508a * use ReadUleb32 in more places 2023-12-26 12:46:06 +02:00
Nikolay Nikolov
621699acca + introduced ReadUleb32 to avoid code repetition of the >high(uint32) checks 2023-12-26 11:43:49 +02:00
Nikolay Nikolov
bcb7c069fb + parse the data count section 2023-12-26 10:25:20 +02:00
Michaël Van Canneyt
722711d675 * Fix project 2023-12-25 16:49:20 +01:00
Michaël Van Canneyt
5d20c0f749 * Add const for string where possible 2023-12-25 16:48:52 +01:00
Michaël Van Canneyt
4d1e201975 * Fix AV due to not initialized FullName field. Patch by Bart B. Fixes issue #40489 2023-12-25 15:11:38 +01:00
Michaël Van Canneyt
9efa161ea7 * minor improvement for TPasRecordType.IsAdvancedRecord. Fixes issue #40539 2023-12-25 14:59:30 +01:00
Michaël Van Canneyt
f206de7030 * Namespaced version of testinsight units 2023-12-25 14:57:18 +01:00
Michaël Van Canneyt
952f6ebf23 * Test insight client 2023-12-25 14:13:36 +01:00
Nikolay Nikolov
f87a66f1e6 + parse the rest of the function section 2023-12-24 16:56:28 +02:00
Nikolay Nikolov
c7880e7bd1 + read the functions count from the functions section 2023-12-24 16:53:05 +02:00
Nikolay Nikolov
be56b641d7 + function section duplicate check 2023-12-24 16:51:23 +02:00
Nikolay Nikolov
e81b062e2d + WebAssembly object reader: implemented parsing of the import section 2023-12-24 16:35:39 +02:00
Nikolay Nikolov
57aead9a14 + added const sets for the WebAssembly reference, numeric and vector types 2023-12-24 16:35:39 +02:00
Nikolay Nikolov
e6a3aa3450 + import section duplicate check 2023-12-24 16:35:39 +02:00
Michaël Van Canneyt
124834fe29 * SUBTARGET defines 2023-12-24 15:08:06 +01:00
Michaël Van Canneyt
126cc09037 * Correct check on command-line for -t 2023-12-24 15:03:41 +01:00
Nikolay Nikolov
3bc6340424 - removed TODO comment 2023-12-24 15:28:01 +02:00
Nikolay Nikolov
01dbc63735 + input error message in case the type section size is unexpected/wrong 2023-12-24 15:04:22 +02:00
Nikolay Nikolov
a08c937beb + Wasm internal linker, object reader: implemented parsing of the type section 2023-12-24 14:57:16 +02:00
Nikolay Nikolov
2626b85984 + introduced decode_wasm_basic_type function 2023-12-24 14:30:06 +02:00
Nikolay Nikolov
90e7b2be56 + added functions for reading the different types of Wasm object sections 2023-12-24 14:12:53 +02:00
Nikolay Nikolov
34445a912a * implementation of TInternalLinkerWasi.DefaultLinkScript. Create a script that reads all the object files. 2023-12-24 12:45:18 +02:00
Nikolay Nikolov
54eb8de658 * write a WebAssembly header in TWasmExeOutput.writeData 2023-12-24 12:42:29 +02:00
Nikolay Nikolov
340499dd3a * override GetCodeSize, GetDataSize and GetBssSize in TInternalLinkerWasi to avoid crash 2023-12-24 12:38:52 +02:00
Nikolay Nikolov
6bead20fc3 * set CObjData in the TWasmExeOutput constructor 2023-12-24 12:35:50 +02:00
Nikolay Nikolov
0f8ecb73e7 * override and implement TInternalLinkerWasi.InitSysInitUnitName 2023-12-24 12:30:56 +02:00
Nikolay Nikolov
7879387861 * enable the WASM internal linker, in case the compiler is compiled with the ENABLE_WASM_INTERNAL_LINKER define 2023-12-24 12:22:59 +02:00
Nikolay Nikolov
790a58be52 + added ld_int_wasi constant. Register the WASI internal linker. 2023-12-24 12:18:15 +02:00
Michaël Van Canneyt
3b7d6d21e2 * Fix AV when freeing transactions. Reported by Pascal Riekenberg. Fixes issuu #40571 2023-12-23 23:11:25 +01:00
Karoly Balogh
65234c674a human68k: less fail in regenerating a Makefile 2023-12-23 16:05:32 +01:00
Karoly Balogh
7c3e792bc1 human68k: regenerated Makefile after the previous commit 2023-12-23 15:36:51 +01:00
Karoly Balogh
c38280ef3e human68k: added a totally untested DOS unit to the RTL 2023-12-23 15:36:51 +01:00
Karoly Balogh
53e7006d56 m68k: fix the assembler reader to bail out earlier on a failed parsing of a constant expression 2023-12-23 15:36:51 +01:00
Michaël Van Canneyt
8bf8272892 * Ensure code compiles with 3.2.2 2023-12-23 13:26:15 +01:00
Michaël Van Canneyt
ed000e6cd7 * Fix wrong TimeStampToMSecs result on 32-bit. Fixes issue #40522 2023-12-22 11:32:57 +01:00
mattias
c202c6c2fe pastojs: forbid subtarget -t parameter in config file 2023-12-20 19:42:50 +01:00
Michaël Van Canneyt
29e2277d98 * Add CreateAnonymousThread with anonymous procedure 2023-12-18 16:53:14 +01:00
florian
3539b4a6f3 * do str(...) optimization only in level 3+ mode 2023-12-17 18:32:40 +01:00
J. Gareth "Curious Kit" Moreton
81b22cc5d1 * TCallNode.simplify method introduced to convert Str with a constant into a direct string assignment 2023-12-17 15:15:36 +00:00
J. Gareth "Curious Kit" Moreton
e1f993c363 * tinlinenode.handle_str now uses the new intrinsiccode field for TCallNode 2023-12-17 15:15:36 +00:00
J. Gareth "Curious Kit" Moreton
28e7dd77de * A call node's original parameter ordering can now be remembered, and a method introduced to access this 2023-12-17 15:15:36 +00:00
J. Gareth "Curious Kit" Moreton
ea7b9c73f3 * New intrinsiccode field for TCallNode to track transmutation from TInlineNode 2023-12-17 15:15:36 +00:00
mattias
84fb1c5a68 pastojs: clean up 2023-12-16 14:26:12 +01:00