[PL] Change semantics of CLI parameter -Xpartial-linkage

This parameter accepts the name of the "mode" in which the partial linkage would work. Currently, only two options are supported: 'enable', 'disable'. But the list may be extended in the future as needed.

At the moment the 'disable' option is the default one. This will be changed in #KT-51447, #KT-51443.
This commit is contained in:
Dmitriy Dolovov
2023-03-29 19:43:40 +02:00
committed by Space Team
parent a450866db3
commit 46ed6e5766
8 changed files with 50 additions and 18 deletions
@@ -540,11 +540,11 @@ class K2JSCompilerArguments : CommonCompilerArguments() {
field = if (value.isNullOrEmpty()) null else value
}
@Argument(value = "-Xpartial-linkage", description = "Enable partial linkage mode")
var partialLinkage = false
@Argument(value = "-Xpartial-linkage", valueDescription = "{enable|disable}", description = "Use partial linkage mode")
var partialLinkageMode: String? = null
set(value) {
checkFrozen()
field = value
field = if (value.isNullOrEmpty()) null else value
}
@Argument(value = "-Xpartial-linkage-loglevel", valueDescription = "{info|warning|error}", description = "Partial linkage compile-time log level")
@@ -424,8 +424,12 @@ class K2NativeCompilerArguments : CommonCompilerArguments() {
@Argument(value = "-Xlazy-ir-for-caches", valueDescription = "{disable|enable}", description = "Use lazy IR for cached libraries")
var lazyIrForCaches: String? = null
@Argument(value = "-Xpartial-linkage", description = "Enable partial linkage mode")
var partialLinkage: Boolean = false
@Argument(value = "-Xpartial-linkage", valueDescription = "{enable|disable}", description = "Use partial linkage mode")
var partialLinkageMode: String? = null
set(value) {
checkFrozen()
field = if (value.isNullOrEmpty()) null else value
}
@Argument(value = "-Xpartial-linkage-loglevel", valueDescription = "{info|warning|error}", description = "Partial linkage compile-time log level")
var partialLinkageLogLevel: String? = null