Georgy Bronnikov
c3f4fcde0b
JVM_IR: compute signatures for fake overrides of Java fields
2021-07-14 21:20:47 +03:00
Georgy Bronnikov
8c3386b607
IR: set file in declarationTable when serializing IR
2021-07-14 21:20:46 +03:00
Georgy Bronnikov
05a42b8cd5
IR: handle CompositeSignature in DescriptorByIdSignatureFinder
2021-07-14 21:20:45 +03:00
Georgy Bronnikov
da946e464f
Fix compilation after rebase: add debugInfo to JvmIr.proto
2021-07-14 21:20:43 +03:00
Georgy Bronnikov
f4d358069c
Fixes after rebase, not related to IrLibraryFile
2021-07-14 21:20:42 +03:00
Georgy Bronnikov
08b950fc2a
JVM_IR: Supply fake file name to signatures of file local declarations
2021-07-14 21:20:41 +03:00
Georgy Bronnikov
225705a237
IR: do not serialize nonlocal initializers in inline-only mode
2021-07-14 21:20:40 +03:00
Georgy Bronnikov
28bff2ba4f
JVM_IR: add test for calling monitorEnter/Exit from serialized code.
2021-07-14 21:20:38 +03:00
Georgy Bronnikov
dffb22de9d
JVM_IR: avoid duplication in declaration lists during deserialization
2021-07-14 21:20:36 +03:00
Georgy Bronnikov
fa4efd3303
JVM_IR: fix deserialization of Java static field symbols
2021-07-14 21:20:35 +03:00
Georgy Bronnikov
955ee07517
IR: compute signature for scripts
2021-07-14 21:20:33 +03:00
Georgy Bronnikov
9d0c6fb157
IR: remove an overly optimistic assert
2021-07-14 21:20:32 +03:00
Georgy Bronnikov
c3a94e1e62
FIR: adapt to changes in IR interface
...
JvmGeneratorExtensionsImpl, JvmIrCodegenFactory need new arguments.
2021-07-14 21:20:31 +03:00
Georgy Bronnikov
20b76d4149
JVM_IR: reorganize initialization of JvmGeneratorExtensionsImpl
...
CachedFields are now created at initialization.
Therefore we need CompilerConfiguration as a constructor parameter.
2021-07-14 21:20:30 +03:00
Georgy Bronnikov
7bbc04b6a2
JVM_IR: reconstruct fake overrides after IR deserialization.
...
We need to keep track of local signatures for deserialized symbols.
2021-07-14 21:20:29 +03:00
Georgy Bronnikov
a63cc95a2a
JVM_IR: untangle backend.jvm and serialization.jvm (again)
2021-07-14 21:20:28 +03:00
Georgy Bronnikov
1c4466951f
IR: a flag to GeneratorExtensions to control IR deserialization
...
There is no need to search for IR embedded in toplevel classes when none
is expected (in npon-JVM backends or when -Xserialize-ir is not set).
2021-07-14 21:20:27 +03:00
Georgy Bronnikov
ec1c97c684
JVM_IR: register builtin annotation constructors in SymbolTable
...
When deserializing IR, these annotations need to be visible.
2021-07-14 21:20:26 +03:00
Georgy Bronnikov
8d15a1d13d
JVM_IR: use signatures in AbstractIrSerializeCompileKotlinAgainstInlineKotlinTest
...
Using signatures allows us to identify calls from a new module to an old
one.
2021-07-14 21:20:24 +03:00
Georgy Bronnikov
49619cda48
Restore Native compilation
2021-07-14 21:20:23 +03:00
Georgy Bronnikov
931733f8cc
JVM_IR: deal with JvmStatic in imported IR
2021-07-14 21:20:22 +03:00
Georgy Bronnikov
96ce124268
JVM_IR: serialize fake overrides in IR
2021-07-14 21:20:21 +03:00
Georgy Bronnikov
2d3a558d50
JVM_IR: normalize visibility before serializing
2021-07-14 21:20:20 +03:00
Georgy Bronnikov
a328ebc889
JVM_IR: extract cached fields into a separate class
2021-07-14 21:20:18 +03:00
Georgy Bronnikov
50068607b9
JVM_IR: call serializeIr from a phase
...
This circumvents the need to run expect/actual resolution on
deserialized IR.
2021-07-14 21:20:17 +03:00
Georgy Bronnikov
0d5fe0b029
JVM_IR: load serialized data for every affected property of IrLazyFunction
2021-07-14 21:20:16 +03:00
Georgy Bronnikov
f4e6eb00fd
JVM_IR: generate unbound symbols after deserializing IR
2021-07-14 21:20:15 +03:00
Georgy Bronnikov
6b80c00cc6
JVM_IR: deserialize lazy declarations
2021-07-14 21:20:14 +03:00
Georgy Bronnikov
ad8892f71f
JVM_IR: test that inline functions have deserialized bodies
2021-07-14 21:20:12 +03:00
Georgy Bronnikov
7b52a8c07d
JVM_IR: deal with facade classes when computing signature
2021-07-14 21:20:11 +03:00
Georgy Bronnikov
97d3eda23c
JVM_IR: run Kotlin against Kotlin tests with serialization
2021-07-14 21:20:10 +03:00
Georgy Bronnikov
ab3d6490ed
JVM_IR: save auxTables as byte strings
2021-07-14 21:20:09 +03:00
Georgy Bronnikov
7dbdb311e1
JVM_IR: read serialized IR from annotation
2021-07-14 21:20:08 +03:00
Georgy Bronnikov
baaecaa052
JVM_IR: write serialized IR to an annotation
2021-07-14 21:20:06 +03:00
Georgy Bronnikov
b177779b66
IR: compute signatures for fields
2021-07-14 21:20:05 +03:00
Georgy Bronnikov
b2617199bc
JVM_IR: call serialization for IR.
...
Serializer for IR is called when -Xserialize-ir flag is set.
2021-07-14 21:20:04 +03:00
Georgy Bronnikov
9efd0d7589
JVM_IR: JvmIrSerializer
2021-07-14 21:20:02 +03:00
Mikhail Glukhikh
113d2653aa
Drop deprecated -Xexperimental flag from compiler and tests
2021-07-14 21:18:23 +03:00
anastasiia.spaseeva
cbcec8d624
Add changelog for 1.5.21
2021-07-14 19:37:14 +03:00
Margarita Bobova
ed3326fd83
Add changelog for 1.5.20
2021-07-14 19:37:12 +03:00
Nikita Bobko
bf6718e0a5
Fix compilation in kotlin-ide
2021-07-14 17:17:19 +02:00
Ilya Goncharov
047041dc6e
[Gradle, JS] Await worker which builds cache
2021-07-14 14:46:04 +00:00
Pavel Kunyavskiy
92789984e0
[K/N] Make SafeContinuation thread-safe
2021-07-14 09:03:31 +00:00
pyos
07cb3a5ff8
JVM: do not reify methods of objects in lambdas
...
All type parameters used in them are not from the inline function
anyway.
2021-07-14 10:11:05 +02:00
pyos
717cf2066a
JVM: remove more redundant properties from LambdaInfo
2021-07-14 10:11:05 +02:00
pyos
c1c56ca388
JVM: refactor extraction of default inline lambdas a bit more
2021-07-14 10:11:05 +02:00
pyos
91cf1a1a4d
JVM: remove a redundant DefaultLambda field
...
and add a comment explaining one branch of the inliner... Better than
nothing, I guess?
2021-07-14 10:11:05 +02:00
pyos
100d2d629c
JVM: inline default lambda coercions from bridge invoke
...
The type of the default lambda may be a subtype of the parameter type,
so we can't really generate our own coercions at all as we don't know
the precise Kotlin type of the `invoke` method.
2021-07-14 10:11:05 +02:00
pyos
d0b9c4ae6b
JVM: generalize getMethodNode
...
to allow matching by arbitrary predicates.
2021-07-14 10:11:05 +02:00
Alexander Likhachev
f986591ba9
[Build] Suppress ivy url senseless comparison warning
...
It's marked as not null in Gradle, but it's still possible to declare Ivy repository with null url which leads to GeneralKotlin2JsGradlePluginIT#testJsBothModeWithTests test false fail (cache redirector script is used in Gradle integration tests)
2021-07-14 10:59:14 +03:00