JVM_IR: introduce modes for IR serialization

Instead of a Boolean flag -Xserialize-ir, use modes: none,inline,all.
In "inline" mode, only information needed to deserialize bodies of inline
functions is serialized.
In the "all" mode, all declarations are serialized completely.
This commit is contained in:
Georgy Bronnikov
2021-09-09 13:35:23 +03:00
committed by TeamCityServer
parent f760cd6736
commit 4caa71538d
12 changed files with 55 additions and 16 deletions
@@ -39,6 +39,11 @@ private val patterns = buildList {
"USE_OLD_INLINE_CLASSES_MANGLING_SCHEME",
JVMConfigurationKeys.USE_OLD_INLINE_CLASSES_MANGLING_SCHEME,
)
createPattern(
"SERIALIZE_IR",
JVMConfigurationKeys.SERIALIZE_IR,
JvmSerializeIrMode.Companion::fromString,
)
}
private sealed class PatternWithExtractor<E : Any> {