[JS IC] Support per-file invalidation in CLI
- now disabled
This commit is contained in:
committed by
TeamCityServer
parent
001d3d8bc2
commit
22cd20781e
@@ -38,6 +38,7 @@ import org.jetbrains.kotlin.incremental.js.IncrementalDataProvider
|
||||
import org.jetbrains.kotlin.incremental.js.IncrementalNextRoundChecker
|
||||
import org.jetbrains.kotlin.incremental.js.IncrementalResultsConsumer
|
||||
import org.jetbrains.kotlin.ir.backend.js.*
|
||||
import org.jetbrains.kotlin.ir.backend.js.ic.actualizeCacheForModule
|
||||
import org.jetbrains.kotlin.ir.backend.js.ic.buildCache
|
||||
import org.jetbrains.kotlin.ir.backend.js.ic.checkCaches
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl
|
||||
@@ -72,6 +73,9 @@ class K2JsIrCompiler : CLICompiler<K2JSCompilerArguments>() {
|
||||
return K2JSCompilerArguments()
|
||||
}
|
||||
|
||||
@Suppress("UNUSED_PARAMETER")
|
||||
private fun usePerFileInvalidator(configuration: CompilerConfiguration): Boolean = false
|
||||
|
||||
override fun doExecute(
|
||||
arguments: K2JSCompilerArguments,
|
||||
configuration: CompilerConfiguration,
|
||||
@@ -201,8 +205,14 @@ class K2JsIrCompiler : CLICompiler<K2JSCompilerArguments>() {
|
||||
MainModule.Klib(includes)
|
||||
}
|
||||
|
||||
val perFileCache = usePerFileInvalidator(configuration)
|
||||
|
||||
val start = System.currentTimeMillis()
|
||||
if (buildCache(
|
||||
|
||||
val updated = if (perFileCache) {
|
||||
actualizeCacheForModule(includes, outputFilePath, configuration, libraries, icCaches)
|
||||
} else {
|
||||
buildCache(
|
||||
cachePath = outputFilePath,
|
||||
project = projectJs,
|
||||
mainModule = mainModule,
|
||||
@@ -211,10 +221,13 @@ class K2JsIrCompiler : CLICompiler<K2JSCompilerArguments>() {
|
||||
friendDependencies = friendLibraries,
|
||||
icCache = checkCaches(libraries, icCaches, skipLib = mainModule.libPath)
|
||||
)
|
||||
) {
|
||||
messageCollector.report(INFO, "IC cache building duration: ${System.currentTimeMillis() - start}ms")
|
||||
}
|
||||
|
||||
val invalidationType = if (perFileCache) "per-file" else "per-module"
|
||||
if (updated) {
|
||||
messageCollector.report(INFO, "IC $invalidationType cache building duration: ${System.currentTimeMillis() - start}ms")
|
||||
} else {
|
||||
messageCollector.report(INFO, "IC cache up-to-date check duration: ${System.currentTimeMillis() - start}ms")
|
||||
messageCollector.report(INFO, "IC $invalidationType cache up-to-date check duration: ${System.currentTimeMillis() - start}ms")
|
||||
}
|
||||
return OK
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user