[JS IC] Simplify signatures, don't use GlobalScopeLocalDeclaration
This commit is contained in:
committed by
teamcityserver
parent
3d3c70141c
commit
a0449892b2
+1
-15
@@ -10,7 +10,6 @@ import org.jetbrains.kotlin.backend.common.serialization.DeclarationTable
|
|||||||
import org.jetbrains.kotlin.backend.common.serialization.signature.IdSignatureSerializer
|
import org.jetbrains.kotlin.backend.common.serialization.signature.IdSignatureSerializer
|
||||||
import org.jetbrains.kotlin.backend.common.serialization.signature.PublicIdSignatureComputer
|
import org.jetbrains.kotlin.backend.common.serialization.signature.PublicIdSignatureComputer
|
||||||
import org.jetbrains.kotlin.ir.IrBuiltIns
|
import org.jetbrains.kotlin.ir.IrBuiltIns
|
||||||
import org.jetbrains.kotlin.ir.IrElement
|
|
||||||
import org.jetbrains.kotlin.ir.backend.js.JsMapping
|
import org.jetbrains.kotlin.ir.backend.js.JsMapping
|
||||||
import org.jetbrains.kotlin.ir.backend.js.lower.serialization.ir.JsGlobalDeclarationTable
|
import org.jetbrains.kotlin.ir.backend.js.lower.serialization.ir.JsGlobalDeclarationTable
|
||||||
import org.jetbrains.kotlin.ir.backend.js.lower.serialization.ir.JsIrFileSerializer
|
import org.jetbrains.kotlin.ir.backend.js.lower.serialization.ir.JsIrFileSerializer
|
||||||
@@ -26,9 +25,6 @@ import org.jetbrains.kotlin.ir.util.IdSignature
|
|||||||
import org.jetbrains.kotlin.ir.util.file
|
import org.jetbrains.kotlin.ir.util.file
|
||||||
import org.jetbrains.kotlin.ir.util.fileOrNull
|
import org.jetbrains.kotlin.ir.util.fileOrNull
|
||||||
import org.jetbrains.kotlin.ir.util.isFakeOverride
|
import org.jetbrains.kotlin.ir.util.isFakeOverride
|
||||||
import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid
|
|
||||||
import org.jetbrains.kotlin.ir.visitors.acceptChildrenVoid
|
|
||||||
import org.jetbrains.kotlin.ir.visitors.acceptVoid
|
|
||||||
import org.jetbrains.kotlin.library.impl.IrMemoryArrayWriter
|
import org.jetbrains.kotlin.library.impl.IrMemoryArrayWriter
|
||||||
import org.jetbrains.kotlin.library.impl.IrMemoryLongArrayWriter
|
import org.jetbrains.kotlin.library.impl.IrMemoryLongArrayWriter
|
||||||
|
|
||||||
@@ -162,25 +158,15 @@ class IdSignatureSerializerWithForIC(
|
|||||||
table: DeclarationTable,
|
table: DeclarationTable,
|
||||||
localIndexOffset: Long = 0,
|
localIndexOffset: Long = 0,
|
||||||
scopeIndexOffset: Int = 0,
|
scopeIndexOffset: Int = 0,
|
||||||
) : IdSignatureSerializer(
|
) : IdSignatureSerializer(publicSignatureBuilder, table) {
|
||||||
publicSignatureBuilder,
|
|
||||||
table
|
|
||||||
) {
|
|
||||||
init {
|
init {
|
||||||
localIndex = localIndexOffset
|
localIndex = localIndexOffset
|
||||||
scopeIndex = scopeIndexOffset
|
scopeIndex = scopeIndexOffset
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun IrDeclaration.createFileLocalSignature(parentSignature: IdSignature, localIndex: Long, description: String?): IdSignature {
|
override fun IrDeclaration.createFileLocalSignature(parentSignature: IdSignature, localIndex: Long, description: String?): IdSignature {
|
||||||
if (this is IrTypeParameter) {
|
|
||||||
return IdSignature.GlobalFileLocalSignature(parentSignature, 1000_000_000_000L + index, fileOrNull?.path ?: "")
|
|
||||||
}
|
|
||||||
return IdSignature.GlobalFileLocalSignature(parentSignature, localIndex, fileOrNull?.path ?: "")
|
return IdSignature.GlobalFileLocalSignature(parentSignature, localIndex, fileOrNull?.path ?: "")
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun IrDeclaration.createScopeLocalSignature(scopeIndex: Int, description: String): IdSignature {
|
|
||||||
return IdSignature.GlobalScopeLocalDeclaration(scopeIndex, description, fileOrNull?.path ?: "")
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fun storeOrder(file: IrFile, fileDeclarations: Iterable<IrDeclaration>, idSigToLong: (IrSymbol) -> Long): SerializedOrder {
|
fun storeOrder(file: IrFile, fileDeclarations: Iterable<IrDeclaration>, idSigToLong: (IrSymbol) -> Long): SerializedOrder {
|
||||||
|
|||||||
Reference in New Issue
Block a user