Alexey Andreev
672f7e32cd
classlib: update tzdata, unicodedata and cldr
2023-02-24 19:44:38 +01:00
Alexey Andreev
7bde7d9642
classlib: fix invalid superclass of IllegalStateException
2023-02-17 20:49:57 +01:00
Christoph Aschwanden
4fa35e8688
classlib: fix issue with Date.UTC year
...
Co-authored-by: noblemaster <contact@noblemaster.com>
2023-02-12 10:52:36 +03:00
Alexey Andreev
f09a427827
classlib: fix strange character in method names
2023-02-02 10:15:23 +01:00
Alexey Andreev
e315398d9b
Don't include large resources into classlib sources jar
2023-01-26 14:57:23 +01:00
Alexey Andreev
f0dd67f7fc
Fix classlib dependencies
2023-01-26 14:07:12 +01:00
Alexey Andreev
5c146c6de0
Fix issues in recently merged PR
2023-01-26 09:17:08 +01:00
Ivan Hetman
ada086a864
Base64 implementation ( #650 )
...
classlib: add Base64 support
2023-01-26 08:40:03 +01:00
Alexey Andreev
8014c038c0
Migrate to gradle
2023-01-23 17:16:07 +01:00
Ivan Hetman
e12f99ab49
Crypto/UUID ( #639 )
...
JS: if possible, use crypto API to generate UUID
2022-12-07 14:33:27 +03: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
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
224810d0ab
Wasm: support file IO and random generator in WASI
2022-11-08 19:44:56 +01:00
Alexey Andreev
3eb4b742ea
Move FS support to teavm-core module
2022-11-07 09:53:46 +01:00
Alexey Andreev
1ca2c75e1c
Wasm: initial WASI support
2022-11-06 11:53:52 +01:00
Alexey Andreev
d5cdd740f5
Fix incorrect behaviour of Class.getInterfaces
...
fix #635
2022-11-04 16:15:30 +01:00
Alexey Andreev
a40c955d39
classlib: fix StringBuilder.indexOf
...
Fix #615
2022-10-05 10:16:54 +02:00
Alexey Andreev
fcb13b24ad
classlib: force class initialization in EnumSet implementation in order to get enum constants array filled
2022-09-13 16:03:37 +02:00
Alexey Andreev
38d3bf1c63
classlib: fix ByteBuffer.slice
...
Probably fixes #607
2022-08-16 10:06:08 +02:00
iamdudeman
2d73403b9a
Moved next origin/bound implementations from TThreadLocalRandom to TRandom.
2022-08-16 10:34:47 +03:00
Alexey Andreev
10415b356e
classlib: fix AbstractSet.hashCode
2022-08-12 16:47:59 +02:00
Timothy Solum
f7f99b3c9f
Add Random next origin, bound methods for float, double, int and long ( #609 )
2022-08-06 14:39:09 +03:00
Timothy Solum
89f41b9a35
Add setName method to Thread. ( #608 )
2022-08-06 14:37:21 +03:00
Alexey Andreev
3571917a2f
Fix issue in record toString method generator
2022-08-06 14:07:53 +03:00
Ulugbek
b6837340e5
classlib: add TCollectors#collectingAndThen
and TCollectors#toUnmodifiableList
2022-07-25 09:27:18 +03:00
Ulugbek
81ed5ef829
classlib: add an empty implementation of TAccessControlContext
2022-07-25 09:27:18 +03:00
Ulugbek
8a70c5ded0
classlib: add TAccessController(TPrivilegedExceptionAction<T>) T
2022-07-25 09:27:18 +03:00
Ulugbek
584adb457f
classlib: add TSystem#getSecurityManager()TSecurityManager
and an empty implementation of TSecurityManager
2022-07-25 09:27:18 +03:00
Ulugbek
c8eb5ec3be
classlib: add TPrivilegedActionException
2022-07-25 09:27:18 +03:00
Ulugbek
8776504e18
classlib: add PrivilegedExceptionAction
2022-07-25 09:27:18 +03:00
Alexey Andreev
c42b9fac28
Prevent usage of javax.xml package of running JVM
2022-07-13 13:13:22 +03:00
Alexey Andreev
7fe79a1768
Fix abstract classes are considered by dependency analysis when constructed by reflection
...
Also fix #592
2022-07-13 12:48:34 +03:00
Alexey Andreev
f0d805fda8
Support Java 17 records
2022-07-10 20:40:24 +03:00
Alexey Andreev
87324a3569
Add Stream.toList
2022-06-23 10:42:43 +03:00
Ulugbek Abdullaev
eba1d1e574
stdlib: implement Stream.takeWhile
( #588 )
...
Co-authored-by: Ulugbek <ulugbek.abdullaev@jetbrains.com>
2022-06-10 13:41:16 +03:00
Alexey Andreev
eab7ef0a2e
Bump Scala version in Scala example. Add hack for Scala runtime.
2022-05-08 18:43:49 +03:00
Alexey Andreev
e625409562
classlib: add ResourceBundle.getBaseBundleName
2022-05-08 18:07:40 +03:00
Alexey Andreev
500d72d596
classlib: add methods to java.util.Objects
2022-05-08 17:42:26 +03:00
Alexey Andreev
0bcd3101ad
Remove unused threeten code
2022-03-25 13:21:21 +03:00
Alexey Andreev
393ab3b09e
Classlib: fix bug in regexp implementation
2022-02-25 20:34:44 +03:00
Alexey Andreev
1c04cd2ba6
Fix typo
2022-02-01 08:47:27 +03:00
Alexey Andreev
3728645665
Add Kotlin hack to avoid using regexp in
...
String.toFloatOrNull and String.toDoubleOrNull
2022-02-01 08:46:35 +03:00
Alexey Andreev
e4a408d26e
classlib: throw exception from URL constructor when invalid ':' provided
2022-01-12 16:02:46 +03:00
Alexey Andreev
bdd865d07f
Update CLDR and tzdata
2021-10-14 16:17:52 +03:00
Alexey Andreev
6d11abf4b6
Implement missing methods in Boolean, Byte and Short classes
2021-10-14 15:25:00 +03:00
Alexey Andreev
73bd139b7e
C: implement ServiceLoader
2021-04-14 23:02:09 +03:00
Alexey Andreev
aa8a91d030
classlib: implement missing charsets
2021-03-30 20:03:25 +03:00
Alexey Andreev
c4c1408160
wasm: fix running tests, add in-browser test runners
2021-03-20 19:52:45 +03:00
Alexey Andreev
5d9d64303e
Fix tzdata parser
2021-03-18 13:03:55 +03:00
Alexey Andreev
4fe012740d
Update tzdata
2021-03-18 12:00:27 +03:00
Alexey Andreev
0cff9e104c
Fix checkstyle warnings after migration to the new version
2021-03-18 11:51:20 +03:00
Alexey Andreev
81bfe3f6e2
Improve pom.xml configuration
2021-03-18 11:16:41 +03:00
Alexey Andreev
44bacd0b02
java.time: update threeten code and tests WRT JDK semantics
2021-03-18 00:13:52 +03:00
Alexey Andreev
8fea07b772
java.time: remove deviation config reader for HijrahDate
2021-03-18 00:13:52 +03:00
Alexey Andreev
e9d0ed5c67
java.time: reduce generated code size
2021-03-18 00:13:52 +03:00
Alexey Andreev
1b31d6da9a
java.time: format code according to checkstyle rules
2021-03-18 00:13:52 +03:00
Alexey Andreev
2924af963d
java.time: add support for time zones
2021-03-18 00:13:52 +03:00
Alexey Andreev
81878548b4
java.time: running threeten tests
2021-03-18 00:13:51 +03:00
Alexey Andreev
91c00da57b
java.time: add tests from threeten
2021-03-18 00:13:51 +03:00
Alexey Andreev
5d630ae551
java.time: get rid of serialization code
2021-03-18 00:13:49 +03:00
Alexey Andreev
051c3bb227
java.time: remove jdk7 hacks
2021-03-18 00:13:09 +03:00
Alexey Andreev
3513bacc2e
java.time: remove usages of concurrent classes
2021-03-18 00:12:42 +03:00
Alexey Andreev
f12d33a032
java.time: add files from threeten
2021-03-18 00:12:42 +03:00
Alexey Andreev
0064d399be
Fix bug in Arrays.binarySearch
2021-03-17 10:15:25 +03:00
Alexey Andreev
a3eaa1fc18
Add EnumSet.range
2021-03-17 10:14:32 +03:00
Alexey Andreev
26db1acc96
Fix how weeks are represented in DateFormatSymbols
...
Add missing methods to DateFormatSymbols
2021-03-17 10:13:38 +03:00
Alexey Andreev
3cfe4644cd
Stdlib: save tzdb as set of rules instead of set of transitions
...
Generate transitions at run time
2021-03-16 21:47:05 +03:00
Alexey Andreev
9a83bfe4e9
Fix new Kotlin hacks
2021-03-12 19:51:58 +03:00
Alexey Andreev
4f9346e4e3
Update Kotlin hacks
2021-03-12 18:39:23 +03:00
Alexey Andreev
67045b068e
Fix infinite loop in Deflater
2021-03-09 16:09:09 +03:00
Alexey Andreev
8b4f401bcb
Fix TreeMap iterator
...
Fix #519
2021-03-06 21:08:51 +03:00
Alexey Andreev
ddf194af31
JS: reset file size to 0 when creating FileOutputStream
...
Fix #558
2021-03-06 19:38:49 +03:00
Ivan Hetman
6ef841a560
Fix generic collection toString ( #559 )
2021-03-06 19:28:06 +03:00
Alexey Andreev
0ade0313ce
Fix issue in DecimalFormat rounding.
...
When value near 1 (0.999...) is rounded to 1, exponent should be increased.
This fixes #557 . Also reuse exponent/mantissa/sign analyzer
written for StringBuilder.append(double)
2021-02-27 22:07:00 +03:00
Alexey Andreev
0eca9d95e1
Fix missing virtual call detector
2021-02-26 11:52:10 +03:00
Ivan Hetman
8122095193
Fix circular reference support in toString of collection classes ( #552 )
2021-01-11 21:32:44 +03:00
Ivan Hetman
98f5c5da73
Add Math.floorMod and Math.floorDiv ( #544 )
2020-11-23 11:49:33 +03:00
Ivan Hetman
b718e7852f
Fix behaviour of collections created with Set.of and Map.of ( #534 )
2020-10-26 13:22:08 +03:00
Ivan Hetman
605628d6df
Fix issues in Random and ThreadLocalRandom ( #536 )
2020-10-26 13:09:50 +03:00
Ivan Hetman
baeb2a28a7
Add missing Optional methods and fix bug in equals ( #533 )
2020-10-26 13:04:26 +03:00
Ivan Hetman
71140135fa
Add missing toArray method from JDK 11 ( #531 )
2020-10-26 13:02:13 +03:00
Ivan Hetman
e95092fd43
Add static Map.Entry methods ( #530 )
2020-10-12 09:39:16 +03:00
Alexey Andreev
55ba9be16a
Proper implementation for List.of, Set.of, Map.of/ofEntries
2020-10-07 16:32:34 +03:00
Alexey Andreev
74cc1d8d7d
Fix Float.parse and Double.parse for some values
2020-10-07 16:32:34 +03:00
Ivan Hetman
1785d6ad9e
Collectors.toMap ( #515 )
...
Implement Collectors.toMap
2020-10-07 12:21:55 +03:00
Ivan Hetman
fcc1fb7690
Fix Stream.min and Stream.max ( #520 )
2020-09-08 19:02:45 +03:00
Alexey Andreev
d97dce4650
Fix concatenation with byte and short in JVM 9+
...
Fix #522
2020-09-08 15:03:19 +03:00
Ivan Hetman
3aaefdf23a
Hashmaps foreach ( #513 )
2020-07-06 11:29:56 +03:00
Ihromant
cf658cf57d
Simplification
2020-06-13 13:56:14 +03:00
Ihromant
0c15600700
Added missing methods to Optional and ArrayList
2020-06-13 13:56:14 +03:00
hsestupin
0639acca21
add static hashCode(i) method like in java.lang.Integer
2020-06-02 18:53:14 +03:00
Jörg Hohwiller
e610c13e69
add int constructor for Java9+ compatibility
2020-06-01 11:51:58 +03:00
Vladislav Gordievskiy
6892c4f0ca
Fix of exporting a wasm function for scala objects ( #498 ). Fix #497
...
Co-authored-by: VGORDIEVSKII <vgordievskii@luxoft.com>
2020-05-18 10:08:28 +03:00
Alexey Andreev
862e9b846f
Exclude all classes from underlying JDK
2020-05-14 16:59:21 +03:00
Alexey Andreev
9f823ee450
Minor improvements to time zone support
2020-04-30 15:49:37 +03:00
Alexey Andreev
c7c47f63ee
Implement Math.nextDown, reimplement ulp and nextUp using bit operations
2020-04-30 14:19:50 +03:00
Alexey Andreev
d50e048ea4
Add Character.toTitleCase. More efficient implementation for Character.digit
2020-04-14 18:31:19 +03:00
Alexey Andreev
0c8d93acbc
Add DecimalFormat.setDecimalFormatSymbols
2020-04-14 16:40:45 +03:00
Alexey Andreev
1681aa5834
Implement some of the missing Timer methods
2020-04-14 16:10:17 +03:00
Alexey Andreev
ddf64870da
Implement some of the missing methods related to streams
2020-04-14 15:06:58 +03:00
Alexey Andreev
2bc9329cf8
Implement some of the missing methods in ThreadLocalRandom
2020-04-14 14:03:15 +03:00
Alexey Andreev
061bb859d5
Implement ThreadLocalRandom, implement some of missing Random methods
2020-04-14 12:07:56 +03:00
Alexey Andreev
a074906ea7
Implement AtomicReference
2020-04-14 09:25:20 +03:00
Adam J Ryan
e0fc5d834b
Add ability to fine tune transpiler class substitutions.
2020-04-01 19:32:34 +03:00
Jörg Hohwiller
b5237fb20e
Add Flow API for reactive programming ( #486 )
2020-03-13 11:28:36 +03:00
Jörg Hohwiller
c2d27fdb1a
Add support for String.isBlank() ( #482 )
2020-03-10 11:28:54 +03:00
Jörg Hohwiller
a45d1e0d07
Support for Thread.UncaughtExceptionHandler ( #483 )
2020-03-10 11:28:02 +03:00
Alexey Andreev
c1891a1908
Further work on decreasing generated code size
2020-03-03 12:17:39 +03:00
Alexey Andreev
ea1134d66b
Trying to reduce number of classes for which name is provided in their metadata
2020-03-02 16:36:09 +03:00
Alexey Andreev
a30702aa70
Add missing import
2020-03-02 11:22:21 +03:00
Kris Scheibe
160fa2b1fa
Java 9 collection factories ( #478 )
...
Adds the collection factories List.of(...), Set.of(...), Map.of(...) and Map.ofEntries(...) which were introduced to the JDK in Java 9
2020-03-02 11:20:43 +03:00
Jörg Hohwiller
60d0ad902c
added support for java.lang.reflect.Type
2020-03-02 11:15:24 +03:00
Dennis Bijlsma
cbbf7b5298
Add support for URL encode/decode methods added in Java 10.
2020-02-25 11:41:34 +03:00
Colorize
a97bda3c1a
Support Collection.removeIf ( #474 )
2020-02-17 11:23:24 +03:00
Alexey Andreev
fecdd6613a
Use tab character to indent stack traces
2020-02-14 10:39:50 +03:00
Alexey Andreev
f1d83ad9d3
Optimize empty collections
2020-02-10 17:11:50 +03:00
Alexey Andreev
fa198244dd
Fix bug in ArrayDeque implementation
2020-02-04 17:36:46 +03:00
Alexey Andreev
afa4e15846
Trying to fix #460
...
Actually, could not reproduce this, added some tests (they passed on initial version).
2020-01-27 16:03:51 +03:00
Colorize
c30e2d3c24
Collection spliterator that does not depend on how the list implementation implements spliterator()
2020-01-27 15:35:18 +03:00
adamjryan
34aed76714
Add write replace method to lambdas that implement java.io.Serializable ( #453 )
...
Add write replace method to lambdas that implement java.io.Serializable
* Peripheral java library classes added as part of the toString method
of SerializedLambda to align functionality with the standard library.
* Test added that checks the SerializedLambda can be returned and that
it is populated with the correct values including it's toString method.
2020-01-15 11:11:48 +03:00
Adam J Ryan
42cd4c7cb4
Missing (un)boxing for long values in reflection method value marshalling.
2020-01-12 11:01:22 +03:00
Alexey Andreev
e064457fe7
Fix issues in Spliterators code
2019-12-09 11:53:40 +03:00
Colorize
dd255f9da0
Extend the class library with the part of Spliterators that is used by Google Guava ( #443 )
...
Add class library support for the part of Spliterators that is used by Google Guava.
2019-12-09 11:29:16 +03:00
Alexey Andreev
477d8b2d69
Fix Stream.collect. Add some of the missing functional interfaces
2019-12-04 15:50:10 +03:00
Alexey Andreev
4b3a8e757b
Reduce size of a Kotlin program that uses lightweight reflection
2019-12-03 20:57:31 +03:00
Alexey Andreev
fed75ef0cf
Reduce size of minimal application
2019-12-03 20:56:53 +03:00
Alexey Andreev
16f4d2571b
Support generations in GC
2019-12-03 12:10:55 +03:00
Alexey Andreev
780a3a8cca
Fix parsing dates without delimiters using SimpleDateFormat
2019-11-18 13:58:32 +03:00
Alexey Andreev
6a196c2f32
Remove toString implementation from Kotlin lambda base class since it uses unsupported reflection API
2019-11-18 13:19:22 +03:00
Colorize
560627bfca
Support for System.getenv().
...
This will always return that the environment variables does not exist, it is purely intended for compatibility with applications that check for optional environment variables (in those cases the TeaVM transpiler currently fails because the method does not exist).
2019-11-18 10:54:34 +03:00
Alexey Andreev
b090c2f47d
Refactor stream implementation and tests, fix some bugs
2019-11-08 19:30:21 +03:00
Alexander Gusakov
74ee848e0c
fix String#join, rm producing extra zero characters
2019-11-08 12:36:08 +03:00
Alexey Andreev
fb78377db8
Fix various issues reported by PVS Studio and LGTM
2019-10-31 14:36:37 +03:00
Alexey Andreev
6ed00f1af2
C/Wasm: fix heap corruption when GC hits on initializing stack trace of exception
2019-10-28 13:59:03 +03:00
Alexey Andreev
3b4cc43e79
C: add option to strip off information about call site locations.
...
This decreases executable size significantly. However, this produces
obfuscated stack traces which can be deobfuscated using JSON symbol table.
2019-10-23 17:34:23 +03:00
Alexey Andreev
c78874f426
C/Wasm: don't generate names for classes when possible
2019-10-23 14:11:24 +03:00
Alexey Andreev
8a91605c56
Add support for Class.getCanonicalName/getEnclosingClass
2019-10-18 15:10:16 +03:00
Davin McCall
28212f70ff
Correct the calculation in Math.hypot().
2019-10-17 16:48:50 +03:00
Alexey Andreev
8038f90fd8
Support new format of debug information in C and WASM
...
This allows to keep proper stack traces in FULL optimization mode,
when aggressive inlining is applied
2019-10-15 11:47:40 +03:00
Artem Godin
e46f204b4e
#431 : Add support for char annotation methods
...
Fixes #431
2019-10-14 14:06:21 +03:00
Colorize
abf90e8b5f
Fill in some gaps in the class library ( #429 )
...
* Fill in some gaps in the class library:
- the inner classes are marked as public in the JDK, but not in TeaVM's version
- added Color/Dimension/Point, these are defined in AWT, but also accessed from elsewhere in the JDK
- added UUID emulation
- added more logging classes so that applications don't immediately crash when trying to initialize logging
2019-10-10 11:42:20 +03:00
Alexey Andreev
6f50eefaf9
JS: add null check in strict mode
2019-10-07 16:55:30 +03:00
Alexey Andreev
bffb50f0cd
Implement array bounds checking in JavaScript
2019-10-07 16:55:30 +03:00
Matt McHenry
2d1bc6c956
mark certain features of Date unsupported on wasm
...
this gives much clearer feedback, at build time rather than runtime,
when attempting to use TeaVM with code that uses these operations.
2019-10-06 21:10:40 +03:00
Alexey Andreev
8749ecd0d1
C: fix System.nanoTime
2019-10-01 18:45:58 +03:00
Alexey Andreev
fe3436f053
C/Wasm: resizable heap
2019-09-24 17:48:17 +03:00
Alexey Andreev
f0b6cc2f30
Update version to 0.7.0
2019-09-24 16:26:14 +03:00
Alexey Andreev
a53f59e147
Fix build
2019-09-05 17:19:40 +03:00
Alexey Andreev
5b739238c2
More efficient filesystem implementation
2019-09-05 17:11:43 +03:00
Alexey Andreev
f47644d890
Move tool that generates JCL comparison into a separate project. Make this tool compatible with JRE9+
2019-09-05 14:16:11 +03:00
Alexey Andreev
e33cc5a807
C: split runtime into smaller parts
2019-09-03 14:01:30 +03:00
Alexey Andreev
75e38c51de
Add support for some methods in NIO buffers from Java 11
2019-08-21 13:56:39 +03:00
Alexey Andreev
1d19562c49
Fix Double.parseDouble and Float.parseFloat for some cases of illegal input
2019-08-12 16:38:52 +03:00
Alexey Andreev
c5334e344d
C: add setting to generate code with lots of assertions
2019-08-12 15:12:48 +03:00
Alexey Andreev
0fdf58cbd8
C: implement heap defragmentation in GC
2019-08-12 15:12:27 +03:00
Alexey Andreev
ec9fe5471d
Fix Long.bitCount. Fix #413
2019-08-07 18:48:06 +03:00
Alexey Andreev
2d3d92f9a8
Update versions of Unicode data, CLDR, tzdata, asm and Rhino
2019-07-27 22:10:56 +03:00
Alexey Andreev
b5f64fd11a
Fix bug in ThreadLocal
2019-07-25 11:14:04 +03:00
Alexey Andreev
90e00f7eb4
C: add option to support exceptions via setjmp/longjmp
2019-07-22 16:53:47 +03:00
Alexey Andreev
9ad0ddd891
C: fix File.mkdirs() on Windows
2019-07-11 18:06:15 +03:00
Alexey Andreev
62b3c68a5b
Don't report compile-0time error when there's possible way to reach suspension point. Generate runtime error instead.
2019-06-22 23:30:05 +03:00
Alexey Andreev
a65f8fdcd9
C: reduce number of warnings, redirect console to debugger in Windows
2019-06-20 15:06:15 +03:00
Alexey Andreev
9642eeec0a
C: support passing strings as char16_t*, fix bugs under msvc
2019-06-17 15:16:44 +03:00
Alexey Andreev
d01ba897c0
Fix build
2019-06-14 15:38:44 +03:00
Alexey Andreev
6e71fa7e87
C: implement file IO in Windows
2019-06-14 15:32:20 +03:00
Alexey Andreev
fe6e796637
Fix bug in ArrayDeque
2019-06-11 16:21:39 +03:00
Alexey Andreev
c8676f7ffe
JavaScript: fix filesystem issue
2019-05-31 17:36:32 +03:00
Alexey Andreev
91de1f6ca7
C: implement native file system
2019-05-31 15:05:23 +03:00
Alexey Andreev
6c9393548a
JS: fix generation of Class.getDeclaringClass
2019-05-30 00:07:12 +03:00
Alexey Andreev
336590314c
C: print stack trace in Logger class
2019-05-27 10:43:13 +03:00
Alexey Andreev
3364022313
classlib: add URLEncoder and URLDecoder
2019-05-24 17:34:33 +03:00
Alexey Andreev
8b3df6f730
C: fix bugs, introduce new virtual table builder
2019-05-23 15:18:25 +03:00
Alexey Andreev
7f875aa568
C: support methods of Date class
2019-05-21 15:17:58 +03:00
Alexey Andreev
2eafb902f4
C: support weak references
2019-05-17 17:40:45 +03:00
Alexey Andreev
86b5daa3cf
Add annotations to mark classes and methods supported on some platforms
2019-05-17 11:44:35 +03:00
Alexey Andreev
3d96616761
JS: reduce precision of float constants
2019-05-13 17:39:18 +03:00
Alexey Andreev
da22256c1f
C: compile into multiple .c and .h files
2019-05-08 17:36:46 +03:00
Alexey Andreev
093b506c9a
Improve resolution of System.nanoTime
2019-04-29 16:24:07 +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
cbc8d3f638
C backend: bugfixes
2019-04-22 19:03:37 +03:00
Alexey Andreev
ec8bae1d40
C: fix bugs in RTTI. Support args parameter of main method
2019-04-04 18:34:30 +03:00
Dylan
d18d50a823
Add missing forEach to TIterable
2019-04-02 11:28:11 +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
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
731beb5cd5
Fix bugs in threading in C backend
2019-03-13 18:47:30 +03:00
Alexey Andreev
abdd9b3270
C backend: support coroutines
2019-03-10 14:04:04 +03:00
Alexey Andreev
2a1aca98da
Use shared ReferenceCache between different stages of compilation
2019-03-05 19:32:50 +03:00
Alexey Andreev
2c40c7d56e
Trying to decrease compiler memory consumption
2019-02-25 18:31:34 +03:00
Alexey Andreev
463f24506d
Fix Throwable.toString
2019-02-13 19:30:14 +03:00
Alexey Andreev
1214534671
Reduce unnecessary usages of T-prefixed classes in classlib
2019-02-13 15:12:50 +03:00
Alexey Andreev
4de1c51e1a
Improve inliner: use simlified heuristics in advanced optimization mode, remove methods that were fully inlined
2019-02-12 19:30:57 +03:00
Alexey Andreev
1b2c47407f
Place classes to a single object in development server to improve debugger performance
2019-02-07 16:29:55 +03:00
Alexey Andreev
95a3a30a6e
Fix html4j tests
2019-01-31 19:20:14 +03:00
Alexey Andreev
1dd379551c
Produce less names in top level scope in dev server mode in order to improve debugging performance in Chrome
2019-01-23 13:28:39 +03:00
Alexey Andreev
48227b24a0
Fix bootstrap mode
2019-01-20 17:50:46 +03:00
Alexey Andreev
f589b0035a
Decrease memory consumption
2018-12-29 19:02:03 +03:00
Alexey Andreev
6900fd587c
Fix Float/Double.parse for strings like '123.'
2018-12-24 18:16:05 +03:00
Alexey Andreev
4ffe74296d
Limit max line size of generated JS code
2018-12-21 14:28:30 +03:00
Alexey Andreev
d7d4dc1571
Add IDEA run configuration that runs dev server
2018-12-16 20:42:21 +03:00
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