diff --git a/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/metadata/KlibMetadataIncrementalSerializer.kt b/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/metadata/KlibMetadataIncrementalSerializer.kt index b16b06f02db..9236ce5d1d9 100644 --- a/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/metadata/KlibMetadataIncrementalSerializer.kt +++ b/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/metadata/KlibMetadataIncrementalSerializer.kt @@ -11,7 +11,6 @@ import org.jetbrains.kotlin.descriptors.CallableDescriptor import org.jetbrains.kotlin.descriptors.ClassifierDescriptor import org.jetbrains.kotlin.descriptors.DeclarationDescriptor import org.jetbrains.kotlin.descriptors.ModuleDescriptor -import org.jetbrains.kotlin.library.SerializedMetadata import org.jetbrains.kotlin.library.metadata.KlibMetadataVersion import org.jetbrains.kotlin.metadata.ProtoBuf import org.jetbrains.kotlin.name.FqName @@ -70,18 +69,3 @@ class KlibMetadataIncrementalSerializer( override val TOP_LEVEL_DECLARATION_COUNT_PER_FILE = null override val TOP_LEVEL_CLASS_DECLARATION_COUNT_PER_FILE = null } - -fun makeSerializedKlibMetadata( - fragments: Map>, - header: ByteArray -): SerializedMetadata { - val fragmentNames = mutableListOf() - val fragmentParts = mutableListOf>() - - for ((fqName, fragment) in fragments.entries.sortedBy { it.key }) { - fragmentNames += fqName - fragmentParts += fragment - } - - return SerializedMetadata(header, fragmentParts, fragmentNames) -} \ No newline at end of file diff --git a/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/serializeModuleIntoKlib.kt b/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/serializeModuleIntoKlib.kt index 887e68b6d63..09cd253fe3a 100644 --- a/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/serializeModuleIntoKlib.kt +++ b/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/serializeModuleIntoKlib.kt @@ -10,7 +10,6 @@ import org.jetbrains.kotlin.KtIoFileSourceFile import org.jetbrains.kotlin.KtPsiSourceFile import org.jetbrains.kotlin.KtSourceFile import org.jetbrains.kotlin.KtVirtualFileSourceFile -import org.jetbrains.kotlin.backend.common.serialization.metadata.makeSerializedKlibMetadata import org.jetbrains.kotlin.backend.common.serialization.metadata.serializeKlibHeader import org.jetbrains.kotlin.config.CommonConfigurationKeys import org.jetbrains.kotlin.config.CompilerConfiguration @@ -181,14 +180,18 @@ fun serializeModuleIntoKlib( processKlibHeader(header) - val serializedMetadata = makeSerializedKlibMetadata( - fragments = compiledKotlinFiles - .groupBy { it.fqName } - .map { (fqn, data) -> - fqn to data.sortedBy { it.path }.map { it.metadata } - } - .toMap(), - header = header, + val (fragmentNames, fragmentParts) = compiledKotlinFiles + .groupBy { it.fqName } + .map { (fqn, data) -> + fqn to data.sortedBy { it.path }.map { it.metadata } + } + .sortedBy { it.first } + .unzip() + + val serializedMetadata = SerializedMetadata( + module = header, + fragments = fragmentParts, + fragmentNames = fragmentNames ) return SerializerOutput(