Enable lightweight lambdas (aka invokedynamic) since 2.0
#KT-45375 Fixed #KT-58173 Open
This commit is contained in:
committed by
Space Team
parent
b1b33475fa
commit
3f034e8b67
Vendored
+19
@@ -0,0 +1,19 @@
|
||||
@kotlin.Metadata
|
||||
public final class B {
|
||||
// source: 'accessorForProtectedPropertyWithPrivateSetter.kt'
|
||||
public method <init>(): void
|
||||
private final static method test$lambda$0(p0: B): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method test(): kotlin.jvm.functions.Function0
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public class a/A {
|
||||
// source: 'a.kt'
|
||||
private @org.jetbrains.annotations.NotNull field vk: java.lang.String
|
||||
private @org.jetbrains.annotations.NotNull field vo: java.lang.String
|
||||
public method <init>(): void
|
||||
private final static method fk$lambda$0(p0: a.A): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method fk(): kotlin.jvm.functions.Function0
|
||||
protected final @org.jetbrains.annotations.NotNull method getVk(): java.lang.String
|
||||
protected final @org.jetbrains.annotations.NotNull method getVo(): java.lang.String
|
||||
}
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
@kotlin.Metadata
|
||||
public final class B$test$1 {
|
||||
// source: 'accessorForProtectedPropertyWithPrivateSetterInObjectLiteral.kt'
|
||||
enclosing method B.test()Ljava/lang/Object;
|
||||
synthetic final field this$0: B
|
||||
inner (anonymous) class B$test$1
|
||||
method <init>(p0: B): void
|
||||
public method toString(): java.lang.String
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class B {
|
||||
// source: 'accessorForProtectedPropertyWithPrivateSetterInObjectLiteral.kt'
|
||||
inner (anonymous) class B$test$1
|
||||
public method <init>(): void
|
||||
public synthetic final static method access$getVo(p0: B): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method test(): java.lang.Object
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public class a/A {
|
||||
// source: 'a.kt'
|
||||
private @org.jetbrains.annotations.NotNull field vk: java.lang.String
|
||||
private @org.jetbrains.annotations.NotNull field vo: java.lang.String
|
||||
public method <init>(): void
|
||||
private final static method fk$lambda$0(p0: a.A): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method fk(): kotlin.jvm.functions.Function0
|
||||
protected final @org.jetbrains.annotations.NotNull method getVk(): java.lang.String
|
||||
protected final @org.jetbrains.annotations.NotNull method getVo(): java.lang.String
|
||||
}
|
||||
compiler/testData/codegen/bytecodeListing/accessorsForProtectedStaticJavaFieldInOtherPackage.fir.txt
Vendored
+16
@@ -0,0 +1,16 @@
|
||||
@kotlin.Metadata
|
||||
public final class test/C {
|
||||
// source: 'C.kt'
|
||||
public method <init>(): void
|
||||
private final static method f$lambda$0(): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method f(): java.lang.String
|
||||
private final static method g$lambda$1(): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method g(): kotlin.jvm.functions.Function0
|
||||
public inner class A$B
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class test/CKt {
|
||||
// source: 'C.kt'
|
||||
public final static method eval(@org.jetbrains.annotations.NotNull p0: kotlin.jvm.functions.Function0): java.lang.Object
|
||||
}
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
@kotlin.Metadata
|
||||
public final class DP {
|
||||
// source: 'delegatedPropertiesInCompanionObject.kt'
|
||||
public method <init>(): void
|
||||
private final static method provideDelegate$lambda$0(): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method provideDelegate(@org.jetbrains.annotations.Nullable p0: java.lang.Object, @org.jetbrains.annotations.NotNull p1: kotlin.reflect.KProperty): kotlin.Lazy
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class H1$Companion {
|
||||
// source: 'delegatedPropertiesInCompanionObject.kt'
|
||||
synthetic final static field $$delegatedProperties: kotlin.reflect.KProperty[]
|
||||
static method <clinit>(): void
|
||||
private method <init>(): void
|
||||
public synthetic method <init>(p0: kotlin.jvm.internal.DefaultConstructorMarker): void
|
||||
public final @org.jetbrains.annotations.NotNull method getProperty(): java.lang.String
|
||||
public final inner class H1$Companion
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class H1 {
|
||||
// source: 'delegatedPropertiesInCompanionObject.kt'
|
||||
public final static @org.jetbrains.annotations.NotNull field Companion: H1$Companion
|
||||
private final static @org.jetbrains.annotations.NotNull field property$delegate: kotlin.Lazy
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
public synthetic final static method access$getProperty$delegate$cp(): kotlin.Lazy
|
||||
public final inner class H1$Companion
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class H2$Companion {
|
||||
// source: 'delegatedPropertiesInCompanionObject.kt'
|
||||
private method <init>(): void
|
||||
public synthetic method <init>(p0: kotlin.jvm.internal.DefaultConstructorMarker): void
|
||||
public final @org.jetbrains.annotations.NotNull method getProperty(): java.lang.String
|
||||
public final inner class H2$Companion
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class H2 {
|
||||
// source: 'delegatedPropertiesInCompanionObject.kt'
|
||||
public final static @org.jetbrains.annotations.NotNull field Companion: H2$Companion
|
||||
private final static @org.jetbrains.annotations.NotNull field property$delegate: kotlin.Lazy
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
public synthetic final static method access$getProperty$delegate$cp(): kotlin.Lazy
|
||||
private final static method property_delegate$lambda$0(): java.lang.String
|
||||
public final inner class H2$Companion
|
||||
}
|
||||
Vendored
+11
@@ -0,0 +1,11 @@
|
||||
@kotlin.Metadata
|
||||
final class FileClassWithPrivateDeclarationsOnly_afterKt {
|
||||
// source: 'fileClassWithPrivateDeclarationsOnly_after.kt'
|
||||
private final static @org.jetbrains.annotations.NotNull field a: kotlin.Unit
|
||||
private final static @org.jetbrains.annotations.NotNull field b$delegate: kotlin.Lazy
|
||||
static method <clinit>(): void
|
||||
private final static method b_delegate$lambda$0(): kotlin.Unit
|
||||
private final static method f(): void
|
||||
public final static @kotlin.internal.InlineOnly method g(): void
|
||||
private final static method getB(): kotlin.Unit
|
||||
}
|
||||
Vendored
+11
@@ -0,0 +1,11 @@
|
||||
@kotlin.Metadata
|
||||
public final class FileClassWithPrivateDeclarationsOnly_beforeKt {
|
||||
// source: 'fileClassWithPrivateDeclarationsOnly_before.kt'
|
||||
private final static @org.jetbrains.annotations.NotNull field a: kotlin.Unit
|
||||
private final static @org.jetbrains.annotations.NotNull field b$delegate: kotlin.Lazy
|
||||
static method <clinit>(): void
|
||||
private final static method b_delegate$lambda$0(): kotlin.Unit
|
||||
private final static method f(): void
|
||||
public final static @kotlin.internal.InlineOnly method g(): void
|
||||
private final static method getB(): kotlin.Unit
|
||||
}
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
@kotlin.Metadata
|
||||
public final class _2Kt$box$1$1$1$q$1 {
|
||||
// source: '2.kt'
|
||||
enclosing method _2Kt.box()V
|
||||
inner (anonymous) class _2Kt$box$1$1$1$q$1
|
||||
method <init>(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class _2Kt$box$1$1$p$1 {
|
||||
// source: '2.kt'
|
||||
enclosing method _2Kt.box()V
|
||||
inner (anonymous) class _2Kt$box$1$1$p$1
|
||||
method <init>(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class _2Kt {
|
||||
// source: '2.kt'
|
||||
inner (anonymous) class _2Kt$box$1$1$1$q$1
|
||||
inner (anonymous) class _2Kt$box$1$1$p$1
|
||||
private final static method box$lambda$2$lambda$1$lambda$0(p0: kotlin.jvm.internal.Ref$ObjectRef): kotlin.Unit
|
||||
private final static method box$lambda$2$lambda$1(p0: kotlin.jvm.internal.Ref$ObjectRef, p1: kotlin.jvm.internal.Ref$ObjectRef): kotlin.Unit
|
||||
public final static method box(): void
|
||||
public final static method eval(@org.jetbrains.annotations.NotNull p0: kotlin.jvm.functions.Function0): java.lang.Object
|
||||
public final inner class kotlin/jvm/internal/Ref$ObjectRef
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class test/_1Kt {
|
||||
// source: '1.kt'
|
||||
public final static method test(@org.jetbrains.annotations.NotNull p0: kotlin.jvm.functions.Function0): void
|
||||
}
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
@kotlin.Metadata
|
||||
public interface A {
|
||||
// source: 'lambdaInInitBlockNoPrimaryConstructor.kt'
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public interface B {
|
||||
// source: 'lambdaInInitBlockNoPrimaryConstructor.kt'
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class E {
|
||||
// source: 'lambdaInInitBlockNoPrimaryConstructor.kt'
|
||||
private final field irrelevantField: int
|
||||
public method <init>(@org.jetbrains.annotations.NotNull p0: A): void
|
||||
public method <init>(@org.jetbrains.annotations.NotNull p0: B): void
|
||||
private final static method _init_$lambda$0(): kotlin.Unit
|
||||
public final method getIrrelevantField(): int
|
||||
}
|
||||
compiler/testData/codegen/bytecodeListing/inline/enclosingInfo/lambdaInInnerClassConstructor.fir.txt
Vendored
+17
@@ -0,0 +1,17 @@
|
||||
@kotlin.Metadata
|
||||
public final class Outer$Inner {
|
||||
// source: 'lambdaInInnerClassConstructor.kt'
|
||||
private final @org.jetbrains.annotations.NotNull field lambda: kotlin.jvm.functions.Function0
|
||||
synthetic final field this$0: Outer
|
||||
public method <init>(p0: Outer): void
|
||||
public final @org.jetbrains.annotations.NotNull method getLambda(): kotlin.jvm.functions.Function0
|
||||
private final static method lambda$lambda$0(): kotlin.Unit
|
||||
public final inner class Outer$Inner
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class Outer {
|
||||
// source: 'lambdaInInnerClassConstructor.kt'
|
||||
public method <init>(): void
|
||||
public final inner class Outer$Inner
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
@kotlin.Metadata
|
||||
synthetic final class<null> test/PrivateInlineSamAdapterKt$sam$java_lang_Runnable$0 {
|
||||
// source: 'privateInlineSamAdapter.kt'
|
||||
<null> method <init>(p0: kotlin.jvm.functions.Function0): void
|
||||
public synthetic final <null> method run(): void
|
||||
enclosing class test/PrivateInlineSamAdapterKt
|
||||
private synthetic final field <null> function: kotlin.jvm.functions.Function0
|
||||
inner (anonymous) class test/PrivateInlineSamAdapterKt$sam$java_lang_Runnable$0
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class<null> test/PrivateInlineSamAdapterKt {
|
||||
// source: 'privateInlineSamAdapter.kt'
|
||||
private final static <null> method test$lambda$0(): kotlin.Unit
|
||||
public final static <null> method test(): void
|
||||
inner (anonymous) class test/PrivateInlineSamAdapterKt$sam$java_lang_Runnable$0
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
@kotlin.Metadata
|
||||
synthetic final class A$sam$java_lang_Runnable$0 {
|
||||
// source: 'reusedSamWrapperClasses.kt'
|
||||
enclosing class A
|
||||
private synthetic final field function: kotlin.jvm.functions.Function0
|
||||
inner (anonymous) class A$sam$java_lang_Runnable$0
|
||||
method <init>(p0: kotlin.jvm.functions.Function0): void
|
||||
public synthetic final method run(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class A {
|
||||
// source: 'reusedSamWrapperClasses.kt'
|
||||
inner (anonymous) class A$sam$java_lang_Runnable$0
|
||||
public method <init>(): void
|
||||
private final static method test1$lambda$0(): kotlin.Unit
|
||||
public final method test1(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class B {
|
||||
// source: 'reusedSamWrapperClasses.kt'
|
||||
inner (anonymous) class A$sam$java_lang_Runnable$0
|
||||
public method <init>(): void
|
||||
private final static method test2$lambda$0(): kotlin.Unit
|
||||
public final method test2(): void
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
@kotlin.Metadata
|
||||
synthetic final class<null> test/SamAdapterInInlineLambdaKt$sam$java_lang_Runnable$0 {
|
||||
// source: 'samAdapterInInlineLambda.kt'
|
||||
<null> method <init>(p0: kotlin.jvm.functions.Function0): void
|
||||
public synthetic final <null> method run(): void
|
||||
enclosing class test/SamAdapterInInlineLambdaKt
|
||||
private synthetic final field <null> function: kotlin.jvm.functions.Function0
|
||||
inner (anonymous) class test/SamAdapterInInlineLambdaKt$sam$java_lang_Runnable$0
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class<null> test/SamAdapterInInlineLambdaKt {
|
||||
// source: 'samAdapterInInlineLambda.kt'
|
||||
private final static <null> method test$lambda$0(): kotlin.Unit
|
||||
public final static <null> method test(): void
|
||||
inner (anonymous) class test/SamAdapterInInlineLambdaKt$sam$java_lang_Runnable$0
|
||||
}
|
||||
+57
@@ -0,0 +1,57 @@
|
||||
@kotlin.Metadata
|
||||
public final class A {
|
||||
// source: 'wrapperInlinedFromAnotherClass.kt'
|
||||
public method <init>(): void
|
||||
public final @org.jetbrains.annotations.NotNull method test1a(): java.lang.Runnable
|
||||
public final @org.jetbrains.annotations.NotNull method test1b(): java.lang.Runnable
|
||||
public final @org.jetbrains.annotations.NotNull method test2a(): java.lang.Runnable
|
||||
public final @org.jetbrains.annotations.NotNull method test2b(): java.lang.Runnable
|
||||
private final static method testRunnableSamCtor1$lambda$0(): kotlin.Unit
|
||||
public final @org.jetbrains.annotations.NotNull method testRunnableSamCtor1(): java.lang.Runnable
|
||||
private final static method testRunnableSamCtor2$lambda$1(): kotlin.Unit
|
||||
public final @org.jetbrains.annotations.NotNull method testRunnableSamCtor2(): java.lang.Runnable
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class B$runnable1$1 {
|
||||
// source: 'wrapperInlinedFromAnotherClass.kt'
|
||||
enclosing method B.runnable1()Ljava/lang/Runnable;
|
||||
public final static field INSTANCE: B$runnable1$1
|
||||
inner (anonymous) class B$runnable1$1
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
public final method run(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class B$runnable2$1 {
|
||||
// source: 'wrapperInlinedFromAnotherClass.kt'
|
||||
enclosing method B.runnable2()Ljava/lang/Runnable;
|
||||
public final static field INSTANCE: B$runnable2$1
|
||||
inner (anonymous) class B$runnable2$1
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
public final method run(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public synthetic final class B$sam$i$java_lang_Runnable$0 {
|
||||
// source: 'wrapperInlinedFromAnotherClass.kt'
|
||||
enclosing class B
|
||||
private synthetic final field function: kotlin.jvm.functions.Function0
|
||||
inner (anonymous) class B$sam$i$java_lang_Runnable$0
|
||||
public method <init>(p0: kotlin.jvm.functions.Function0): void
|
||||
public synthetic final method run(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class B {
|
||||
// source: 'wrapperInlinedFromAnotherClass.kt'
|
||||
inner (anonymous) class B$runnable1$1
|
||||
inner (anonymous) class B$runnable2$1
|
||||
inner (anonymous) class B$sam$i$java_lang_Runnable$0
|
||||
public method <init>(): void
|
||||
public final @org.jetbrains.annotations.NotNull method runnable1(): java.lang.Runnable
|
||||
public final @org.jetbrains.annotations.NotNull method runnable2(): java.lang.Runnable
|
||||
public final @org.jetbrains.annotations.NotNull method runnableSamCtor(@org.jetbrains.annotations.NotNull p0: kotlin.jvm.functions.Function0): java.lang.Runnable
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
@kotlin.Metadata
|
||||
public final class C$Companion {
|
||||
// source: 'strictfpFlag.kt'
|
||||
private method <init>(): void
|
||||
public synthetic method <init>(p0: kotlin.jvm.internal.DefaultConstructorMarker): void
|
||||
public final strict @kotlin.jvm.JvmStatic method testJvmStatic(): void
|
||||
public final inner class C$Companion
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class C {
|
||||
// source: 'strictfpFlag.kt'
|
||||
public final static @org.jetbrains.annotations.NotNull field Companion: C$Companion
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
private final static method lambda$lambda$0(p0: C): kotlin.Unit
|
||||
public final @org.jetbrains.annotations.NotNull method lambda(): kotlin.jvm.functions.Function0
|
||||
private final strict method testAccessor(): void
|
||||
public final strict static @kotlin.jvm.JvmStatic method testJvmStatic(): void
|
||||
public final inner class C$Companion
|
||||
}
|
||||
|
||||
@kotlin.jvm.JvmInline
|
||||
@kotlin.Metadata
|
||||
public final class IC {
|
||||
// source: 'strictfpFlag.kt'
|
||||
private final field x: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static method box-impl(p0: int): IC
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public final method getX(): int
|
||||
public method hashCode(): int
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public final strict static method testInlineClassFun-impl(p0: int): void
|
||||
public method toString(): java.lang.String
|
||||
public static method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class StrictfpFlagKt {
|
||||
// source: 'strictfpFlag.kt'
|
||||
public synthetic static method testJvmOverloads$default(p0: int, p1: int, p2: java.lang.Object): void
|
||||
public final static @kotlin.jvm.JvmOverloads method testJvmOverloads(): void
|
||||
public final strict static @kotlin.jvm.JvmOverloads method testJvmOverloads(p0: int): void
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
@kotlin.Metadata
|
||||
public final class C$Companion {
|
||||
// source: 'synchronizedFlag.kt'
|
||||
private method <init>(): void
|
||||
public synthetic method <init>(p0: kotlin.jvm.internal.DefaultConstructorMarker): void
|
||||
public synchronized final @kotlin.jvm.JvmStatic method testJvmStatic(): void
|
||||
public final inner class C$Companion
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class C {
|
||||
// source: 'synchronizedFlag.kt'
|
||||
public final static @org.jetbrains.annotations.NotNull field Companion: C$Companion
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
private final static method lambda$lambda$0(p0: C): kotlin.Unit
|
||||
public final @org.jetbrains.annotations.NotNull method lambda(): kotlin.jvm.functions.Function0
|
||||
private synchronized final method testAccessor(): void
|
||||
public synchronized final static @kotlin.jvm.JvmStatic method testJvmStatic(): void
|
||||
public final inner class C$Companion
|
||||
}
|
||||
|
||||
@kotlin.jvm.JvmInline
|
||||
@kotlin.Metadata
|
||||
public final class IC {
|
||||
// source: 'synchronizedFlag.kt'
|
||||
private final field x: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static method box-impl(p0: int): IC
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public final method getX(): int
|
||||
public method hashCode(): int
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public synchronized final static method testInlineClassFun-impl(p0: int): void
|
||||
public method toString(): java.lang.String
|
||||
public static method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class SynchronizedFlagKt {
|
||||
// source: 'synchronizedFlag.kt'
|
||||
public synthetic static method testJvmOverloads$default(p0: int, p1: int, p2: java.lang.Object): void
|
||||
public final static @kotlin.jvm.JvmOverloads method testJvmOverloads(): void
|
||||
public synchronized final static @kotlin.jvm.JvmOverloads method testJvmOverloads(p0: int): void
|
||||
}
|
||||
Reference in New Issue
Block a user