From 6dccb60afe12250405d9ccaba4fc82e5779495b1 Mon Sep 17 00:00:00 2001 From: Ivan Kylchik Date: Tue, 23 Jan 2024 13:10:34 +0100 Subject: [PATCH] [IR] Add new module to keep all IR inline related code #KT-64806 --- .space/CODEOWNERS | 1 + build.gradle.kts | 4 +++- compiler/ir/ir.inline/build.gradle.kts | 16 ++++++++++++++++ settings.gradle | 2 ++ 4 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 compiler/ir/ir.inline/build.gradle.kts diff --git a/.space/CODEOWNERS b/.space/CODEOWNERS index 37dd56cd78c..7cad0700d45 100644 --- a/.space/CODEOWNERS +++ b/.space/CODEOWNERS @@ -87,6 +87,7 @@ /compiler/ir/serialization.js/ "Kotlin JS" /compiler/ir/serialization.jvm/ "Kotlin JVM" /compiler/ir/serialization.native/ "Kotlin Native" +/compiler/ir/ir.inline/ "Kotlin Common Backend" /compiler/javac-wrapper/ "Kotlin Compiler Core" Simon.Ogorodnik /compiler/light-classes/ "Kotlin IDE Analysis Core" /compiler/plugin-api/ "Kotlin Compiler Core" Simon.Ogorodnik diff --git a/build.gradle.kts b/build.gradle.kts index 190e14e5d32..e7968fb4a85 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -109,6 +109,7 @@ val irCompilerModules = arrayOf( ":compiler:ir.backend.common", ":compiler:ir.actualization", ":compiler:ir.interpreter", + ":compiler:ir.inline", ":wasm:wasm.ir" ).also { extra["irCompilerModules"] = it } @@ -117,10 +118,11 @@ val irCompilerModulesForIDE = arrayOf( ":compiler:ir.serialization.common", ":compiler:ir.serialization.jvm", ":compiler:ir.serialization.js", // used in IJ android plugin in `ComposeIrGenerationExtension` + ":compiler:ir.objcinterop", ":compiler:ir.backend.common", ":compiler:ir.actualization", ":compiler:ir.interpreter", - ":compiler:ir.objcinterop", + ":compiler:ir.inline", ).also { extra["irCompilerModulesForIDE"] = it } val commonCompilerModules = arrayOf( diff --git a/compiler/ir/ir.inline/build.gradle.kts b/compiler/ir/ir.inline/build.gradle.kts new file mode 100644 index 00000000000..2dd2e453202 --- /dev/null +++ b/compiler/ir/ir.inline/build.gradle.kts @@ -0,0 +1,16 @@ +plugins { + kotlin("jvm") + id("jps-compatible") +} + +dependencies { + compileOnly(project(":compiler:ir.tree")) +} + +optInToUnsafeDuringIrConstructionAPI() + +sourceSets { + "main" { projectDefault() } + "test" {} +} + diff --git a/settings.gradle b/settings.gradle index 627a7e80bf3..e07174abb86 100644 --- a/settings.gradle +++ b/settings.gradle @@ -79,6 +79,7 @@ include ":benchmarks", ":compiler:ir.serialization.js", ":compiler:ir.serialization.native", ":compiler:ir.interpreter", + ":compiler:ir.inline", ":compiler:backend.js", ":compiler:backend.wasm", ":compiler:backend.jvm", @@ -700,6 +701,7 @@ project(':compiler:ir.ir2cfg').projectDir = "$rootDir/compiler/ir/ir.ir2cfg" as project(':compiler:ir.objcinterop').projectDir = "$rootDir/compiler/ir/ir.objcinterop" as File project(':compiler:ir.backend.common').projectDir = "$rootDir/compiler/ir/backend.common" as File project(':compiler:ir.actualization').projectDir = "$rootDir/compiler/ir/ir.actualization" as File +project(':compiler:ir.inline').projectDir = "$rootDir/compiler/ir/ir.inline" as File project(':compiler:backend.js').projectDir = "$rootDir/compiler/ir/backend.js" as File project(':compiler:backend.wasm').projectDir = "$rootDir/compiler/ir/backend.wasm" as File project(':compiler:backend.jvm').projectDir = "$rootDir/compiler/ir/backend.jvm" as File