Commit Graph

767 Commits

Author SHA1 Message Date
Alexey Andreev
e9e291b224 Implement code splitting 2022-06-07 12:08:01 +03:00
Alexey Andreev
98490e92f6 JS: fix strict mode null pointer check with inlining 2022-05-19 12:24:02 +03:00
Alexey Andreev
be259f1667 Fix false negatives when checking missing methods 2022-05-19 10:25:40 +03:00
Alexey Andreev
31f91bc63c C: fix overlapping file names 2022-05-16 11:59:25 +03:00
Alexey Andreev
5e37e2a45b Fix reporting missing static field if containing class is never referenced directly 2022-03-25 10:27:15 +03:00
Alexey Andreev
ce5e3bfeb7 C/Wasm: fix issue in GC 2021-12-16 18:39:26 +03:00
Alexey Andreev
15466bad93 C: fix heap dump generator 2021-12-16 14:54:23 +03:00
Alexey Andreev
1fa48560c6 C: add option to generate shorter output file names to workaround msvc bug 2021-12-10 18:51:12 +03:00
Alexey Andreev
08aa642fe5 C: prevent from casting to native function type 2021-08-31 15:11:17 +03:00
Alexey Andreev
c2f90d3cfc fix ClassInference for arrays 2021-08-30 17:53:14 +03:00
Alexey Andreev
c65a9e1c97 Fix bug in irreducible graph splitting algorithm 2021-07-15 19:17:11 +03:00
Alexey Andreev
220537d984 C: fix behaviour of nested try/catch statements 2021-04-15 20:55:52 +03:00
Alexey Andreev
73bd139b7e C: implement ServiceLoader 2021-04-14 23:02:09 +03:00
Alexey Andreev
4a62b58f82 Bug fixes in optimizer 2021-04-02 19:54:38 +03:00
Alexey Andreev
7058a195b7 JS: fix class of object created by multianewarray instruction 2021-04-01 12:05:18 +03:00
Alexey Andreev
c89bc11d02 Fix dominator tree builder, make it possible to choose starting node 2021-04-01 09:29:18 +03:00
Alexey Andreev
d710870c65 Fix possible NPE 2021-03-31 12:53:12 +03:00
Alexey Andreev
9972fe0c29 Rewrite node splitting algorithm 2021-03-30 12:07:14 +03:00
Alexey Andreev
b34e25414e C: fix support for resources 2021-03-24 18:52:54 +03:00
Alexey Andreev
00fba54d7b C: fix exception handling semantics with longjmp 2021-03-24 17:30:49 +03:00
Alexey Andreev
bb4315e486 C: fix missing files when casting to arrays 2021-03-24 16:09:01 +03:00
Alexey Andreev
6de830d5bd wasm: fix initialization order of system classes 2021-03-22 23:22:34 +03:00
Alexey Andreev
f2bac088f1 Fix more complex cases of irreducible CFGs during coroutine transformation 2021-03-22 22:09:41 +03:00
Alexey Andreev
9df897d298 Fix coroutine transformation. Make emulated threads work in Wasm 2021-03-22 21:28:50 +03:00
Alexey Andreev
eb495182d2 JS: fix runtime for Safari 2021-03-22 15:13:40 +03:00
Alexey Andreev
38cbd7e80b JS: fix async methods 2021-03-22 14:17:50 +03:00
Alexey Andreev
d6780ea637 Fix bug in global value numbering optimization 2021-03-22 14:17:50 +03:00
Alexey Andreev
bd53c1a5a2 wasm: trying to implement coroutines 2021-03-21 22:13:09 +03:00
Alexey Andreev
c4c1408160 wasm: fix running tests, add in-browser test runners 2021-03-20 19:52:45 +03:00
Alexey Andreev
b2b7a603b4 JS: fix array optimization 2021-03-19 14:16:29 +03:00
Alexey Andreev
75d06bebbf JS: fix bug in compilation of monitorenter instruction 2021-03-18 14:20:29 +03:00
JohannesS
f97484365c JS: fix overrides with default methods 2021-03-18 12:26:33 +03:00
Alexey Andreev
81bfe3f6e2 Improve pom.xml configuration 2021-03-18 11:16:41 +03:00
Alexey Andreev
2c7b5be62e JS: fix long emulation in JS engines that don't support BigInt 2021-03-18 10:14:18 +03:00
Alexey Andreev
3779520389 C: fix after introducing CCE support 2021-03-18 01:03:01 +03:00
Alexey Andreev
67c639b875 JS: fix stack trace decoder with new CCE support 2021-03-17 21:49:06 +03:00
Alexey Andreev
4c0c7872a1 JS: add support for CCE in strict mode 2021-03-17 21:11:18 +03:00
Alexey Andreev
02e8955abc JS: fix overflow behaviour of unary minus 2021-03-17 10:16:07 +03:00
Alexey Andreev
71f87d79a5 JUnit: add support for TestNG annotations 2021-03-16 21:47:05 +03:00
Alexey Andreev
40ecb0938d Fix issue with BigInt64Array in Safari 2021-03-12 19:13:29 +03:00
Alexey Andreev
35f025d7da JS: fix bug in fallback long implementation 2021-03-10 16:22:19 +03:00
Alexey Andreev
ca23da939a JS: represent long as BigInt if available 2021-03-08 22:59:45 +03:00
Alexey Andreev
e4c808c324 Add switch to log devirtualization process 2021-02-26 12:26:13 +03:00
Alexey Andreev
0eca9d95e1 Fix missing virtual call detector 2021-02-26 11:52:10 +03:00
Alexey Andreev
d1fa57210e Copy parameter annotations when renaming a class 2021-02-01 14:41:18 +03:00
Alexey Andreev
969ad17b6a C: workaround for regression in MSVC compiler 2020-11-27 18:54:24 +03:00
Octavia Togami
a8641de39b
Correct problem severity for warning 2020-11-26 14:59:13 +03:00
Alexey Andreev
306c78459c JS: use symbol instead of string property to represent Java exception wrapper 2020-09-09 19:28:32 +03:00
Alexey Andreev
17098495f2 JS: fix compilation of class files that contain methods and field names containing non-identifier characters 2020-07-06 12:11:17 +03:00
Alexey Andreev
9cf21825fc Fix wrong evaluation when optimizer sees array initialization that looks like array initializer expression, but has access to array variable on its elements, i.e. on a case like this:
Object[] array = new Object[1];
array[0] = array;

That can't be optimized to

Object[] array = new Object[] { array };
2020-06-16 19:24:45 +03:00