From d174e8c3d278d11979ac0afe8fc518efb668063c Mon Sep 17 00:00:00 2001 From: Roman Artemev Date: Thu, 5 Aug 2021 11:10:43 +0300 Subject: [PATCH] small optimization --- .../common/serialization/IrDeclarationDeserializer.kt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/IrDeclarationDeserializer.kt b/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/IrDeclarationDeserializer.kt index 92ad53721cd..438d5275fcd 100644 --- a/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/IrDeclarationDeserializer.kt +++ b/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/IrDeclarationDeserializer.kt @@ -97,7 +97,7 @@ class IrDeclarationDeserializer( fileReader.type(index).codedInputStream private fun loadTypeProto(index: Int): ProtoType { - return ProtoType.parseFrom(readType(index), ExtensionRegistryLite.newInstance()) + return ProtoType.parseFrom(readType(index), extensionRegistry) } fun deserializeNullableIrType(index: Int): IrType? = if (index == -1) null else deserializeIrType(index) @@ -492,11 +492,11 @@ class IrDeclarationDeserializer( fileReader.body(index).codedInputStream private fun loadStatementBodyProto(index: Int): ProtoStatement { - return ProtoStatement.parseFrom(readBody(index), ExtensionRegistryLite.newInstance()) + return ProtoStatement.parseFrom(readBody(index), extensionRegistry) } private fun loadExpressionBodyProto(index: Int): ProtoExpression { - return ProtoExpression.parseFrom(readBody(index), ExtensionRegistryLite.newInstance()) + return ProtoExpression.parseFrom(readBody(index), extensionRegistry) } fun deserializeExpressionBody(index: Int): IrExpressionBody { @@ -749,6 +749,8 @@ class IrDeclarationDeserializer( private val allKnownStatementOrigins = IrStatementOrigin::class.nestedClasses.toList() private val statementOriginIndex = allKnownStatementOrigins.mapNotNull { it.objectInstance as? IrStatementOriginImpl }.associateBy { it.debugName } + + private val extensionRegistry = ExtensionRegistryLite.newInstance() } fun deserializeIrDeclarationOrigin(protoName: Int): IrDeclarationOriginImpl {