Commit Graph

2880 Commits

Author SHA1 Message Date
Alexey Andreev
87d63168d2 Wasm: working on control flow analyzer for debugger 2022-12-05 20:03:57 +01:00
Alexey Andreev
44204b952d Wasm: working on binary parser 2022-12-04 20:43:32 +01:00
Alexey Andreev
53dbb72c53 Wasm: working on binary parser 2022-12-02 21:35:07 +01:00
Alexey Andreev
aaed8e312a Wasm: working on parser 2022-12-02 18:07:56 +01:00
Alexey Andreev
b58dd1a37b Wasm: refactor debug info parser and fix debugger errors 2022-12-02 17:15:38 +01:00
Alexey Andreev
548ded7c75 Wasm: fix debug info generation 2022-12-02 07:49:07 +01:00
Alexey Andreev
57e0227a02 Wasm: trying to improve debug information emitter 2022-12-01 17:33:35 +01:00
Alexey Andreev
1d2633ed76 Chrome debugger: seng ping package over websocket to preserve its open state, fix crash in debugger 2022-11-30 17:32:55 +01:00
Alexey Andreev
930a57fdd6 Wasm: fix compiler crash when compiling without debug info 2022-11-30 14:01:46 +01:00
Alexey Andreev
4453bba33b Wasm: fix issues in debugger 2022-11-30 13:38:34 +01:00
Alexey Andreev
a2715f2c79 Wasm: working on Chrome RDP debugger 2022-11-29 21:30:41 +01:00
Alexey Andreev
9d3927e196 Wasm: working on Chrome RDP debugger 2022-11-29 18:14:13 +01:00
Alexey Andreev
d1feec7ae6 Wasm: add parser for own debug information 2022-11-28 17:30:34 +01:00
Alexey Andreev
56929b2085 Wasm: generate debugging information for own debugger 2022-11-25 17:50:39 +01:00
Alexey Andreev
7e95e935d1 Wasm: write more info about classes in DWARF 2022-11-23 22:04:26 +01:00
Alexey Andreev
646c8ec488 Wasm: fix issue with forward references in DWARF, generate class references as pointer types 2022-11-23 11:20:07 +01:00
Alexey Andreev
f938db798b Wasm: add information about parameters and local variables to DWARF 2022-11-22 17:53:12 +01:00
Alexey Andreev
13cc56feb5 Wasm: split declarations and specifications of methods in DWARF 2022-11-21 16:00:27 +01:00
Alexey Andreev
8fac3237ba Wasm: generate nested DIEs for namespaces/classes/methods 2022-11-20 16:12:00 +01:00
Alexey Andreev
6222241651 Wasm: update loader to use instantiateStreaming method 2022-11-20 14:05:35 +01:00
Alexey Andreev
1399045ff6 Wasm: fix issues in DWARF generator 2022-11-20 08:42:32 +01:00
Alexey Andreev
7f38697d50 Wasm: don't emit DW_LNE_end_sequence when there were no previous command emitted 2022-11-19 20:15:54 +01:00
Alexey Andreev
f7768efd51 Wasm: fix bugs in DWARF generator, emit DW_LNE_end_sequence after each function 2022-11-19 15:14:21 +01:00
Alexey Andreev
0604c6a613 Wasm: fix default file name used by wasi target 2022-11-19 13:14:24 +01:00
Alexey Andreev
06bcaec1e5 Wasm: emit simple DW_TAG_subprogram DIEs (however, no success with debuggers). 2022-11-19 13:00:52 +01:00
Alexey Andreev
f06ba832d7 Wasm: generate DWARF line numbers
Despite generated DWARF sections pass different verifications, they don't work in chrome or wasmtime.
2022-11-19 11:52:43 +01:00
Alexey Andreev
c5011ebf69 Wasm: initial skeleton implementation of DWARF generator 2022-11-18 22:07:23 +01:00
Alexey Andreev
a543b91b84 Wasm: fix error when parsing command line args 2022-11-17 16:35:28 +01:00
Alexey Andreev
238873cbe7 Apply Java 11 syntax 2022-11-17 14:36:55 +01:00
Alexey Andreev
06748fa12b Fix class initializer optimization.
Assume that class initializer is dynamic if it initializes another class with dynamic initializer
2022-11-17 14:35:37 +01:00
Alexey Andreev
238930bfc3 IDEA: bump maven-shade-plugin version 2022-11-17 13:10:57 +01:00
Alexey Andreev
df98b411d0 Wasm: fix issue with attempt to shrink heap after GC 2022-11-17 12:02:46 +01:00
Alexey Andreev
64ae44ee01 JS: store global object in a variable to avoid name clashes between generated declarations (in minified mode) and global declarations 2022-11-17 12:02:46 +01:00
Alexey Andreev
68efdddddf JS: fix writing from JS to stdout 2022-11-16 16:41:29 +01:00
Alexey Andreev
70e37dfed9 Wasi: fix bugs in IO implementation 2022-11-12 21:52:29 +01:00
Alexey Andreev
d9fb2bc159 Fix bugs in Wasi support. Fix GC issue in Wasm 2022-11-11 21:01:22 +01:00
Alexey Andreev
1b6acc9eb1 Update Java version to 11 2022-11-11 14:37:12 +01:00
Alexey Andreev
4a025f2605 Wasm: trying to revive GC debugger in wasm2c generator and implement emulation for WASI 2022-11-11 14:04:56 +01:00
Alexey Andreev
8285799b2b Fix checkstyle warning 2022-11-11 11:09:19 +01:00
Alexey Andreev
1fb70b0903 Fix private method call resolution in Java 11 2022-11-11 10:56:20 +01:00
Alexey Andreev
5fb83ca2ac Remove unnecessary Wasm runtime imports, implement isFinite method 2022-11-11 09:38:21 +01:00
Alexey Andreev
c52b71292d Fix Math.pow implementation in JS 2022-11-11 09:15:52 +01:00
Alexey Andreev
485f8ac902 Wasi: fix file system issues, add support for Math.pow 2022-11-10 17:08:58 +01:00
Alexey Andreev
292aa21aef classlib: use built-in unicode table to implement tolower/toupper methods.
This makes it possible to use TeaVM in environments where these functions aren't natively available.
For example, WASI
2022-11-09 12:08:17 +01:00
Alexey Andreev
a49f47dac7 Fix WASI support in CLI runner 2022-11-08 19:46:40 +01:00
Alexey Andreev
224810d0ab Wasm: support file IO and random generator in WASI 2022-11-08 19:44:56 +01:00
Alexey Andreev
e428e2ac7a Wasm: implement file IO in WASI 2022-11-08 17:24:58 +01:00
Alexey Andreev
3eb4b742ea Move FS support to teavm-core module 2022-11-07 09:53:46 +01:00
Alexey Andreev
bb087b7630 Wasm: support running WASI tests in JUnit 2022-11-06 21:41:35 +01:00
Alexey Andreev
8f4e4e811f Wasm: don't emit wasm-runtime.js file in WASI mode 2022-11-06 21:41:09 +01:00