Commit Graph

23 Commits

Author SHA1 Message Date
Nikolay Nikolov
03fc5d2323 + added a zero/unitialized/unknown value to TWasmBasicType: wbt_Unknown 2024-01-17 08:32:10 +02:00
Nikolay Nikolov
e555eddeda * fixed the textual representation of the ref.null instruction for llvm-mc 2023-06-07 03:36:28 +03:00
Nikolay Nikolov
3b3a0a660c * the a_ref_null instruction split into two subinstructions - a_ref_null_externref and a_ref_null_funcref 2023-06-07 01:42:46 +03:00
Nikolay Nikolov
d378240134 + added the WebAssembly saturating truncation instructions to the internal assembler 2022-05-28 17:41:28 +03:00
Nikolay Nikolov
907e8402ab + added the WebAssembly reference and vector types to TWasmBasicType 2022-05-28 00:16:51 +03:00
Nikolay Nikolov
2888710594 + added the WebAssembly table instructions 2022-05-28 00:02:27 +03:00
Nikolay Nikolov
534383f686 + added the WebAssembly reference instructions ref.null, ref.is_null and ref.func 2022-05-27 23:58:27 +03:00
Nikolay Nikolov
e2eadc51a3 + added the memory.init and data.drop instructions 2022-05-27 23:38:49 +03:00
Nikolay Nikolov
5198e47e36 + added the atomic memory access WebAssembly instructions from the threading proposal for WebAssembly 2022-05-13 20:55:12 +03:00
Nikolay Nikolov
026d23632a + added the memory.copy and memory.fill WebAssembly instructions 2021-10-02 19:35:26 +03:00
Nikolay Nikolov
82b6450f19 + introduced the AT_WASM_EXCEPTION_TAG asm symbol type, use that for specifying
the parameter to the 'throw' and 'catch' instructions
2021-09-27 17:49:30 +03:00
Nikolay Nikolov
c2754eac3f + introduced the wasm32_throw_fpcexception inline function, that emits a
'throw' instruction. This way we'll be able to emit this instruction from
  RTL code (i.e. from fpc_raiseexception, when that is implemented for
  WebAssembly)
2021-09-18 02:39:16 +03:00
Nikolay Nikolov
87702b58c5 + emit a catch instruction in the try/end_try block, generated for
try..finally in native wasm exceptions mode
2021-09-18 00:26:00 +03:00
Nikolay Nikolov
10d8332563 + added the new WebAssembly instructions, added by the exception handling proposal 2021-09-16 23:45:03 +03:00
nickysn
54299874d3 + implemented memory.grow and memory.size intrinsics and implemented SysOSAlloc
git-svn-id: branches/wasm@48290 -
2021-01-21 23:13:49 +00:00
nickysn
99d8d8f296 * fixed several WebAssembly instruction names
git-svn-id: branches/wasm@48245 -
2021-01-20 23:08:33 +00:00
nickysn
fc95e7f22d * fixes in thlcgwasm.resize_stack_int_val
git-svn-id: branches/wasm@47974 -
2021-01-02 14:42:10 +00:00
nickysn
5ee6e9d593 * declare end_function as an instruction, instead of a directive
git-svn-id: branches/wasm@46849 -
2020-09-11 16:25:44 +00:00
nickysn
e1b6f0bd85 + introduced end_block, end_if, end_loop
git-svn-id: branches/wasm@46842 -
2020-09-11 15:20:00 +00:00
nickysn
f95d35340c + first attempt at writing the .local WASM directive
git-svn-id: branches/wasm@46709 -
2020-08-26 21:07:11 +00:00
nickysn
e3da45de37 * fixed the global.get, global.set, local.set, local.get and local.tee instructions in the llvm-mc instruction writer
git-svn-id: branches/wasm@46701 -
2020-08-26 17:14:43 +00:00
nickysn
0e3754e24d * copied the gas_op2str table, because it will require changes from the wat2wasm table
git-svn-id: branches/wasm@46700 -
2020-08-26 17:11:01 +00:00
nickysn
539fde196d * rebase the llvm-mc asm writer on the GAS assembler writer - seems to be pretty
close in syntax

git-svn-id: branches/wasm@46668 -
2020-08-23 17:01:55 +00:00