Commit Graph

3143 Commits

Author SHA1 Message Date
Alexey Andreev
a281c19363 wasm gc: draft Wasm GC backend 2024-07-28 14:31:34 +02:00
Alexey Andreev
9f12917de9 js: remove long emulation 2024-07-25 19:43:29 +02:00
Alexey Andreev
f48c24283c wasm: implement transformation from TeaVM tree IR to Wasm GC 2024-07-24 20:21:22 +02:00
Alexey Andreev
172de8e737 wasm: move common part of wasm expression generator in order to later reuse it with Wasm GC BE 2024-07-22 20:16:16 +02:00
Alexey Andreev
13a959ce67 classlib: fix String.replace, add optimizations for some corner cases
Fix #932
2024-07-18 18:51:42 +02:00
pizzadox9999
8889b63df7 jso: add TouchEvent bindings 2024-07-18 18:38:15 +02:00
Alexey Andreev
9b3652697d Bump Gradle version to 8.9 2024-07-11 19:29:54 +02:00
Alexey Andreev
e53af544a0 classlib: fix bug with precision in Formatter 2024-07-11 18:26:12 +02:00
Alexey Andreev
025801d385 Limit depth of method analysis in class initializer analysis in order to avoid too deep stack (and therefore SOE) 2024-07-11 18:18:24 +02:00
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