Commit Graph

2354 Commits

Author SHA1 Message Date
Alexey Andreev
8e08cf6dcd C: improve generation of string pool for incremental mode 2019-05-16 16:53:40 +03:00
Alexey Andreev
0003ed0bb2 C: generate '#line' preprocessor directive 2019-05-16 11:12:35 +03:00
Alexey Andreev
7a99258cab C: allow to run external tool after successful incremental build 2019-05-15 16:37:51 +03:00
Alexey Andreev
054db3e8d1 C: incremental code generator 2019-05-15 15:16:18 +03:00
Alexey Andreev
c1d4ed2e3c JS: get rid of float type from CanvasRenderingContext2D 2019-05-14 14:50:17 +03:00
Alexey Andreev
b57b628107 JS: add HTMLCanvasElement.toDataURL overloads 2019-05-14 14:49:51 +03:00
Alexey Andreev
ca50f72fe9 Fix displaying diagnostics in out-of-process mode 2019-05-14 14:46:44 +03:00
Alexey Andreev
3d96616761 JS: reduce precision of float constants 2019-05-13 17:39:18 +03:00
Alexey Andreev
a1aa25afa0 C: fix generation of relative path in 'include' directive 2019-05-13 10:49:36 +03:00
Alexey Andreev
da22256c1f C: compile into multiple .c and .h files 2019-05-08 17:36:46 +03:00
Alexey Andreev
7ef639ec8a Fix bug in GC 2019-04-29 16:24:07 +03:00
Alexey Andreev
ea5dd80199 C/Wasm: fix bugs in GC root detector 2019-04-29 16:24:07 +03:00
Alexey Andreev
5a346fd3a4 Fix issue in inliner 2019-04-29 16:24:07 +03:00
Alexey Andreev
093b506c9a Improve resolution of System.nanoTime 2019-04-29 16:24:07 +03:00
Alexey Andreev
1b23c9194b Remove tests that don't pass in JDK 11 2019-04-27 14:07:02 +03:00
Alexey Andreev
8a45dc300c C backend: fix bug Class implementation. Don't emit unnecessary Object.monitor field 2019-04-26 18:26:23 +03:00
Alexey Andreev
da68fa0083 Wasm backend: fix 2019-04-26 17:10:28 +03:00
Alexey Andreev
20866637e7 C backend: exit application and print stack when getting out of memory error 2019-04-26 14:04:07 +03:00
Alexey Andreev
87656a3e9a C backend: fix array of of bounds access in fibers 2019-04-26 12:41:17 +03:00
Alexey Andreev
8cd96d2da2 C backend: fix passing NULL arrays to native methods 2019-04-26 12:40:51 +03:00
Alexey Andreev
f828d049c4 C backend: bugfixes 2019-04-23 19:56:16 +03:00
Alexey Andreev
cbc8d3f638 C backend: bugfixes 2019-04-22 19:03:37 +03:00
Alexey Andreev
2a6ca2d0d8 C backend: bug fixes and interop improvements 2019-04-19 18:41:02 +03:00
Alexey Andreev
cfd6b64899 Remove debugging code 2019-04-15 16:47:46 +03:00
Alexey Andreev
83d041d55b Improve compilation performance of low-level backends 2019-04-05 14:37:02 +03:00
Alexey Andreev
7551cd1ec6 C: fix bugs in GC 2019-04-05 13:08:16 +03:00
Alexey Andreev
ec8bae1d40 C: fix bugs in RTTI. Support args parameter of main method 2019-04-04 18:34:30 +03:00
Alexey Andreev
56cb14e30c Update deploy scripts 2019-04-03 12:04:48 +03:00
Alexey Andreev
91cf9917c7 JS: fix deobfuscated parameter names. Generate less local variables 2019-04-02 19:15:48 +03:00
Alexey Andreev
e6bb91bfb0 JS: fix coroutines 2019-04-02 17:12:53 +03:00
Alexey Andreev
fe68bf700b Improve performance of array creation 2019-04-02 17:04:51 +03:00
Dylan
d18d50a823 Add missing forEach to TIterable 2019-04-02 11:28:11 +03:00
Alexey Andreev
a9c4ab6aa4 Support generic type signatures in IR 2019-03-31 21:32:41 +03:00
Alexey Andreev
45d31da85c Make clinit optimization weaker in order to properly handle case
when clinit method reads state that was set somewhere in main method
2019-03-27 19:34:30 +03:00
Alexey Andreev
d2a7e31eca Proper fix for recent bug in C backend. Fix Thread.daemon flag 2019-03-27 18:29:02 +03:00
Alexey Andreev
0dc170dad2 Fix bugs in C backend 2019-03-26 19:09:25 +03:00
Alexey Andreev
9a6da19a24 Trying to fix deploy script 2019-03-25 15:09:42 +03:00
Alexey Andreev
46d76f7acf Fix <clinit> optimization issues 2019-03-25 15:09:23 +03:00
Alexey Andreev
4086aebc7b Fix deploy configuration 2019-03-25 13:48:15 +03:00
Alexey Andreev
0a283843ea Update build configuration for uploading to teavm.org 2019-03-25 13:13:41 +03:00
Alexey Andreev
70ff079113 Mark some JS native methods as not having side effects 2019-03-25 12:47:26 +03:00
Alexey Andreev
103affa392 Partially revert previous <clinit> commit.
Generate calls to <clinit> methods, since corresponding analyzer
guarantees proper initialization order.
2019-03-24 22:51:17 +03:00
Alexey Andreev
cd008f8a52 Revert to SIMPLE optimization level when running tests 2019-03-24 12:55:26 +03:00
Alexey Andreev
f33c90f778 Improve <clinit> elimination:
* Generate clinit instruction instead of calling <clinit>
  directly
* Rename annotation that indicates absence of side effects
* Don't apply this annotation automatically to all JSBody methods
2019-03-24 12:54:06 +03:00
Dylan
b8c73ae00c Fix IllegalStateException in TDeflater 2019-03-24 12:25:15 +03:00
Alexey Andreev
de84105241 Call <clinit> methods before main method when possible, eliminate
lazy class initialization for these <clinit> methods.
2019-03-22 19:40:56 +03:00
Alexey Andreev
955ac92035 Get rid of reflection code 2019-03-22 11:32:48 +03:00
Alexey Andreev
ac627580c6 JS: Support JSByRef annotation on method return types 2019-03-21 18:09:38 +03:00
Alexey Andreev
f664d94d74 Allow to exclude certain classes, fields and methods from compilation 2019-03-21 17:00:22 +03:00
Alexey Andreev
36041b4107 Fix issues with call graph serialization 2019-03-13 19:19:05 +03:00