Fir2Ir: pass Fir2IrExtensions to backend

This commit is contained in:
Georgy Bronnikov
2021-12-09 11:30:16 +03:00
committed by Alexander Udalov
parent 3c3c1be543
commit 13d4d60afa
12 changed files with 82 additions and 64 deletions
@@ -114,16 +114,13 @@ object GenerationUtils {
emptyList(),
IrGenerationExtension.getInstances(project)
)
val (moduleFragment, symbolTable, components) = firAnalyzerFacade.convertToIr(
JvmFir2IrExtensions(configuration)
)
val fir2IrExtensions = JvmFir2IrExtensions(configuration)
val (moduleFragment, symbolTable, components) = firAnalyzerFacade.convertToIr(fir2IrExtensions)
val dummyBindingContext = NoScopeRecordCliBindingTrace().bindingContext
val extensions = JvmGeneratorExtensionsImpl(configuration)
val codegenFactory = JvmIrCodegenFactory(
configuration,
configuration.get(CLIConfigurationKeys.PHASE_CONFIG),
jvmGeneratorExtensions = extensions
)
val generationState = GenerationState.Builder(
@@ -137,7 +134,7 @@ object GenerationUtils {
generationState.beforeCompile()
generationState.oldBEInitTrace(files)
codegenFactory.generateModuleInFrontendIRMode(
generationState, moduleFragment, symbolTable, extensions, FirJvmBackendExtension(session, components),
generationState, moduleFragment, symbolTable, fir2IrExtensions, FirJvmBackendExtension(session, components),
) {}
generationState.factory.done()