[FIR2IR] Remove passing excess arguments to jvm backend functions and classes

generateModuleInFrontendIRMode, runBackend

FirJvmBackendExtension, ModuleCompilerIrBackendInput
This commit is contained in:
Ivan Kochurkin
2023-01-27 16:34:06 +01:00
committed by Space Team
parent e601b01be2
commit 0f9107c153
7 changed files with 7 additions and 20 deletions
@@ -171,7 +171,6 @@ object FirKotlinToJvmBytecodeCompiler {
allSources,
fir2IrResult,
fir2IrExtensions,
firResult.platformOutput.session,
diagnosticsReporter
)
@@ -310,7 +309,6 @@ object FirKotlinToJvmBytecodeCompiler {
ktFiles: List<KtFile>,
fir2IrResult: Fir2IrResult,
extensions: JvmGeneratorExtensions,
session: FirSession,
diagnosticsReporter: BaseDiagnosticsCollector
): GenerationState {
val (moduleFragment, components) = fir2IrResult
@@ -342,7 +340,7 @@ object FirKotlinToJvmBytecodeCompiler {
generationState.oldBEInitTrace(ktFiles)
codegenFactory.generateModuleInFrontendIRMode(
generationState, moduleFragment, components.symbolTable, components.irProviders,
extensions, FirJvmBackendExtension(session, components), fir2IrResult.pluginContext
extensions, FirJvmBackendExtension(components), fir2IrResult.pluginContext
) {
performanceManager?.notifyIRLoweringFinished()
performanceManager?.notifyIRGenerationStarted()
@@ -228,9 +228,7 @@ fun convertAnalyzedFirToIr(
input.configuration,
extensions,
irModuleFragment,
components.symbolTable,
components,
analysisResults.platformOutput.session,
pluginContext
)
}
@@ -272,10 +270,10 @@ fun generateCodeFromIr(
codegenFactory.generateModuleInFrontendIRMode(
generationState,
input.irModuleFragment,
input.symbolTable,
input.components.symbolTable,
input.components.irProviders,
input.extensions,
FirJvmBackendExtension(input.firSession, input.components),
FirJvmBackendExtension(input.components),
input.pluginContext
) {
performanceManager?.notifyIRLoweringFinished()
@@ -10,15 +10,11 @@ import org.jetbrains.kotlin.codegen.state.GenerationState
import org.jetbrains.kotlin.config.CompilerConfiguration
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
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectEnvironment
import org.jetbrains.kotlin.ir.declarations.IrModuleFragment
import org.jetbrains.kotlin.ir.util.SymbolTable
import org.jetbrains.kotlin.modules.TargetId
import org.jetbrains.kotlin.platform.TargetPlatform
@@ -48,8 +44,6 @@ data class ModuleCompilerIrBackendInput(
val configuration: CompilerConfiguration,
val extensions: JvmFir2IrExtensions,
val irModuleFragment: IrModuleFragment,
val symbolTable: SymbolTable,
val components: Fir2IrComponents,
val firSession: FirSession,
val pluginContext: Fir2IrPluginContext
)
@@ -10,13 +10,12 @@ import org.jetbrains.kotlin.backend.jvm.JvmBackendExtension
import org.jetbrains.kotlin.backend.jvm.metadata.MetadataSerializer
import org.jetbrains.kotlin.codegen.serialization.JvmSerializationBindings
import org.jetbrains.kotlin.config.JvmAbiStability
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.backend.Fir2IrComponents
import org.jetbrains.kotlin.ir.declarations.IrClass
import org.jetbrains.kotlin.load.java.JvmAnnotationNames
import org.jetbrains.org.objectweb.asm.Type
class FirJvmBackendExtension(private val session: FirSession, private val components: Fir2IrComponents) : JvmBackendExtension {
class FirJvmBackendExtension(private val components: Fir2IrComponents) : JvmBackendExtension {
override fun createSerializer(
context: JvmBackendContext,
klass: IrClass,
@@ -24,7 +23,7 @@ class FirJvmBackendExtension(private val session: FirSession, private val compon
bindings: JvmSerializationBindings,
parentSerializer: MetadataSerializer?
): MetadataSerializer {
return makeFirMetadataSerializerForIrClass(session, context, klass, bindings, components, parentSerializer)
return makeFirMetadataSerializerForIrClass(components.session, context, klass, bindings, components, parentSerializer)
}
override fun generateMetadataExtraFlags(abiStability: JvmAbiStability?): Int =
@@ -284,9 +284,7 @@ class IncrementalFirJvmCompilerRunner(
configuration,
extensions,
platformIrOutput.irModuleFragment,
platformIrOutput.components.symbolTable,
platformIrOutput.components,
cycleResult.platformOutput.session,
platformIrOutput.pluginContext
)
@@ -103,7 +103,7 @@ class Fir2IrResultsConverter(
phaseConfig,
components.irProviders,
fir2IrExtensions,
FirJvmBackendExtension(firOutputPart.session, components),
FirJvmBackendExtension(components),
pluginContext,
notifyCodegenStart = {},
)
@@ -160,7 +160,7 @@ object GenerationUtils {
generationState.oldBEInitTrace(files)
codegenFactory.generateModuleInFrontendIRMode(
generationState, moduleFragment, components.symbolTable, components.irProviders,
fir2IrExtensions, FirJvmBackendExtension(session, components), pluginContext,
fir2IrExtensions, FirJvmBackendExtension(components), pluginContext,
) {}
generationState.factory.done()