From c0f6508ff9d8ef1230ecdbfa650aca0bf8ffc6b2 Mon Sep 17 00:00:00 2001 From: Georgy Bronnikov Date: Tue, 23 Nov 2021 15:13:24 +0300 Subject: [PATCH] JVM_IR: do not compute stored file signature when not needed --- .../jvm/serialization/JvmIdSignatureDescriptor.kt | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/compiler/ir/serialization.jvm/src/org/jetbrains/kotlin/backend/jvm/serialization/JvmIdSignatureDescriptor.kt b/compiler/ir/serialization.jvm/src/org/jetbrains/kotlin/backend/jvm/serialization/JvmIdSignatureDescriptor.kt index 9fc93b43dfd..de919f485c3 100644 --- a/compiler/ir/serialization.jvm/src/org/jetbrains/kotlin/backend/jvm/serialization/JvmIdSignatureDescriptor.kt +++ b/compiler/ir/serialization.jvm/src/org/jetbrains/kotlin/backend/jvm/serialization/JvmIdSignatureDescriptor.kt @@ -108,11 +108,14 @@ class JvmIdSignatureDescriptor(mangler: KotlinMangler.DescriptorMangler) : IdSig } private fun computeStoredFileSignature(descriptor: DeclarationDescriptorWithSource) { - storedFileSignature = IdSignature.FileSignature( - descriptor.source.containingFile, - descriptor.containingPackage() ?: FqName.ROOT, - descriptor.source.containingFile.name ?: "unknown" - ) + // isTopLevelPrivate needs to be already set. + if (isTopLevelPrivate && externallyGivenFileSignature == null) { + storedFileSignature = IdSignature.FileSignature( + descriptor.source.containingFile, + descriptor.containingPackage() ?: FqName.ROOT, + descriptor.source.containingFile.name ?: "unknown" + ) + } } var storedFileSignature: IdSignature.FileSignature? = null