diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanLoweringPhases.kt b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanLoweringPhases.kt index c5372f9ab22..25c7e3d47e6 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanLoweringPhases.kt +++ b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanLoweringPhases.kt @@ -444,10 +444,10 @@ internal val constantInliningPhase = makeKonanFileLoweringPhase( description = "Inline const fields reads", ) -internal val fileInitializersPhase = makeKonanFileLoweringPhase( - ::FileInitializersLowering, - name = "FileInitializers", - description = "Add calls to file initializers", +internal val staticInitializersPhase = makeKonanFileLoweringPhase( + ::StaticInitializersLowering, + name = "StaticInitializers", + description = "Add calls to static initializers", prerequisite = setOf(expressionBodyTransformPhase) ) diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/ToplevelPhases.kt b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/ToplevelPhases.kt index 79f27786778..4f4bb20ba33 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/ToplevelPhases.kt +++ b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/ToplevelPhases.kt @@ -293,7 +293,7 @@ internal val allLoweringsPhase = SameTypeNamedCompilerPhase( typeOperatorPhase, expressionBodyTransformPhase, constantInliningPhase, - fileInitializersPhase, + staticInitializersPhase, bridgesPhase, exportInternalAbiPhase, useInternalAbiPhase, @@ -401,7 +401,7 @@ internal val bitcodePhase = SameTypeNamedCompilerPhase( buildDFGPhase then devirtualizationAnalysisPhase then dcePhase then - removeRedundantCallsToFileInitializersPhase then + removeRedundantCallsToStaticInitializersPhase then devirtualizationPhase then propertyAccessorInlinePhase then // Have to run after link dependencies phase, because fields // from dependencies can be changed during lowerings. @@ -568,13 +568,13 @@ internal fun PhaseConfig.konanPhasesConfig(config: KonanConfig) { disable(unboxInlinePhase) disable(inlineClassPropertyAccessorsPhase) disable(dcePhase) - disable(removeRedundantCallsToFileInitializersPhase) + disable(removeRedundantCallsToStaticInitializersPhase) disable(ghaPhase) } disableUnless(verifyBitcodePhase, config.needCompilerVerification || getBoolean(KonanConfigKeys.VERIFY_BITCODE)) - disableUnless(fileInitializersPhase, config.propertyLazyInitialization) - disableUnless(removeRedundantCallsToFileInitializersPhase, config.propertyLazyInitialization) + disableUnless(staticInitializersPhase, config.propertyLazyInitialization) + disableUnless(removeRedundantCallsToStaticInitializersPhase, config.propertyLazyInitialization) disableUnless(removeRedundantSafepointsPhase, config.memoryModel == MemoryModel.EXPERIMENTAL) diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/llvm/BitcodePhases.kt b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/llvm/BitcodePhases.kt index d54f34863b2..0509d33e5e7 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/llvm/BitcodePhases.kt +++ b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/llvm/BitcodePhases.kt @@ -170,9 +170,9 @@ internal val dcePhase = makeKonanModuleOpPhase( } ) -internal val removeRedundantCallsToFileInitializersPhase = makeKonanModuleOpPhase( - name = "RemoveRedundantCallsToFileInitializersPhase", - description = "Redundant file initializers calls removal", +internal val removeRedundantCallsToStaticInitializersPhase = makeKonanModuleOpPhase( + name = "RemoveRedundantCallsToStaticInitializersPhase", + description = "Redundant static initializers calls removal", prerequisite = setOf(devirtualizationAnalysisPhase), op = { context, _ -> val moduleDFG = context.moduleDFG!! @@ -189,7 +189,7 @@ internal val removeRedundantCallsToFileInitializersPhase = makeKonanModuleOpPhas .mapNotNull { it.irFunction } .toSet() - FileInitializersOptimization.removeRedundantCalls(context, callGraph, rootSet) + StaticInitializersOptimization.removeRedundantCalls(context, callGraph, rootSet) } ) diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FileInitializersLowering.kt b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/StaticInitializersLowering.kt similarity index 98% rename from kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FileInitializersLowering.kt rename to kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/StaticInitializersLowering.kt index 6b0457c6c06..6565f4fd624 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FileInitializersLowering.kt +++ b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/StaticInitializersLowering.kt @@ -44,7 +44,7 @@ internal val IrField.shouldBeInitializedEagerly: Boolean } // TODO: ExplicitlyExported for IR proto are not longer needed. -internal class FileInitializersLowering(val context: Context) : FileLoweringPass { +internal class StaticInitializersLowering(val context: Context) : FileLoweringPass { override fun lower(irFile: IrFile) { var requireGlobalInitializer = false var requireThreadLocalInitializer = false diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/optimizations/FileInitializersOptimization.kt b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/optimizations/StaticInitializersOptimization.kt similarity index 99% rename from kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/optimizations/FileInitializersOptimization.kt rename to kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/optimizations/StaticInitializersOptimization.kt index eaeca337125..1ac68fe05bb 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/optimizations/FileInitializersOptimization.kt +++ b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/optimizations/StaticInitializersOptimization.kt @@ -52,7 +52,7 @@ import java.util.* * set after evaluating that expression. */ -internal object FileInitializersOptimization { +internal object StaticInitializersOptimization { private class AnalysisResult(val functionsRequiringGlobalInitializerCall: Set, val functionsRequiringThreadLocalInitializerCall: Set, val callSitesRequiringGlobalInitializerCall: Set,