Nikolay Nikolov
|
b9ca30165c
|
* WebAssembly: refactored tai_local, so that it is a single directive,
containing multiple locals, instead of creating multiple tai_local directives,
each containing a single local. No functional changes.
|
2024-09-15 00:49:05 +03:00 |
|
Nikolay Nikolov
|
26c69d564f
|
+ introduced WebAssembly helper is_atomic_op
|
2024-07-07 10:42:28 +03:00 |
|
Nikolay Nikolov
|
04a077707c
|
* fix warning
|
2024-01-17 09:43:51 +02:00 |
|
Nikolay Nikolov
|
03fc5d2323
|
+ added a zero/unitialized/unknown value to TWasmBasicType: wbt_Unknown
|
2024-01-17 08:32:10 +02:00 |
|
Nikolay Nikolov
|
52f0ec579e
|
+ added TWasmFuncType.ToString implementation
|
2023-12-31 21:49:35 +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
|
2626b85984
|
+ introduced decode_wasm_basic_type function
|
2023-12-24 14:30:06 +02:00 |
|
Nikolay Nikolov
|
11712658b0
|
+ implemented WebAssembly code generator support for funcref and externref data
types, using new register types R_FUNCREFREGISTER and R_EXTERNREFREGISTER
|
2023-06-07 05:25:57 +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
|
7bd1ac4507
|
* fixed comment
|
2022-07-25 01:57:13 +03:00 |
|
Nikolay Nikolov
|
7475d22154
|
+ declare the three magic global variables (__tls_size, __tls_align, __tls_base), created by the linker, when WebAssembly multithreading is enabled
|
2022-07-14 03:57:06 +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
|
3a095f5ed5
|
+ support all the new types in encode_wasm_basic_type
|
2022-05-28 00:30:43 +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
|
3cfdf000a2
|
+ support the new WebAssembly threads and atomics instructions in the internal assembler
|
2022-05-21 17:24:21 +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 |
|
J. Gareth "Curious Kit" Moreton
|
2dc0995067
|
- Bug fix to new ADD/SUB optimisation where conditions are concerned
- Register allocation fixes for overflow checks
|
2021-11-17 20:18:57 +00:00 |
|
Nikolay Nikolov
|
026d23632a
|
+ added the memory.copy and memory.fill WebAssembly instructions
|
2021-10-02 19:35:26 +03:00 |
|
Nikolay Nikolov
|
e0ad427b6c
|
+ introduced the FPC_EXCEPTION_TAG_SYM string constant
|
2021-09-27 17:38:28 +03:00 |
|
Nikolay Nikolov
|
ca70cb05a7
|
* fixed warning
|
2021-09-26 07:54:20 +03:00 |
|
Nikolay Nikolov
|
d7b141d70e
|
+ implemented the if, loop and else instructions
|
2021-09-26 07:45:14 +03:00 |
|
Nikolay Nikolov
|
81b8574bfd
|
+ implemented all the load/store instructions in the wasm internal asm
writer (previously, only i32.load and i32.store were implemented)
|
2021-09-26 06:49:51 +03:00 |
|
Nikolay Nikolov
|
4ca39cf07d
|
+ write the import functions in the wasm binary writer
|
2021-09-23 17:11:24 +03:00 |
|
Nikolay Nikolov
|
a58368d20d
|
+ avoid duplicate functypes in the types section of the wasm module we produce
|
2021-09-20 19:33:48 +03:00 |
|
Nikolay Nikolov
|
628fcb9b1c
|
+ create the Type wasm section
|
2021-09-20 03:43:23 +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
|
e2e0756eaf
|
* fixed compilation with -Sew
git-svn-id: branches/wasm@48446 -
|
2021-01-28 16:25:03 +00:00 |
|
nickysn
|
0ceefa4d22
|
+ enabled DWARF debug info writing on the WebAssembly target. Note that it
doesn't work yet (produces internal errors).
git-svn-id: branches/wasm@48445 -
|
2021-01-28 16:16:32 +00:00 |
|
nickysn
|
f891c52dd1
|
- removed tarrayreftype, because it's not used on the wasm target
git-svn-id: branches/wasm@48336 -
|
2021-01-22 21:47:08 +00:00 |
|
nickysn
|
5a84c4db61
|
- get rid of FRAME_POINTER_SYM and BASE_POINTER_SYM - they should not be used anymore
git-svn-id: branches/wasm@48331 -
|
2021-01-22 16:24:56 +00:00 |
|
nickysn
|
83f88e515b
|
* renamed the a_get/set/tee_local/global asm ops a_local/global_set/get/tee
git-svn-id: branches/wasm@48324 -
|
2021-01-22 15:21:40 +00:00 |
|
nickysn
|
d8f55ebb48
|
* renamed the a_iXX_extendYYYY family of asm ops to their modern versions
git-svn-id: branches/wasm@48323 -
|
2021-01-22 15:08:43 +00:00 |
|
nickysn
|
116366a8e3
|
* updated the a_iXX_trunc_su_fYY asm ops to their modern format a_iXX_trunc_fYY_su
git-svn-id: branches/wasm@48322 -
|
2021-01-22 15:05:35 +00:00 |
|
nickysn
|
60242ca0fd
|
* updated the a_fXX_convert_su_iYY asm ops to their modern format a_fXX_convert_iYY_su
git-svn-id: branches/wasm@48321 -
|
2021-01-22 15:03:04 +00:00 |
|
nickysn
|
9acfdc8cdd
|
* the a_f64_reinterpret_f64 asm op renamed a_f64_reinterpret_i64
git-svn-id: branches/wasm@48320 -
|
2021-01-22 14:58:50 +00:00 |
|
nickysn
|
699626ee5c
|
* a_grow_memory asm op renamed a_memory_grow
git-svn-id: branches/wasm@48319 -
|
2021-01-22 14:52:46 +00:00 |
|
nickysn
|
d0fe45a595
|
* a_current_memory asm op renamed a_memory_size
git-svn-id: branches/wasm@48318 -
|
2021-01-22 14:51:55 +00:00 |
|
nickysn
|
b6735179ed
|
* use a functype operand for a_if, instead of hardcoding
git-svn-id: branches/wasm@48028 -
|
2021-01-04 11:01:18 +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
|
763ca253c1
|
+ introduced the TWasmFuncType class - used to hold a Wasm function signature
git-svn-id: branches/wasm@47963 -
|
2021-01-02 11:54:41 +00:00 |
|
nickysn
|
f138d66a2a
|
* switch NR_FRAME_POINTER_REG to NR_LOCAL_FRAME_POINTER_REG
git-svn-id: branches/wasm@47874 -
|
2020-12-28 18:38:43 +00:00 |
|
nickysn
|
170fab85ff
|
+ introduced RS_EVAL_STACK_BASE and RS_LOCAL_STACK_POINTER_REG
git-svn-id: branches/wasm@47873 -
|
2020-12-28 18:32:16 +00:00 |
|
nickysn
|
59c9bff744
|
* updated first_int/fpu/mm_imreg, so it doesn't clash with the non-imaginary registers
git-svn-id: branches/wasm@47828 -
|
2020-12-21 00:32:36 +00:00 |
|
nickysn
|
40eb696d8e
|
+ defined RS_LOCAL_FRAME_POINTER_REG
git-svn-id: branches/wasm@47827 -
|
2020-12-21 00:31:24 +00:00 |
|
nickysn
|
f572bcf8f3
|
+ introduced the NR_LOCAL_FRAME_POINTER_REG constant (alias for NR_R3)
git-svn-id: branches/wasm@47780 -
|
2020-12-15 15:08:24 +00:00 |
|
nickysn
|
ce8439fb36
|
+ introduced NR_LOCAL_STACK_POINTER_REG
git-svn-id: branches/wasm@47776 -
|
2020-12-14 23:06:55 +00:00 |
|
nickysn
|
762fdf593e
|
+ added comment, documenting the purpose of the STACK_POINTER_SYM constant
git-svn-id: branches/wasm@47252 -
|
2020-10-29 16:14:03 +00:00 |
|