JVM_IR KT-45103 optimize direct invoke for lambdas and callable refs

This commit is contained in:
Dmitry Petrov
2021-04-26 17:17:25 +03:00
committed by teamcityserver
parent bfb1a06f3d
commit 851980e36f
124 changed files with 1340 additions and 324 deletions
@@ -1,6 +1,7 @@
class A {
fun <T> eval(f: () -> T) = f()
private var foo = 1;
class A {
private var foo = 1
fun `access$getFoo$p`(a: A): Int = 1
fun `access$setFoo$p`(a: A, d: Int) {}
@@ -21,10 +22,10 @@ class A {
get() = field
fun test() {
{
foo = 2;
eval {
foo = 2
foo
}()
}
}
fun `access$getFoo$p`(p: A.Companion): Int = 1
@@ -32,9 +33,9 @@ class A {
}
fun test() {
{
eval {
foo = 2;
foo + bar
}()
}
}
}