JVM_IR KT-45103 optimize direct invoke for lambdas and callable refs
This commit is contained in:
committed by
teamcityserver
parent
bfb1a06f3d
commit
851980e36f
+9
-5
@@ -1,6 +1,7 @@
|
||||
fun test() {
|
||||
{
|
||||
{}()
|
||||
val lam = {}
|
||||
lam()
|
||||
}()
|
||||
}
|
||||
|
||||
@@ -11,16 +12,19 @@ inline fun ifun(s: () -> Unit) {
|
||||
fun test2() {
|
||||
var z = 1;
|
||||
ifun {
|
||||
{ z = 2 }()
|
||||
val lam = { z = 2 }
|
||||
lam()
|
||||
}
|
||||
}
|
||||
|
||||
// 1 class DeleteClassOnTransformationKt\$test\$1\$1
|
||||
|
||||
// JVM_TEMPLATES:
|
||||
// 1 class DeleteClassOnTransformationKt\$test\$1 extends
|
||||
// 1 class DeleteClassOnTransformationKt\$test\$1\$lam\$1 extends
|
||||
// 0 class DeleteClassOnTransformationKt\$test2\$1\$1
|
||||
// 1 class DeleteClassOnTransformationKt\$test2\$\$inlined\$ifun\$lambda\$1
|
||||
|
||||
// JVM_IR_TEMPLATES:
|
||||
// 1 class DeleteClassOnTransformationKt\$test2\$1\$1
|
||||
// 0 class DeleteClassOnTransformationKt\$test2\$\$inlined
|
||||
// 3 final class
|
||||
// 1 class DeleteClassOnTransformationKt\$test\$1\$lam\$1
|
||||
// 1 class DeleteClassOnTransformationKt\$test2\$1\$lam\$1
|
||||
|
||||
Reference in New Issue
Block a user