Commit Graph

3334 Commits

Author SHA1 Message Date
Alexey Andreev
7efb3c97a0 wasm gc: draft first parts of Wasm GC backend
* class metadata generator
* string pool generator
2024-07-09 19:42:37 +02:00
Alexey Andreev
efcb22b639 wasm: implement global variables
They aren't used by current Wasm BE yet, but will be used by future Wasm GC BE
2024-07-01 19:37:04 +02:00
Alexey Andreev
3ba2282473 wasm: implement several instructions related to reference types
These instructions will be presumably required for implementation of new Wasm GC BE. There's no tests for these changes, since there is no infrastructure to test anything like this. Instead, this code will be covered by tests for corresponding Wasm BE, when it's finally implemented.
2024-06-30 16:19:00 +02:00
Jonathan Coates
1e5e9d50ed
classlib: add FileTime and BasicFileAttributes (#929) 2024-06-30 13:30:00 +02:00
Alexey Andreev
d6474c3aeb wasm: add model definitions for GC spec
- refactor Wasm type representation to include reference types
- refactor function representation for consistency with new type system

First step toward Wasm GC support
2024-06-26 20:41:01 +02:00
Alexey Andreev
55657036a1 idea: fix support for 2024.1+ 2024-06-10 19:41:34 +02:00
Alexey Andreev
683b80b2ec samples: remove unnecessary debug code 2024-06-10 19:41:20 +02:00
Alexey Andreev
5d237a98ae wasm: fix writing debug info when some class was not found 2024-05-15 19:24:33 +02:00
Alexey Andreev
1549a84b40 jso: remove JSByRef from IndexedDB method for which it's no more relevant
Fix #914
2024-05-12 16:19:11 +02:00
Alexey Andreev
236700ea58 samples: fix function that redirects stdout to DOM
Fix #920
2024-05-12 16:16:27 +02:00
Alexey Andreev
1b412073b9 wasm: support exception handling via native exception handling spec 2024-05-09 20:38:17 +02:00
ihromant
d40bd9989b jso: add files and streams API 2024-05-04 21:20:29 +02:00
Alexey Andreev
6df39dca2f Bump project version 2024-04-30 20:51:40 +02:00
Alexey Andreev
3f74817af7 classlib: implement BufferedReader.lines 2024-04-29 20:19:46 +02:00
Alexey Andreev
0dd10899a0 classlib: implement CharSequence chars and codePoints 2024-04-29 19:15:27 +02:00
Alexey Andreev
e48dfb27b0 Improve inlining performance by caching method complexity 2024-04-29 16:32:24 +02:00
Alexey Andreev
d4f98a57d0 classlib: fix Stream.dropWhile 2024-04-27 20:26:22 +02:00
Alexey Andreev
31674f9744 classlib: improve performance of Appendable operations in System.out/System.err 2024-04-27 19:30:57 +02:00
pcoperatr
1a1c534535
classlib: add missing implementation of Appendable interface to PrintStream 2024-04-26 23:48:09 +03:00
Alexey Andreev
c066864c68 classlib: fix bug in Stream.takeWhile
Fix #913
2024-04-26 21:30:13 +02:00
Alexey Andreev
188d189407 js: improve performance of instanceof against interfaces 2024-04-26 10:37:12 +02:00
Alexey Andreev
19518eb191 jso: don't insert casts to JS classes in non-strict mode 2024-04-22 19:16:33 +02:00
Alexey Andreev
81fc843da3 jso: move interfaces from 'util.function' to 'function' subpackage, rename JSFunction to JSMapping to avoid name clash 2024-04-22 18:58:17 +02:00
Alexey Andreev
a1d711d069 jso: when casting to JS objects, don't fail cast when cast object is null 2024-04-16 20:03:19 +02:00
Alexey Andreev
e94b171fe9 Update CLDR 2024-04-16 19:06:02 +02:00
Alexey Andreev
ed908cb592 Update tzdata 2024-04-16 19:03:51 +02:00
Alexey Andreev
bca79a2c65 Bump versions of dependencies 2024-04-16 19:02:58 +02:00
Alexey Andreev
e7c28da4e2 classlib: fix ThreadLocal implementation for multi-thread case 2024-04-16 18:40:44 +02:00
Alexey Andreev
931f0f1f4a jso: support varargs in exported classes and modules 2024-04-15 20:53:24 +02:00
Alexey Andreev
abb1ea0070 samples: add html file for module demo 2024-04-12 21:16:02 +02:00
Alexey Andreev
271545a3ef gradle: support JS module type in dev server task 2024-04-12 21:15:12 +02:00
Alexey Andreev
908047fb1f idea: fix dev server
See discussion at #903
2024-04-12 20:27:39 +02:00
Alexey Andreev
2331c9d7b6 fix checkstyle errors 2024-04-12 14:14:25 +02:00
Alexey Andreev
97aa42d87b jso apis: new convention for event registration 2024-04-12 13:45:12 +02:00
Alexey Andreev
272f55b383 jso apis: turn DOM interfaces into abstract classes
This would make it possible to test HTMLElement for particular type with instanceof
2024-04-12 13:00:05 +02:00
Alexey Andreev
6a09f181c7 js: add JSTopLevel annotation that allows to import top-level declarations 2024-04-11 20:29:57 +02:00
Alexey Andreev
9b41e3e814 classlib: add CopyOnWriteArrayList implementation 2024-04-09 21:01:41 +02:00
Alexey Andreev
72b021fc0b jso: support exporting class constructors 2024-04-08 21:32:10 +02:00
Alexey Andreev
a6fb67817c jso: improve support of instanceof and cast against JS wrapper types
Fix #808
2024-04-04 21:18:54 +02:00
Alexey Andreev
e069bc3a44 classlib: implement WeakHashMap
Fix #799
2024-04-03 19:11:48 +02:00
Alexey Andreev
f668e27daa jso: properly support JSWrapper generation when java.lang.Object method is called with receiver type of JSObject interface; add optimization for JSObject.toString call.
Fix #898
2024-04-01 17:52:28 +02:00
Alexey Andreev
005765aa6e classlib: add String.formatted 2024-03-21 19:23:28 +01:00
Alexey Andreev
da0eb4e1e3 classlib: add PrintStream.printf 2024-03-21 19:18:42 +01:00
Alexey Andreev
403da28830 classlib: add PrintStream.format 2024-03-21 19:14:45 +01:00
Alexey Andreev
b792f48b55 classlib: add java.util.concurrent.CancellationException 2024-03-21 18:36:37 +01:00
Alexey Andreev
b2bfa494e6 classlib: add java.io.InvalidClassException 2024-03-21 18:34:12 +01:00
Alexey Andreev
008e764e73 Bump gradle version 2024-03-21 18:26:56 +01:00
Alexey Andreev
9b27f95eb9 Ignore checkstyle-idea.xml 2024-03-21 18:06:35 +01:00
Alexey Andreev
bbd02b0067 gradle: implement dev server task 2024-03-20 20:41:10 +01:00
Alexey Andreev
7341fb38a6 Reduce memory consumption 2024-03-18 18:05:06 +01:00