IR: pass DescriptorByIdSignatureFinder as parameter to DeclarationStubGeneratorimpl

This breaks dependency between serialization.common and psi2ir modules.
This commit is contained in:
Georgy Bronnikov
2021-12-01 20:23:22 +03:00
committed by TeamCityServer
parent 3f91674090
commit 6a3a375372
11 changed files with 34 additions and 28 deletions
@@ -8,10 +8,8 @@ package org.jetbrains.kotlin.backend.jvm
import org.jetbrains.kotlin.analyzer.hasJdkCapability
import org.jetbrains.kotlin.backend.common.extensions.IrGenerationExtension
import org.jetbrains.kotlin.backend.common.extensions.IrPluginContextImpl
import org.jetbrains.kotlin.backend.common.phaser.CompilerPhase
import org.jetbrains.kotlin.backend.common.phaser.PhaseConfig
import org.jetbrains.kotlin.backend.common.phaser.invokeToplevel
import org.jetbrains.kotlin.backend.common.phaser.then
import org.jetbrains.kotlin.backend.common.phaser.*
import org.jetbrains.kotlin.backend.common.serialization.DescriptorByIdSignatureFinderImpl
import org.jetbrains.kotlin.backend.jvm.intrinsics.IrIntrinsicMethods
import org.jetbrains.kotlin.backend.jvm.ir.getKtFile
import org.jetbrains.kotlin.backend.jvm.serialization.JvmIdSignatureDescriptor
@@ -95,7 +93,9 @@ open class JvmIrCodegenFactory(
val stubGenerator =
DeclarationStubGeneratorImpl(
psi2irContext.moduleDescriptor, symbolTable, psi2irContext.irBuiltIns, mangler, jvmGeneratorExtensions
psi2irContext.moduleDescriptor, symbolTable, psi2irContext.irBuiltIns,
DescriptorByIdSignatureFinderImpl(psi2irContext.moduleDescriptor, mangler),
jvmGeneratorExtensions
)
val frontEndContext = object : TranslationPluginContext {
override val moduleDescriptor: ModuleDescriptor
@@ -290,7 +290,7 @@ open class JvmIrCodegenFactory(
): List<IrProvider> {
return generateTypicalIrProviderList(
irModuleFragment.descriptor, irModuleFragment.irBuiltins, symbolTable,
JvmDescriptorMangler(null),
DescriptorByIdSignatureFinderImpl(irModuleFragment.descriptor, JvmDescriptorMangler(null)),
extensions = extensions
)
}