Use PhaseConfigurationService in CompilerPhase instead of PhaseConfig
This commit is contained in:
committed by
Space Team
parent
06182fe547
commit
54deba63a1
+2
-3
@@ -23,7 +23,6 @@ import org.jetbrains.kotlin.ir.declarations.IrFunction
|
||||
import org.jetbrains.kotlin.ir.declarations.IrModuleFragment
|
||||
import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid
|
||||
import org.jetbrains.kotlin.ir.visitors.acceptChildrenVoid
|
||||
import org.jetbrains.kotlin.ir.visitors.transformChildrenVoid
|
||||
|
||||
private val validateAll = false
|
||||
|
||||
@@ -59,7 +58,7 @@ internal fun makeKonanFileOpPhase(
|
||||
) = NamedCompilerPhase(
|
||||
name, description, prerequisite, nlevels = 0,
|
||||
lower = object : SameTypeCompilerPhase<Context, IrFile> {
|
||||
override fun invoke(phaseConfig: PhaseConfig, phaserState: PhaserState<IrFile>, context: Context, input: IrFile): IrFile {
|
||||
override fun invoke(phaseConfig: PhaseConfigurationService, phaserState: PhaserState<IrFile>, context: Context, input: IrFile): IrFile {
|
||||
op(context, input)
|
||||
return input
|
||||
}
|
||||
@@ -75,7 +74,7 @@ internal fun makeKonanModuleOpPhase(
|
||||
) = NamedCompilerPhase(
|
||||
name, description, prerequisite, nlevels = 0,
|
||||
lower = object : SameTypeCompilerPhase<Context, IrModuleFragment> {
|
||||
override fun invoke(phaseConfig: PhaseConfig, phaserState: PhaserState<IrModuleFragment>, context: Context, input: IrModuleFragment): IrModuleFragment {
|
||||
override fun invoke(phaseConfig: PhaseConfigurationService, phaserState: PhaserState<IrModuleFragment>, context: Context, input: IrModuleFragment): IrModuleFragment {
|
||||
op(context, input)
|
||||
return input
|
||||
}
|
||||
|
||||
+4
-4
@@ -303,7 +303,7 @@ internal val dependenciesLowerPhase = NamedCompilerPhase(
|
||||
description = "Lower library's IR",
|
||||
prerequisite = emptySet(),
|
||||
lower = object : CompilerPhase<Context, IrModuleFragment, IrModuleFragment> {
|
||||
override fun invoke(phaseConfig: PhaseConfig, phaserState: PhaserState<IrModuleFragment>, context: Context, input: IrModuleFragment): IrModuleFragment {
|
||||
override fun invoke(phaseConfig: PhaseConfigurationService, phaserState: PhaserState<IrModuleFragment>, context: Context, input: IrModuleFragment): IrModuleFragment {
|
||||
val files = mutableListOf<IrFile>()
|
||||
files += input.files
|
||||
input.files.clear()
|
||||
@@ -341,7 +341,7 @@ internal val umbrellaCompilation = NamedCompilerPhase(
|
||||
description = "A batched compilation with shared FE and ME phases",
|
||||
prerequisite = emptySet(),
|
||||
lower = object : CompilerPhase<Context, Unit, Unit> {
|
||||
override fun invoke(phaseConfig: PhaseConfig, phaserState: PhaserState<Unit>, context: Context, input: Unit) {
|
||||
override fun invoke(phaseConfig: PhaseConfigurationService, phaserState: PhaserState<Unit>, context: Context, input: Unit) {
|
||||
val module = context.irModules.values.single()
|
||||
|
||||
val files = module.files.toList()
|
||||
@@ -440,7 +440,7 @@ internal val createGenerationStatePhase = namedUnitPhase(
|
||||
name = "CreateGenerationState",
|
||||
description = "Create generation state",
|
||||
lower = object : CompilerPhase<Context, Unit, Unit> {
|
||||
override fun invoke(phaseConfig: PhaseConfig, phaserState: PhaserState<Unit>, context: Context, input: Unit) {
|
||||
override fun invoke(phaseConfig: PhaseConfigurationService, phaserState: PhaserState<Unit>, context: Context, input: Unit) {
|
||||
context.generationState = NativeGenerationState(context)
|
||||
}
|
||||
}
|
||||
@@ -450,7 +450,7 @@ internal val disposeGenerationStatePhase = namedUnitPhase(
|
||||
name = "DisposeGenerationState",
|
||||
description = "Dispose generation state",
|
||||
lower = object : CompilerPhase<Context, Unit, Unit> {
|
||||
override fun invoke(phaseConfig: PhaseConfig, phaserState: PhaserState<Unit>, context: Context, input: Unit) {
|
||||
override fun invoke(phaseConfig: PhaseConfigurationService, phaserState: PhaserState<Unit>, context: Context, input: Unit) {
|
||||
context.disposeGenerationState()
|
||||
}
|
||||
}
|
||||
|
||||
+2
-5
@@ -6,10 +6,7 @@
|
||||
package org.jetbrains.kotlin.backend.konan.llvm
|
||||
|
||||
import llvm.*
|
||||
import org.jetbrains.kotlin.backend.common.phaser.CompilerPhase
|
||||
import org.jetbrains.kotlin.backend.common.phaser.PhaseConfig
|
||||
import org.jetbrains.kotlin.backend.common.phaser.PhaserState
|
||||
import org.jetbrains.kotlin.backend.common.phaser.namedUnitPhase
|
||||
import org.jetbrains.kotlin.backend.common.phaser.*
|
||||
import org.jetbrains.kotlin.backend.konan.*
|
||||
import org.jetbrains.kotlin.backend.konan.descriptors.GlobalHierarchyAnalysis
|
||||
import org.jetbrains.kotlin.backend.konan.llvm.coverage.runCoveragePass
|
||||
@@ -308,7 +305,7 @@ internal val produceOutputPhase = namedUnitPhase(
|
||||
name = "ProduceOutput",
|
||||
description = "Produce output",
|
||||
lower = object : CompilerPhase<Context, Unit, Unit> {
|
||||
override fun invoke(phaseConfig: PhaseConfig, phaserState: PhaserState<Unit>, context: Context, input: Unit) {
|
||||
override fun invoke(phaseConfig: PhaseConfigurationService, phaserState: PhaserState<Unit>, context: Context, input: Unit) {
|
||||
produceOutput(context)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user