Svyatoslav Kuzmich
38967f208e
[Wasm] Remove unused WasmI1 type
2020-12-30 19:29:11 +03:00
Svyatoslav Kuzmich
b6ad1584c9
[Wasm] Improve interface method dispatch
...
- Use typed Wasm tables for each interface method to avoid runtime
function type check
- Use linear search by implemented interface rather than by individual
virtual function signature
2020-12-30 19:29:10 +03:00
Svyatoslav Kuzmich
51e8d782b0
[Wasm] Support packed integer class fields
2020-12-14 14:40:38 +03:00
Svyatoslav Kuzmich
d4233f3f0e
[Wasm] Use Wasm GC arrays instead of JS arrays
...
JS arrays was a workaround for lack of arrays in Firefox Wasm GC prototype
Now with V8 as a test runner we can use proper arrays
2020-12-09 15:56:45 +03:00
Svyatoslav Kuzmich
d15af70a3e
[Wasm] Refactoring: replace "struct types" with "GC types"
...
In preparation for adding array types
2020-12-09 15:56:45 +03:00
Svyatoslav Kuzmich
4bb163fd1f
[Wasm IR] Add missing GC and function reference instructions
2020-12-09 15:56:44 +03:00
Alexander Udalov
d96223a2ff
Fix compiler warnings in new wasm modules
...
Also don't output v8ExecutablePath in js.tests on each project
configuration.
2020-11-10 18:19:41 +01:00
Alexander Udalov
84d1393711
Minor, workaround compiler exception (KT-43286)
2020-11-10 18:06:17 +01:00
Svyatoslav Kuzmich
ffe3487aa5
[Wasm] Don't generate unnecessary unreachable instructions
...
Helps with WAT readability
2020-11-10 13:08:04 +03:00
Svyatoslav Kuzmich
b371b61cf5
[Wasm] Indent blocks of produced WAT
...
Makes it more readable
2020-11-10 13:08:04 +03:00
Svyatoslav Kuzmich
bfd0f21e9d
[Wasm] Major compiler and stdlib update
2020-11-09 16:04:43 +03:00
Svyatoslav Kuzmich
3be38d1796
[Wasm] Add Wasm IR
...
Intended to be used by Kotlin/Wasm compiler.
Includes:
* IR tree: declarations, instructions, types.
* Convertors: ir2text, ir2bin, bin2ir
* Spec tests, to test convertors against reference Wabt tool
2020-11-09 16:04:42 +03:00