[KLIB] Implement new linker based on IdSignature
- Remove klib dependency on metadata and uniqID - Refactored proto format to make it more effective and compact -- Use special encoding for some types of data (coordinates, flags, types) -- Remove symbols table -- Use packed proto list if it is possible - Remove extension from metadata - Remove special ids for function interfaces - Fix klib IO - Fix incremental cache - General code clean up
This commit is contained in:
-2
@@ -13,7 +13,6 @@ import org.jetbrains.kotlin.descriptors.commonizer.*
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.Target
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.konan.NativeModuleForCommonization.DeserializedModule
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.konan.NativeModuleForCommonization.SyntheticModule
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.utils.EmptyDescriptorTable
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.utils.NativeFactories.DefaultDeserializedDescriptorFactory
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.utils.ResettableClockMark
|
||||
import org.jetbrains.kotlin.descriptors.commonizer.utils.createKotlinNativeForwardDeclarationsModule
|
||||
@@ -212,7 +211,6 @@ class NativeDistributionCommonizer(
|
||||
val serializer = KlibMetadataMonolithicSerializer(
|
||||
languageVersionSettings = LanguageVersionSettingsImpl.DEFAULT,
|
||||
metadataVersion = KlibMetadataVersion.INSTANCE,
|
||||
descriptorTable = EmptyDescriptorTable,
|
||||
skipExpects = false
|
||||
)
|
||||
|
||||
|
||||
-17
@@ -1,17 +0,0 @@
|
||||
/*
|
||||
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.descriptors.commonizer.utils
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.serialization.DescriptorTable
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
import org.jetbrains.kotlin.ir.util.UniqId
|
||||
|
||||
internal object EmptyDescriptorTable : DescriptorTable {
|
||||
private const val DEFAULT_UNIQ_ID_INDEX = 0L
|
||||
|
||||
override fun put(descriptor: DeclarationDescriptor, uniqId: UniqId) = error("unsupported")
|
||||
override fun get(descriptor: DeclarationDescriptor): Long = DEFAULT_UNIQ_ID_INDEX
|
||||
}
|
||||
Reference in New Issue
Block a user