[Test] Use IrPluginContext for searching declarations for DUMP_EXTERNAL_CLASS check

This commit is contained in:
Dmitriy Novozhilov
2022-12-05 12:55:24 +02:00
committed by Space Team
parent e7f6482857
commit 5d6cb2b691
44 changed files with 1128 additions and 501 deletions
@@ -371,7 +371,7 @@ object FirKotlinToJvmBytecodeCompiler {
generationState.oldBEInitTrace(ktFiles)
codegenFactory.generateModuleInFrontendIRMode(
generationState, moduleFragment, components.symbolTable, components.irProviders,
extensions, FirJvmBackendExtension(session, components)
extensions, FirJvmBackendExtension(session, components), fir2IrResult.pluginContext
) {
performanceManager?.notifyIRLoweringFinished()
performanceManager?.notifyIRGenerationStarted()
@@ -196,7 +196,7 @@ fun convertAnalyzedFirToIr(
IrGenerationExtension.getInstances(it)
} ?: emptyList()
val linkViaSignatures = input.configuration.getBoolean(JVMConfigurationKeys.LINK_VIA_SIGNATURES)
val (irModuleFragment, components) =
val (irModuleFragment, components, pluginContext) =
analysisResults.session.convertToIr(
analysisResults.scopeSession, analysisResults.fir, extensions, irGenerationExtensions, linkViaSignatures
)
@@ -208,7 +208,8 @@ fun convertAnalyzedFirToIr(
irModuleFragment,
components.symbolTable,
components,
analysisResults.session
analysisResults.session,
pluginContext
)
}
@@ -247,8 +248,13 @@ fun generateCodeFromIr(
generationState.beforeCompile()
codegenFactory.generateModuleInFrontendIRMode(
generationState, input.irModuleFragment, input.symbolTable, input.components.irProviders, input.extensions,
FirJvmBackendExtension(input.firSession, input.components)
generationState,
input.irModuleFragment,
input.symbolTable,
input.components.irProviders,
input.extensions,
FirJvmBackendExtension(input.firSession, input.components),
input.pluginContext
) {
performanceManager?.notifyIRLoweringFinished()
performanceManager?.notifyIRGenerationStarted()
@@ -12,6 +12,7 @@ import org.jetbrains.kotlin.diagnostics.impl.BaseDiagnosticsCollector
import org.jetbrains.kotlin.fir.FirModuleData
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.backend.Fir2IrComponents
import org.jetbrains.kotlin.fir.backend.Fir2IrPluginContext
import org.jetbrains.kotlin.fir.backend.jvm.JvmFir2IrExtensions
import org.jetbrains.kotlin.fir.declarations.FirFile
import org.jetbrains.kotlin.fir.resolve.ScopeSession
@@ -57,5 +58,6 @@ data class ModuleCompilerIrBackendInput(
val irModuleFragment: IrModuleFragment,
val symbolTable: SymbolTable,
val components: Fir2IrComponents,
val firSession: FirSession
)
val firSession: FirSession,
val pluginContext: Fir2IrPluginContext
)