From c081bc8d7e2694aa364ee75865b7007fec13e01c Mon Sep 17 00:00:00 2001 From: Georgy Bronnikov Date: Fri, 15 Jan 2021 14:45:43 +0300 Subject: [PATCH] Fir concurrent maps --- .../fir/backend/Fir2IrDeclarationStorage.kt | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt index 5b57f3a4a54..14cff99b06a 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt @@ -52,6 +52,7 @@ import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource import org.jetbrains.kotlin.utils.threadLocal +import java.util.concurrent.ConcurrentHashMap @OptIn(ObsoleteDescriptorBasedAPI::class) class Fir2IrDeclarationStorage( @@ -61,26 +62,26 @@ class Fir2IrDeclarationStorage( private val firProvider = session.firProvider - private val fragmentCache = mutableMapOf() + private val fragmentCache = ConcurrentHashMap() - private val builtInsFragmentCache = mutableMapOf() + private val builtInsFragmentCache = ConcurrentHashMap() - private val fileCache = mutableMapOf() + private val fileCache = ConcurrentHashMap() - private val functionCache = mutableMapOf, IrSimpleFunction>() + private val functionCache = ConcurrentHashMap, IrSimpleFunction>() - private val constructorCache = mutableMapOf() + private val constructorCache = ConcurrentHashMap() - private val initializerCache = mutableMapOf() + private val initializerCache = ConcurrentHashMap() - private val propertyCache = mutableMapOf() + private val propertyCache = ConcurrentHashMap() // For pure fields (from Java) only - private val fieldToPropertyCache = mutableMapOf() + private val fieldToPropertyCache = ConcurrentHashMap() - private val delegatedReverseCache = mutableMapOf() + private val delegatedReverseCache = ConcurrentHashMap() - private val fieldCache = mutableMapOf() + private val fieldCache = ConcurrentHashMap() private val localStorage by threadLocal { Fir2IrLocalStorage() }