Commit Graph

3227 Commits

Author SHA1 Message Date
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
6cf2ff3cc4 wasm gc: fix issue in calculating identity hashcode 2024-09-13 13:23:21 +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
8184c46bae Revert change is ResourceProgramTransformer which is not necessary for WasmGC BE, but breaks C BE 2024-09-09 19:06:52 +02:00
Ivan Hetman
e2699554b8
classlib: small BitSet fixes and improvements (#950) 2024-09-09 14:44:42 +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
b36f38f48f classlib: fix parsing floats and doubles with large exponents 2024-09-05 09:08:53 +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
Alexey Andreev
7324e99e6a wasm gc: produce better names for declarations, generate locals in names section 2024-08-27 20:03:22 +02:00
Alexey Andreev
10c3731c43 wasm gc: fix some issues and implement intrinsics
* properly cast exception type on catch blocks
* generate virtual table structures lazily
* fix calculation of types of a.field values
2024-08-27 13:28:49 +02:00
Alexey Andreev
4823109be5 Ignore failing test 2024-08-26 20:49:29 +02:00
Alexey Andreev
6ff58b2dc7 wasm-gc: fix type inference for case of integer subtypes 2024-08-26 20:48:53 +02:00
Alexey Andreev
f143fc2af8 wasm-gc: fix html generated for manually running JUnit test 2024-08-26 20:48:37 +02:00
Alexey Andreev
96bf4379c9 Temporarily ignore failing test 2024-08-26 19:40:59 +02:00
Alexey Andreev
ebac13a363 wasm gc: implement Array.getLength and Array.get 2024-08-26 18:14:04 +02:00
Alexey Andreev
ba08fb395c wasm gc: always emit java.lang.Class, fix issue with recursive types 2024-08-25 20:38:02 +02:00
Alexey Andreev
0cda737dca Add test for bug in nullness analysis 2024-08-25 19:34:20 +02:00
Alexey Andreev
4a345610cf wasm gc: reduce number of generated virtual table entries, reduce size of a simple program 2024-08-23 21:10:44 +02:00
Alexey Andreev
3e19ca341e wasm gc: fix support of class initialization, inherit arrays from Object, add support for clone in arrays 2024-08-23 21:10:44 +02:00
Alexey Andreev
335e2da4cf wasm gc: implement System.identityHashCode() and some Integer intrinsics 2024-08-23 10:14:39 +02:00
Alexey Andreev
5d109236d9 wasm gc: fix running tests in JUnit, fix remaining errors so that *few* tests pass 2024-08-21 14:29:56 +02:00