From 23a27864e5ac6de03c40b1191b7c5b29b0708c28 Mon Sep 17 00:00:00 2001 From: Ilya Chernikov Date: Tue, 20 Dec 2022 16:32:42 +0100 Subject: [PATCH] K2: introduce LT mode config property --- compiler/cli/src/org/jetbrains/kotlin/cli/common/arguments.kt | 1 + compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt | 2 +- .../src/org/jetbrains/kotlin/config/CommonConfigurationKeys.kt | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/common/arguments.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/common/arguments.kt index df173dbf0af..c3b1c54ccb8 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/common/arguments.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/common/arguments.kt @@ -23,6 +23,7 @@ fun CompilerConfiguration.setupCommonArguments( ) { put(CommonConfigurationKeys.DISABLE_INLINE, arguments.noInline) put(CommonConfigurationKeys.USE_FIR, arguments.useK2) + put(CommonConfigurationKeys.USE_LIGHT_TREE, arguments.useFirLT) put(CommonConfigurationKeys.USE_FIR_EXTENDED_CHECKERS, arguments.useFirExtendedCheckers) put(CommonConfigurationKeys.EXPECT_ACTUAL_LINKER, arguments.expectActualLinker) putIfNotNull(CLIConfigurationKeys.INTELLIJ_PLUGIN_ROOT, arguments.intellijPluginRoot) diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt index 3a217ac65f0..04cfc182a7c 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt @@ -142,7 +142,7 @@ class K2JVMCompiler : CLICompiler() { val targetDescription = chunk.map { input -> input.getModuleName() + "-" + input.getModuleType() }.let { names -> names.singleOrNull() ?: names.joinToString() } - if (configuration.getBoolean(CommonConfigurationKeys.USE_FIR) && arguments.useFirLT /* TODO: consider storing in the configuration instead of using args here directly */) { + if (configuration.getBoolean(CommonConfigurationKeys.USE_FIR) && configuration.getBoolean(CommonConfigurationKeys.USE_LIGHT_TREE)) { val projectEnvironment = createProjectEnvironment(configuration, rootDisposable, EnvironmentConfigFiles.JVM_CONFIG_FILES, messageCollector) diff --git a/compiler/config/src/org/jetbrains/kotlin/config/CommonConfigurationKeys.kt b/compiler/config/src/org/jetbrains/kotlin/config/CommonConfigurationKeys.kt index c6de3c868c3..3da2ba7c670 100644 --- a/compiler/config/src/org/jetbrains/kotlin/config/CommonConfigurationKeys.kt +++ b/compiler/config/src/org/jetbrains/kotlin/config/CommonConfigurationKeys.kt @@ -53,6 +53,9 @@ object CommonConfigurationKeys { @JvmField val USE_FIR = CompilerConfigurationKey.create("front-end IR") + @JvmField + val USE_LIGHT_TREE = CompilerConfigurationKey.create("light tree") + @JvmField val EXPECT_ACTUAL_LINKER = CompilerConfigurationKey.create("Experimental expect/actual linker")