JVM IR: initialize enum entries without invokedynamic

#KT-57316 Fixed
This commit is contained in:
Alexander Udalov
2023-03-21 01:13:41 +01:00
committed by Space Team
parent 9c2c11f7e9
commit 562b27db4e
21 changed files with 31 additions and 95 deletions
@@ -11,7 +11,6 @@ public final enum class E {
private synthetic final static field $ENTRIES: kotlin.enums.EnumEntries
private synthetic final static field $VALUES: E[]
public final enum static field X: E
private synthetic final static method $entries(): E[]
private synthetic final static method $values(): E[]
static method <clinit>(): void
private method <init>(p0: java.lang.String, p1: int): void
@@ -11,7 +11,6 @@ public final enum class E {
private synthetic final static field $ENTRIES: kotlin.enums.EnumEntries
private synthetic final static field $VALUES: E[]
public final enum static field X: E
private synthetic final static method $entries(): E[]
private synthetic final static method $values(): E[]
static method <clinit>(): void
private method <init>(p0: java.lang.String, p1: int): void
@@ -16,7 +16,6 @@ public final enum class E {
private synthetic final static field $VALUES: E[]
public final enum static field NOT_OK: E
public final enum static field OK: E
private synthetic final static method $entries(): E[]
private synthetic final static method $values(): E[]
static method <clinit>(): void
private method <init>(p0: java.lang.String, p1: int): void
@@ -25,7 +25,6 @@ public final enum class E {
private synthetic final static field $VALUES: E[]
public final enum static field NOT_OK: E
public final enum static field OK: E
private synthetic final static method $entries(): E[]
private synthetic final static method $values(): E[]
static method <clinit>(): void
private method <init>(p0: java.lang.String, p1: int): void
@@ -13,7 +13,6 @@ public final enum class E {
private synthetic final static field $VALUES: E[]
public final static @org.jetbrains.annotations.NotNull field Companion: E$Companion
public final enum static field X: E
private synthetic final static method $entries(): E[]
private synthetic final static method $values(): E[]
static method <clinit>(): void
private method <init>(p0: java.lang.String, p1: int): void
@@ -4,7 +4,7 @@
// CHECK_BYTECODE_TEXT
// JVM_IR_TEMPLATES
// 2 java/lang/invoke/LambdaMetafactory
// 1 java/lang/invoke/LambdaMetafactory
// FILE: enumValues.kt
enum class ABC(val x: String = "") {
@@ -4,7 +4,7 @@
// CHECK_BYTECODE_TEXT
// JVM_IR_TEMPLATES
// 2 java/lang/invoke/LambdaMetafactory
// 1 java/lang/invoke/LambdaMetafactory
// FILE: enumValues.kt
enum class ABC(val x: String = "") {