[JS IR] Performance fixes for the IC infrastructure

This commit is contained in:
Alexander Korepanov
2022-08-04 20:01:52 +02:00
committed by Space
parent 5152966aa0
commit 28c83e43ad
2 changed files with 7 additions and 5 deletions
@@ -322,8 +322,10 @@ class CacheUpdater(
}
}
val metadata = incrementalCache.fetchSourceFileFullMetadata(libSrcFile)
updatedMetadata[lib, libSrcFile] = DirtyFileMetadata(maybeImportedSignatures, metadata.directDependencies)
if (dirtySrcFiles[lib, libSrcFile] != null) {
val metadata = incrementalCache.fetchSourceFileFullMetadata(libSrcFile)
updatedMetadata[lib, libSrcFile] = DirtyFileMetadata(maybeImportedSignatures, metadata.directDependencies)
}
}
}
@@ -336,7 +338,7 @@ class CacheUpdater(
val (dependencyLib, dependencyFile) = idSignatureToFile[it] ?: (libFile to srcFile)
updatedMetadata[dependencyLib, dependencyFile]?.also { dependencyMetadata ->
dependencyMetadata.addInverseDependency(dependentLibFile, dependentSrcFile, it)
} ?: notFoundIcError("metadata", dependencyLib, dependencyFile)
}
}
}
@@ -348,7 +350,7 @@ class CacheUpdater(
updatedMetadata[dependencyLib, dependencyFile]?.also { dependencyMetadata ->
dependencyMetadata.addInverseDependency(libFile, srcFile, importedSignature)
} ?: notFoundIcError("metadata", dependencyLib, dependencyFile)
}
}
}
}
@@ -213,7 +213,7 @@ class IncrementalCache(private val library: KotlinLibrary, cachePath: String) {
private fun commitSourceFileMetadata(srcFile: KotlinSourceFile, signatureToIndexMapping: Map<IdSignature, Int>) {
val headerCacheFile = srcFile.getCacheFile(METADATA_SUFFIX)
val sourceFileMetadata = kotlinLibrarySourceFileMetadata[srcFile] ?: notFoundIcError("metadata", libraryFile, srcFile)
val sourceFileMetadata = kotlinLibrarySourceFileMetadata[srcFile] ?: return
if (sourceFileMetadata.isEmpty()) {
headerCacheFile.delete()
return