[K2] Move IRTranslation perf calculation inside convertToIr* methods
This commit is contained in:
@@ -236,6 +236,10 @@ fun transformFirToIr(
|
||||
}
|
||||
|
||||
val firResult = FirResult(firOutputs)
|
||||
|
||||
val performanceManager = moduleStructure.compilerConfiguration[CLIConfigurationKeys.PERF_MANAGER]
|
||||
performanceManager?.notifyIRTranslationStarted()
|
||||
|
||||
return firResult.convertToIrAndActualize(
|
||||
fir2IrExtensions,
|
||||
Fir2IrConfiguration.forKlibCompilation(moduleStructure.compilerConfiguration, diagnosticsReporter),
|
||||
@@ -247,6 +251,8 @@ fun transformFirToIr(
|
||||
actualizerTypeContextProvider = ::IrTypeSystemContextImpl
|
||||
) { _, irPart ->
|
||||
(irPart.irModuleFragment.descriptor as? FirModuleDescriptor)?.let { it.allDependencyModules = librariesDescriptors }
|
||||
}.also {
|
||||
performanceManager?.notifyIRTranslationFinished()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
-4
@@ -154,14 +154,10 @@ object FirKotlinToJvmBytecodeCompiler {
|
||||
return null
|
||||
}
|
||||
|
||||
performanceManager?.notifyIRTranslationStarted()
|
||||
|
||||
val fir2IrExtensions = JvmFir2IrExtensions(configuration, JvmIrDeserializerImpl(), JvmIrMangler)
|
||||
val fir2IrAndIrActualizerResult =
|
||||
firResult.convertToIrAndActualizeForJvm(fir2IrExtensions, configuration, diagnosticsReporter, irGenerationExtensions)
|
||||
|
||||
performanceManager?.notifyIRTranslationFinished()
|
||||
|
||||
performanceManager?.notifyGenerationStarted()
|
||||
val generationState = runBackend(
|
||||
fir2IrExtensions,
|
||||
|
||||
@@ -133,13 +133,9 @@ fun compileModulesUsingFrontendIrAndLightTree(
|
||||
return false
|
||||
}
|
||||
|
||||
performanceManager?.notifyIRTranslationStarted()
|
||||
|
||||
val compilerEnvironment = ModuleCompilerEnvironment(projectEnvironment, diagnosticsReporter)
|
||||
val irInput = convertAnalyzedFirToIr(compilerInput, analysisResults, compilerEnvironment)
|
||||
|
||||
performanceManager?.notifyIRTranslationFinished()
|
||||
|
||||
performanceManager?.notifyGenerationStarted()
|
||||
val codegenOutput = generateCodeFromIr(irInput, compilerEnvironment, performanceManager)
|
||||
|
||||
@@ -192,6 +188,9 @@ fun FirResult.convertToIrAndActualizeForJvm(
|
||||
diagnosticsReporter: DiagnosticReporter,
|
||||
irGeneratorExtensions: Collection<IrGenerationExtension>,
|
||||
): Fir2IrActualizedResult {
|
||||
val performanceManager = configuration[CLIConfigurationKeys.PERF_MANAGER]
|
||||
performanceManager?.notifyIRTranslationStarted()
|
||||
|
||||
val fir2IrConfiguration = Fir2IrConfiguration.forJvmCompilation(configuration, diagnosticsReporter)
|
||||
|
||||
return convertToIrAndActualize(
|
||||
@@ -203,7 +202,7 @@ fun FirResult.convertToIrAndActualizeForJvm(
|
||||
FirJvmVisibilityConverter,
|
||||
DefaultBuiltIns.Instance,
|
||||
::JvmIrTypeSystemContext,
|
||||
)
|
||||
).also { performanceManager?.notifyIRTranslationFinished() }
|
||||
}
|
||||
|
||||
fun generateCodeFromIr(
|
||||
|
||||
-4
@@ -263,16 +263,12 @@ open class IncrementalFirJvmCompilerRunner(
|
||||
|
||||
val cycleResult = firIncrementalCycle() ?: return ExitCode.COMPILATION_ERROR to allCompiledSources
|
||||
|
||||
performanceManager?.notifyIRTranslationStarted()
|
||||
|
||||
val extensions = JvmFir2IrExtensions(configuration, JvmIrDeserializerImpl(), JvmIrMangler)
|
||||
val irGenerationExtensions = projectEnvironment.project.let { IrGenerationExtension.getInstances(it) }
|
||||
val (irModuleFragment, components, pluginContext, irActualizedResult) = cycleResult.convertToIrAndActualizeForJvm(
|
||||
extensions, configuration, compilerEnvironment.diagnosticsReporter, irGenerationExtensions,
|
||||
)
|
||||
|
||||
performanceManager?.notifyIRTranslationFinished()
|
||||
|
||||
performanceManager?.notifyGenerationStarted()
|
||||
val irInput = ModuleCompilerIrBackendInput(
|
||||
targetId,
|
||||
|
||||
Reference in New Issue
Block a user