Dmitry Petrov
f4dd75e769
JVM_IR don't inline temporary val for 'when' subject
2021-08-24 18:56:21 +03:00
Dmitry Petrov
f4a1e27124
JVM optimize unneeded temporary vals
2021-08-24 18:56:20 +03:00
Dmitry Petrov
d8f6d82411
JVM don't optimize temporary vals in old back-end
2021-08-24 18:56:19 +03:00
Dmitry Petrov
568958492a
JVM_IR optimize temporary vals initialized with other vals
2021-08-24 18:56:18 +03:00
Dmitry Petrov
939f25333e
JVM update testData
2021-08-24 18:56:17 +03:00
Dmitry Petrov
fbcb07e3a2
JVM don't siplify CFG in TemporaryVariablesEliminationTransformer
2021-08-24 18:56:16 +03:00
Dmitry Petrov
7e943ab757
JVM don't optimize out starting ASTORE of TCB handler
2021-08-24 18:56:14 +03:00
Dmitry Petrov
dcbc2ea2b3
JVM infer temporary vals from bytecode
2021-08-24 18:56:13 +03:00
Dmitry Petrov
a4e299b8e1
JVM_IR don't evaluate static receiver if it's a variable
2021-08-24 18:56:12 +03:00
Dmitry Petrov
041773fd25
JVM optimize out temporary variables in bytecode
2021-08-24 18:56:11 +03:00
Dmitry Petrov
bddfd086f6
JVM minor reuse updateMaxStack in CoroutineTransformerMethodVisitor
2021-08-24 18:56:10 +03:00
Dmitry Petrov
7b3d5b7863
JVM minor: extract base class from FixStackInterpreter
2021-08-24 18:56:09 +03:00
Alexander Udalov
4f29c113b7
Remove KotlinCompilerVersion.IS_PRE_RELEASE
...
Now, milestones of major Kotlin releases (e.g. 1.6.0-M1) will NOT
generate prerelease binaries anymore.
The reason for that is it's proven to be quite a complicated process to
turn on IR_PRE_RELEASE after the release is branched, perform double
bootstrap and fix tests, and then do it again in reverse just before
release. With the new release cadence, we don't have that much time to
do it and verify that everything works as intended.
Note that this only removes the "global" prerelease flag. Compiler will
still generate prerelease binaries if a non-stable language version is
used. For example, Kotlin 1.6.0-M1 with `-language-version 1.7` will
generate prerelease binaries.
2021-08-24 16:23:42 +02:00
Alexander Udalov
6de823396b
Minor, fix Apache license template text
2021-08-24 16:23:05 +02:00
nataliya.valtman
260d301100
Report compiler performance data to ES
2021-08-24 16:33:13 +03:00
nataliya.valtman
7357aeb1c9
Add output size to ES metrics
2021-08-24 16:33:12 +03:00
Stanislav Erokhin
9becb2c468
Add compiler performance metrics
...
WIP
2021-08-24 16:33:12 +03:00
nataliya.valtman
64da19cb2d
Add Artifact Transform stat into ES
2021-08-24 16:33:11 +03:00
Sergey Bogolepov
e9e986dd61
Adjust CommonizerIT to MinGW cross-compilation
2021-08-24 19:14:56 +07:00
Ilya Gorbunov
d726b00c33
stdlib-docs: Download dokka from teamcity
2021-08-24 10:48:35 +00:00
Ilya Gorbunov
64021f65e4
stdlib-docs: Allow to set dokka_version with property
2021-08-24 10:48:34 +00:00
Ilya Gorbunov
aba0c715bd
stdlib-docs: dokka can't stand windows path separator in sourcelink path
2021-08-24 10:48:34 +00:00
Ilya Gorbunov
3e82a20f16
stdlib-docs: update ant version
2021-08-24 10:48:34 +00:00
Alexander Udalov
75b8d44be5
Minor, fix some typos/errors in test-infrastructure ReadMe
2021-08-24 12:28:31 +02:00
Alexander Udalov
8d4f26cf84
IR: use inlineClassRepresentation in getInlineClassUnderlyingType
...
Looking for the primary constructor manually doesn't work if it's
private in the other module on JVM, because private declarations are
skipped in IrLazyClass.
2021-08-24 12:28:31 +02:00
Alexander Udalov
66dbd91851
IR: minor, remove unused 'isInlined'
2021-08-24 12:28:31 +02:00
Alexander Udalov
8b44b69982
Minor, add definitelyNonNull type flag in metadata as a comment
2021-08-24 12:28:31 +02:00
Svyatoslav Scherbina
5e789f86ee
Support Native binary options in Gradle
...
Both project properties and per-binary DSL are available.
2021-08-24 09:36:24 +00:00
Svyatoslav Scherbina
9877a7271a
Native: use binary options machinery for memory model
...
Old compiler flag (-memory-model) will work too.
2021-08-24 09:36:23 +00:00
Svyatoslav Scherbina
ee3663afa4
Native: use binary options machinery for runtime assertions mode
2021-08-24 09:36:23 +00:00
Svyatoslav Scherbina
7cc1ea8801
Native: introduce binary options machinery
2021-08-24 09:36:22 +00:00
Mikhail Glukhikh
18cc498763
Fix deprecated smart casts in sources (around KT-48101)
2021-08-24 12:32:30 +03:00
Mikhail Glukhikh
12726bde15
Deprecate smart cast on alien derived property #KT-48101 Fixed
2021-08-24 12:32:30 +03:00
Mikhail Glukhikh
3f8734f694
FIR: determine synthetic accessor modality more precisely
...
Related to KT-47542
2021-08-24 12:32:30 +03:00
Mikhail Glukhikh
bbb76aae3f
Provide more precise check for ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED
...
#KT-47542 Fixed
2021-08-24 12:32:30 +03:00
Svyatoslav Scherbina
7f12cda233
Native: quick fix lazy init order problem
...
Initialize main-thread-bound properties along with shared properties
^KT-48364 Fixed
2021-08-24 09:24:16 +00:00
Svyatoslav Scherbina
ff46a63ffa
Native: quick fix lazy init boxing issue
...
FileInitializersLowering shouldn't expect codegen to initialize field
statically if constant literal is going to be boxed
^KT-48364
2021-08-24 09:24:16 +00:00
Sergey Bogolepov
9dd8266bee
[K/N] Add trivial test for llvm.objc.clang.arc.use lowering
2021-08-24 10:19:33 +03:00
Sergey Bogolepov
690d0689a1
[K/N] Add ObjCARCContract LLVM pass.
2021-08-24 10:19:31 +03:00
Sergey Bogolepov
1eb960783a
Bump native version
...
The new version has MinGW enabled as cross-target.
2021-08-24 11:05:39 +07:00
Roman Artemev
22cd20781e
[JS IC] Support per-file invalidation in CLI
...
- now disabled
2021-08-24 01:09:18 +03:00
Roman Artemev
001d3d8bc2
[JS IC] Implement per-file cache invalidation algorithm
...
- track inline graph
- not finished yet, it's a POW
2021-08-24 01:09:18 +03:00
Roman Artemev
cccca56c18
[JS IC] Implement inline call graph tracker and inline hash computer
2021-08-24 01:09:17 +03:00
Roman Artemev
1f11aa00c0
[JS IC] Implement IC cache provider and consumer to access IC data
2021-08-24 01:09:16 +03:00
Roman Artemev
76690c081a
[KLIB] Provide required API for IC invalidation
2021-08-24 01:09:16 +03:00
Roman Artemev
4ad2572085
[JS IC] Delete only PIR related part of IC Cache, not the whole dir
2021-08-24 01:09:14 +03:00
Roman Artemev
03b66ab51e
[IR] Add API into IdSignature to filter inaccessible function in IC
2021-08-24 01:09:14 +03:00
Roman Artemev
35e16d2db6
[JS IC] Extract PIR cache IO into separate functions
2021-08-24 01:09:13 +03:00
Roman Artemev
7d8c86caf1
[KLIB] Add API to access file's part of data as ByteArray
...
It requires for computing fingerprint of IrFile in IC infra
2021-08-24 01:09:12 +03:00
Roman Artemev
e4c2d4937f
[KLIB] Extract signature deserialization into separate class
2021-08-24 01:09:11 +03:00