Alexey Andreev
bab0cd59a6
Improve performance and stability of development server and incremental compilation
2018-12-13 18:45:44 +03:00
Alexey Andreev
c9c9c15dfe
Fix Class.initialize. Fix html4j tests
2018-12-11 23:47:47 +03:00
Alexey Andreev
d74bcbe2b9
Fast dependency analyzer, fix bugs in incremental compiler
2018-12-07 17:41:21 +03:00
Alexey Andreev
eaf0f5a24e
Fix bootstrap compiler
2018-12-07 17:41:20 +03:00
Alexey Andreev
2bb146af47
Improve float to string conversion
2018-12-07 00:21:18 +03:00
Alexey Andreev
f23c71cd97
Improve double to string conversion
2018-12-02 16:12:59 +03:00
Alexey Andreev
1cf3cce076
Reduce minimum runtime size
2018-12-01 23:07:03 +03:00
Alexey Andreev
45d0a13c9b
In HtmlUnit, decode stack traces for all constructed exceptions
2018-11-26 15:58:51 +03:00
Alexey Andreev
cf9090e0fa
Use JS typed arrays to reinterpret floats and ints.
...
Also, drop IE9 support
2018-11-23 17:14:06 +03:00
Alexey Andreev
b9ec21a667
Fix Long.reverse
2018-11-23 14:32:50 +03:00
Alexey Andreev
753755918d
Update build config to avoid jar hell
2018-11-22 14:49:30 +03:00
Alexey Andreev
fc799afcda
Add Maven option to run TeaVM in a separate process
2018-11-20 14:22:35 +03:00
Alexey Andreev
064888c9a1
Support Java 11
2018-11-12 18:59:28 +03:00
Alexey Andreev
63b2440e48
Remove $rt_global and indirect references to runtime function
2018-10-27 22:42:25 +03:00
Alexey Andreev
5035c58533
Fix Collections.reverse for non-random access lists. Make ArrayList random access.
2018-10-23 17:01:55 +03:00
Alexey Andreev
f206cbe2d1
Reorder modifiers to get less metadata size
2018-10-04 19:07:23 +03:00
Alexey Andreev
b66053f5ce
Don't generate virtual wrappers for methods that aren't ever called virtually
2018-10-04 11:55:34 +03:00
Alexey Andreev
0a94c91ff2
Don't generate unused class names in metadata section
2018-10-03 14:46:52 +03:00
Alexey Andreev
be21e474c5
Generate shorter <clinit> caller names in minified mode
2018-10-03 12:48:14 +03:00
Alexey Andreev
614f95d376
Fix String.contains
2018-09-19 13:35:00 +03:00
Alexey Andreev
4b77a5d15f
Fix String.contains. Fix crashing in rare cases or improper use of JSO
2018-09-19 12:47:32 +03:00
Alexey Andreev
b74c501fa6
Add Float/Double.isFinite
2018-09-04 17:27:54 +03:00
Alexey Andreev
d20accc20c
Add support for Array.set
2018-08-29 13:20:16 +03:00
Alexey Andreev
174ac9e725
Fix translation of lambdas when class has subclass with lambdas
2018-08-27 19:44:44 +03:00
Alexey Andreev
4e20a1de18
Properly handle checkcast to array type in dependency analyzer
2018-07-03 19:11:51 +03:00
Alexey Andreev
f160ce2f2f
Use class/method names to generate lambda class names. Reduce number of types propagated by dependency analyzer
2018-06-29 16:46:36 +03:00
Alexey Andreev
2eea5cba5e
Fix AbstractList.removeRange
2018-06-29 16:45:21 +03:00
Alexey Andreev
7511eea1cb
Fix boxing lambda return value
2018-06-28 19:07:29 +03:00
Alexey Andreev
d674b0b7de
Add some missing stdlib methods
2018-06-28 19:07:04 +03:00
Alexey Andreev
fc13c10d98
Fix Logger.info
2018-06-28 18:54:36 +03:00
Alexey Andreev
dc99ead514
Fix compilation of Kotlin code when there's kotlin-reflect library in the classpath, but it's actually not used by Kotlin code. See #345
2018-06-18 22:56:11 +03:00
Alexey Andreev
cdffb779e0
Fix NPE when there are build errors related to lack of reflection support
2018-06-18 13:40:11 +03:00
Alexey Andreev
097820cc2b
Wasm backend: implement remaining types of resources
2018-05-20 23:54:23 +03:00
Alexey Andreev
5ce48ce866
Wasm backend: fix issues related to instanceof expression
2018-05-19 22:56:16 +03:00
Comick
3ef3678ed0
Fix TSetFromMap#add return value
2018-05-19 21:24:41 +03:00
Alexey Andreev
f0d97a72ab
Wasm backend: add intrinsics for some Float and Double methods
2018-05-16 20:15:13 +03:00
Alexey Andreev
d7b57ae938
Update asm version to 6.1.1 and versions of Maven plugins that use old asm in order to support Java 10 bytecode version.
2018-05-15 16:20:20 +03:00
Alexey Andreev
f23128bb13
Wasm backend: fix many tests
2018-05-12 23:43:53 +03:00
Alexey Andreev
b087610c2c
Wasm backend: make JUnit tests work
2018-05-08 23:31:51 +03:00
Alexey Andreev
f532801f38
C backend: implement support for ResourceArray and ResourceMap
2018-05-07 19:30:00 +03:00
Alexey Andreev
37efbd742b
C backend: more bugfixes
...
* Fix cloning Object[] in 64-bit systems
* Fix generation of x instanceof Interface
* Fix a % b when a and b are float or double
* Fix generation of unreachable virtual calls
2018-05-05 23:35:17 +03:00
Michele Comignano
c11b868c0b
Add IdentityHashMap, improve distribution of identityHashCode
...
Add IdentityHashMap, improve distribution of identityHashCode
2018-05-05 22:05:22 +03:00
Alexey Andreev
4530167061
C backend: implement support for simple cases of resources
2018-05-01 00:54:11 +03:00
Alexey Andreev
ee2f389027
C backend: make more tests pass
2018-04-28 18:49:26 +03:00
Alexey Andreev
18eb3ee058
C backend: make more tests pass
2018-04-27 00:47:38 +03:00
Alexey Andreev
8f0320e217
Fix bugs in C backend to make more tests pass
2018-04-21 00:55:43 +03:00
Alexey Andreev
4990dbe8e4
Add support for C backend in TeaVMTestRunner
2018-04-20 22:58:09 +03:00
Alexey Andreev
e77997c93f
Implement null check in C backend
...
Although initial purpose of this comment was null check,
it took much time to complete it and it caused many unrelated changes.
Besides just implementing null check in quite naive fashion
(I could not use the trick with memory protection, since I have to
maintain shadow stack, and support WebAssembly), I had to optimize
things. I relied on my existing nullness analysis to eliminate
as much null checks as possible. However, the whole nullness analysis
was wrong. After some thoughts I came up with solution very
close to range analysis, which required me to introduce extension
to IR sometimes called e-SSA form with so called sigma nodes.
Also, I found some bugs in few different places (by the time write this
message I could only remember escape analysis/scalar replacement and
after-inlining devirtualization) and fixed them.
2018-04-17 00:05:46 +03:00
Alexey Andreev konsoletyper@gmail.com
fe47fe19ce
Fix build under JDK9+
2018-03-28 22:54:55 +03:00
Alexey Andreev
05d0220dcd
C backend: initial commit
2018-03-20 23:18:52 +03:00