Commit Graph

1079 Commits

Author SHA1 Message Date
Alexey Andreev
cb3ce477e2 wasm gc: preprocess JS runtime with uglifyjs, add modular runtime 2024-10-11 13:48:29 +02:00
Alexey Andreev
14a4a99fa5 wasm gc: fix exporting classes to JS 2024-10-10 19:12:40 +02:00
Alexey Andreev
0dcc25d66b wasm gc: support exporting declarations as JS entities from module 2024-10-08 20:09:43 +02:00
Alexey Andreev
73dda91d35 wasm gc: minor optimizations; make initializer functions Wasm start function; fix compilation; remove debugging output 2024-10-06 17:29:27 +02:00
Alexey Andreev
f95250ddf7 wasm gc: fix inlining support in debug info builder, fix support of debug info in disassembler 2024-10-06 16:54:57 +02:00
Alexey Andreev
c2eb11e056 wasm gc: support writing debug info, support it in disassembler 2024-10-04 18:49:58 +02:00
Alexey Andreev
7aec0763fa wasm gc: fix issue with JS exceptions, trying to propagate Java exception message to JS error message 2024-10-04 16:56:47 +02:00
Alexey Andreev
753a028fc9 wasm gc: improve performance of JS interop 2024-10-04 15:38:14 +02:00
Alexey Andreev
3218a00eb9 wasm gc: support JS exceptions 2024-10-04 11:49:17 +02:00
Alexey Andreev
1d47146f43 wasm gc: support JS functions with varargs 2024-10-04 10:02:06 +02:00
Alexey Andreev
a5212fb9ca wasm gc: support imported functions in disassembler 2024-10-04 09:40:54 +02:00
Alexey Andreev
eba0e2b2e8 wasm gc: fix issues with arrays of JS objects, unignore passing test 2024-10-03 22:23:56 +02:00
Alexey Andreev
8ce104ae64 Fix bug in GVN that prevented optimizations in same basic block 2024-10-03 19:38:54 +02:00
Alexey Andreev
68a1b2efae wasm gc: fix issue with dependency initialization order 2024-10-02 20:18:04 +02:00
Alexey Andreev
802efd49c6 wasm gc: fix String.intern support 2024-10-02 20:04:18 +02:00
Alexey Andreev
0bd7bc6ca9 wasm gc: fix support of legacy Object.cast method 2024-10-02 19:27:43 +02:00
Alexey Andreev
551f0505c7 wasm gc: fix support of cast/instanceof for JS types; fix accessing top-level declarations 2024-10-02 14:54:40 +02:00
Alexey Andreev
a291eb3026 wasm gc: support wrapping JS values in Java 2024-10-02 14:31:33 +02:00
Alexey Andreev
4b76396332 wasm gc: basic support for functors in JSO 2024-10-01 14:43:53 +02:00
Alexey Andreev
383fee67c5 wasm gc: support exporting Java classes to JavaScript 2024-10-01 13:57:20 +02:00
Alexey Andreev
5ad4496c34 wasm gc: support primitive array conversion to JavaScript in JSO 2024-09-28 19:52:14 +02:00
Alexey Andreev
bbf45760b8 wasm gc: implement simple features from JSO 2024-09-28 19:20:48 +02:00
Alexey Andreev
33f4537f43 wasm gc: use non-null array storage type 2024-09-27 13:50:45 +02:00
Alexey Andreev
1d81b7004f Fix possible bug with exceptions in GVN 2024-09-26 20:39:29 +02:00
Alexey Andreev
054d4c2a24 wasm gc: generate array constructor using ref.struct_new 2024-09-26 19:32:02 +02:00
Alexey Andreev
4d416af7dc wasm gc: reduce amount of code generated for initialization of strings 2024-09-26 18:59:44 +02:00
Alexey Andreev
951d0c53c3 wasm gc: fix Date API support 2024-09-26 18:24:15 +02:00
Alexey Andreev
b9f406dcaa wasm gc: general implementation of System.arraycopy 2024-09-26 07:57:46 +02:00
Alexey Andreev
dd24425de0 wasm gc: support resources 2024-09-25 13:39:03 +02:00
Alexey Andreev
f8022f9465 wasm gc: fix issues in Java 17 switch expression and metaprogramming API 2024-09-23 20:23:24 +02:00
Alexey Andreev
4546029a5a wasm gc: implement String.intern 2024-09-23 15:39:08 +02:00
Alexey Andreev
8ed8322b17 wasm gc: basic implementation of WeakReference 2024-09-20 15:03:43 +02:00
Alexey Andreev
6613d379ec wasm gc: don't generate emulated casts in non-strict mode 2024-09-19 20:40:45 +02:00
Alexey Andreev
29339f3fbc Fix old Wasm backend 2024-09-19 20:26:32 +02:00
Alexey Andreev
21cc3b048b wasm gc: fix broken module when Class.getName is never called 2024-09-19 19:49:25 +02:00
Alexey Andreev
10805ed0dd wasm gc: implement creation of multidimensional arrays 2024-09-18 20:34:29 +02:00
Alexey Andreev
3cf5fc10c8 wasm gc: emit string literals in WTF-8 rather than in UTF-8 2024-09-18 14:24:19 +02:00
Alexey Andreev
944fd22513 wasm gc: group structurally equal different substructures into recursive group in order to benefit from using native ref.test/rest.cast instructions for classes 2024-09-18 13:24:29 +02:00
Alexey Andreev
55ac5d0321 wasm gc: implement ServiceLoader 2024-09-17 20:14:29 +02:00
Alexey Andreev
36f7ec36f3 wasm gc: disable cast optimization and fix issue with short/char fields 2024-09-17 08:02:50 +02:00
Alexey Andreev
7784969bb8 wasm gc: fix issues with casts 2024-09-16 13:49:38 +02:00
Alexey Andreev
7e622d8bc7 wasm gc: sort types, functions and globals in usage count order to reduce binary size 2024-09-15 11:02:55 +02:00
Alexey Andreev
86e8cfd0db wasm gc: reduce size of array construction 2024-09-14 19:34:56 +02:00
Alexey Andreev
e5d6603503 wasm gc: reduce size of class metadata and metadata initializer 2024-09-14 18:24:54 +02:00
Alexey Andreev
a503333c1b wasm gc: optimize null checks, casts and try/catch using branching instructions 2024-09-14 15:26:22 +02:00
Alexey Andreev
9aee15fa0f wasm gc: attach Java exception to Wasm exception 2024-09-14 13:02:31 +02:00
Alexey Andreev
7029d3cff7 wasm gc: implement branching instructions and null check instruction 2024-09-13 19:46:11 +02:00
Alexey Andreev
5acb9a4707 Fix checkstyle warnings 2024-09-13 13:27:22 +02:00
Alexey Andreev
4072111af5 wasm: fix error when generating casts 2024-09-13 13:25:26 +02:00
Alexey Andreev
845523f1a7 wasm gc: implement flags for classes 2024-09-12 20:43:09 +02:00