Move FirJvmClassCodegen inside fir:fir2ir:jvm-backend #KT-38156 Fixed

This removes dependency of IR JVM backend from FIR
This commit is contained in:
Mikhail Glukhikh
2020-04-24 18:55:35 +03:00
parent dbd4cecff6
commit 34ae35b2aa
14 changed files with 59 additions and 38 deletions
+1
View File
@@ -25,6 +25,7 @@ dependencies {
compile(project(":compiler:fir:jvm"))
compile(project(":compiler:fir:java"))
compile(project(":compiler:fir:fir2ir"))
compile(project(":compiler:fir:fir2ir:jvm-backend"))
compile(project(":compiler:fir:checkers"))
compile(project(":kotlin-util-klib"))
compile(project(":kotlin-util-io"))
@@ -51,6 +51,7 @@ import org.jetbrains.kotlin.config.*
import org.jetbrains.kotlin.fileClasses.JvmFileClassUtil
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.backend.Fir2IrConverter
import org.jetbrains.kotlin.fir.backend.jvm.FirJvmClassCodegen
import org.jetbrains.kotlin.fir.builder.RawFirBuilder
import org.jetbrains.kotlin.fir.java.FirJavaModuleBasedSession
import org.jetbrains.kotlin.fir.java.FirLibrarySession
@@ -76,7 +77,6 @@ import org.jetbrains.kotlin.resolve.jvm.KotlinJavaPsiFacade
import org.jetbrains.kotlin.resolve.jvm.platform.JvmPlatformAnalyzerServices
import org.jetbrains.kotlin.utils.newLinkedHashMapWithExpectedSize
import java.io.File
import java.net.URLClassLoader
object KotlinToJVMBytecodeCompiler {
private fun writeOutput(
@@ -369,7 +369,11 @@ object KotlinToJVMBytecodeCompiler {
val performanceManager = environment.configuration.get(CLIConfigurationKeys.PERF_MANAGER)
performanceManager?.notifyGenerationStarted()
generationState.beforeCompile()
codegenFactory.generateModuleInFrontendIRMode(generationState, moduleFragment, symbolTable, sourceManager)
codegenFactory.generateModuleInFrontendIRMode(
generationState, moduleFragment, symbolTable, sourceManager
) { irClass, context, parentFunction ->
FirJvmClassCodegen(irClass, context, parentFunction, session)
}
CodegenFactory.doCheckCancelled(generationState)
generationState.factory.done()
performanceManager?.notifyGenerationFinished(