Commit Graph

1050 Commits

Author SHA1 Message Date
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
Alexey Andreev
bfd2c8479c wasm gc: fix bugs related to casts and implement runtime method for converting date to string 2024-09-12 20:16:01 +02:00
Alexey Andreev
8e2cf27e94 wasm gc: fix bugs related to invalid nested temporary variable generation 2024-09-12 18:23:05 +02:00
Alexey Andreev
eccfaff889 wasm gc: fix bugs with Class 2024-09-11 20:07:05 +02:00
Alexey Andreev
d12637f959 wasm gc: fix issues related to class metadata 2024-09-11 15:45:37 +02:00
Alexey Andreev
1533794cf1 wasm gc: add strict mode, fix some bugs 2024-09-11 08:00:39 +02:00
Alexey Andreev
2d8556d0a2 wasm gc: implement enum constants 2024-09-10 15:32:27 +02:00
Alexey Andreev
349ed8fc2d wasm gc: implement Class.getSuperclass and Object.clone, fix issue with resource maps 2024-09-09 14:23:58 +02:00
Alexey Andreev
fe0304ee67 wasm gc: reduce size of string literal initializer 2024-09-08 20:52:23 +02:00
Alexey Andreev
d0226aab88 wasm gc: implement some Class intrinsics, fix issues with type inference 2024-09-08 20:32:30 +02:00
Alexey Andreev
fea62af09a wasm gc: implement resources 2024-09-07 20:11:22 +02:00
Alexey Andreev
29dec0962b wasm gc: fix issues with type inference 2024-09-05 18:49:42 +02:00
Alexey Andreev
a9d46ac55e wasm gc: fix issue with type inference for null values 2024-09-04 14:58:56 +02:00
Alexey Andreev
d0707e5355 js: emit non-breaking whitespace before function arrow in remaining places 2024-09-03 20:54:34 +02:00
Alexey Andreev
9768a86378 Fix issues related to sigma nodes in phi updater 2024-09-03 20:50:07 +02:00
Alexey Andreev
8038d68963 wasm gc: fix building virtual tables for interface default methods 2024-09-03 14:16:52 +02:00
Alexey Andreev
019eb4500c wasm gc: fix issues, make more test passing 2024-09-02 16:02:58 +02:00
Alexey Andreev
1dc7bc653d wasm gc: support type nullability and global mutability 2024-08-31 20:16:09 +02:00
Alexey Andreev
9b601ac002 wasm gc: initialize class initializer globals in global section 2024-08-30 20:54:46 +02:00
Alexey Andreev
638cc8ed15 wasm gc: reduce sizes of virtual tables, initialize structures in global section 2024-08-30 20:21:01 +02:00
Alexey Andreev
f19c211b2a wasm gc: fix issie with type inference for array set, implement some intrinsics 2024-08-30 13:44:23 +02:00
Alexey Andreev
1ba1dcfc09 wasm gc: fix issue in type inference for comparison instruction result 2024-08-30 12:54:59 +02:00
Alexey Andreev
0b11a9ce90 wasm gc: fix issues in disassembler 2024-08-30 12:54:39 +02:00
Alexey Andreev
8ba4f9c30b wasm gc: fix issue with function numbering in disassembler 2024-08-29 21:24:14 +02:00
Alexey Andreev
cb1f3c6dfc wasm gc: fix issue in virtual table generator 2024-08-29 21:14:49 +02:00
Alexey Andreev
a0224f60e6 wasm gc: fix infinite loop in type inference 2024-08-29 21:04:33 +02:00
Alexey Andreev
31d89ebec2 wasm gc: support emitting disassembly in HTML with link references, add setting to emit disassembly in JUnit tests 2024-08-29 18:41:02 +02:00
Alexey Andreev
a8b999f8d9 wasm gc: support global section in disassembler 2024-08-29 17:43:41 +02:00
Alexey Andreev
d6b2afd096 wasm gc: support name section in disassembler 2024-08-28 21:02:33 +02:00
Alexey Andreev
5a513fd6fd wasm gc: improve disassembler to print type section 2024-08-28 14:13:10 +02:00