[IR] Drop unused language version settings parameters from DependenciesGenerator

This commit is contained in:
Roman Artemev
2020-09-17 13:45:06 +03:00
parent 06498c0efd
commit ba5193870e
10 changed files with 15 additions and 23 deletions
@@ -293,8 +293,7 @@ class Fir2IrConverter(
generateTypicalIrProviderList(irModuleFragment.descriptor, irBuiltIns, symbolTable, extensions = generatorExtensions)
val externalDependenciesGenerator = ExternalDependenciesGenerator(
symbolTable,
irProviders,
languageVersionSettings
irProviders
)
// Necessary call to generate built-in IR classes
externalDependenciesGenerator.generateUnboundSymbolsAsDependencies()
@@ -10,7 +10,6 @@ import org.jetbrains.kotlin.analyzer.AbstractAnalyzerWithCompilerReport
import org.jetbrains.kotlin.backend.common.phaser.PhaseConfig
import org.jetbrains.kotlin.backend.common.phaser.invokeToplevel
import org.jetbrains.kotlin.config.CompilerConfiguration
import org.jetbrains.kotlin.config.languageVersionSettings
import org.jetbrains.kotlin.ir.backend.js.lower.generateTests
import org.jetbrains.kotlin.ir.backend.js.lower.moveBodilessDeclarationsToSeparatePlace
import org.jetbrains.kotlin.ir.backend.js.transformers.irToJs.IrModuleToJsTransformer
@@ -80,7 +79,7 @@ fun compile(
// Load declarations referenced during `context` initialization
val irProviders = listOf(deserializer)
ExternalDependenciesGenerator(symbolTable, irProviders, configuration.languageVersionSettings).generateUnboundSymbolsAsDependencies()
ExternalDependenciesGenerator(symbolTable, irProviders).generateUnboundSymbolsAsDependencies()
deserializer.postProcess()
symbolTable.noUnboundLeft("Unbound symbols at the end of linker")
@@ -171,7 +171,7 @@ class JvmIrCodegenFactory(private val phaseConfig: PhaseConfig) : CodegenFactory
symbolTable, phaseConfig, extensions, backendExtension
)
/* JvmBackendContext creates new unbound symbols, have to resolve them. */
ExternalDependenciesGenerator(symbolTable, irProviders, state.languageVersionSettings).generateUnboundSymbolsAsDependencies()
ExternalDependenciesGenerator(symbolTable, irProviders).generateUnboundSymbolsAsDependencies()
state.mapInlineClass = { descriptor ->
context.typeMapper.mapType(context.referenceClass(descriptor).defaultType)
@@ -13,7 +13,6 @@ import org.jetbrains.kotlin.backend.wasm.ir2wasm.WasmCompiledModuleFragment
import org.jetbrains.kotlin.backend.wasm.ir2wasm.WasmModuleFragmentGenerator
import org.jetbrains.kotlin.backend.wasm.ir2wasm.generateStringLiteralsSupport
import org.jetbrains.kotlin.config.CompilerConfiguration
import org.jetbrains.kotlin.config.languageVersionSettings
import org.jetbrains.kotlin.ir.backend.js.MainModule
import org.jetbrains.kotlin.ir.backend.js.loadIr
import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl
@@ -56,7 +55,7 @@ fun compileWasm(
// Load declarations referenced during `context` initialization
allModules.forEach {
val irProviders = generateTypicalIrProviderList(it.descriptor, irBuiltIns, symbolTable, deserializer)
ExternalDependenciesGenerator(symbolTable, irProviders, configuration.languageVersionSettings)
ExternalDependenciesGenerator(symbolTable, irProviders)
.generateUnboundSymbolsAsDependencies()
}
@@ -67,7 +66,7 @@ fun compileWasm(
// Create stubs
val irProviders = generateTypicalIrProviderList(moduleDescriptor, irBuiltIns, symbolTable, deserializer)
ExternalDependenciesGenerator(symbolTable, irProviders, configuration.languageVersionSettings).generateUnboundSymbolsAsDependencies()
ExternalDependenciesGenerator(symbolTable, irProviders).generateUnboundSymbolsAsDependencies()
moduleFragment.patchDeclarationParents()
wasmPhases.invokeToplevel(phaseConfig, context, moduleFragment)
@@ -60,12 +60,12 @@ class ModuleGenerator(
irModule.descriptor, context.irBuiltIns, context.symbolTable, deserializer,
extensions
)
ExternalDependenciesGenerator(context.symbolTable, fullIrProvidersList, context.languageVersionSettings)
ExternalDependenciesGenerator(context.symbolTable, fullIrProvidersList)
.generateUnboundSymbolsAsDependencies()
}
fun generateUnboundSymbolsAsDependencies(irProviders: List<IrProvider>) {
ExternalDependenciesGenerator(context.symbolTable, irProviders, context.languageVersionSettings)
ExternalDependenciesGenerator(context.symbolTable, irProviders)
.generateUnboundSymbolsAsDependencies()
}
@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.ir.util
import org.jetbrains.kotlin.config.LanguageVersionSettings
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
import org.jetbrains.kotlin.ir.declarations.IrDeclaration
import org.jetbrains.kotlin.ir.descriptors.IrBuiltIns
@@ -27,8 +26,7 @@ import org.jetbrains.kotlin.utils.addToStdlib.firstNotNullResult
class ExternalDependenciesGenerator(
val symbolTable: SymbolTable,
private val irProviders: List<IrProvider>,
private val languageVersionSettings: LanguageVersionSettings
private val irProviders: List<IrProvider>
) {
fun generateUnboundSymbolsAsDependencies() {
// There should be at most one DeclarationStubGenerator (none in closed world?)
@@ -289,7 +289,7 @@ fun loadIr(
val moduleFragment = deserializedModuleFragments.last()
irLinker.init(null, emptyList())
ExternalDependenciesGenerator(symbolTable, listOf(irLinker), configuration.languageVersionSettings).generateUnboundSymbolsAsDependencies()
ExternalDependenciesGenerator(symbolTable, listOf(irLinker)).generateUnboundSymbolsAsDependencies()
irLinker.postProcess()
return IrModuleInfo(moduleFragment, deserializedModuleFragments, irBuiltIns, symbolTable, irLinker)