[K/N] Enable new mm for native by default

This commit is contained in:
Pavel Kunyavskiy
2022-05-02 15:44:20 +02:00
committed by Space
parent b739344b1c
commit 9801a21abb
15 changed files with 145 additions and 102 deletions
@@ -173,7 +173,7 @@ private object NativeTestSupport {
)
private fun computeMemoryModel(enforcedProperties: EnforcedProperties): MemoryModel =
ClassLevelProperty.MEMORY_MODEL.readValue(enforcedProperties, MemoryModel.values(), default = MemoryModel.DEFAULT)
ClassLevelProperty.MEMORY_MODEL.readValue(enforcedProperties, MemoryModel.values(), default = MemoryModel.EXPERIMENTAL)
private fun computeThreadStateChecker(enforcedProperties: EnforcedProperties): ThreadStateChecker {
val useThreadStateChecker =
@@ -89,7 +89,11 @@ internal enum class OptimizationMode(private val description: String, val compil
* The Kotlin/Native memory model.
*/
internal enum class MemoryModel(val compilerFlags: List<String>?) {
DEFAULT(null),
/**
* TODO: rename DEFAULT to LEGACY. It was postponed, as it would require simultaneous change in teamcity configuration
* but it should be done at some point.
*/
DEFAULT(listOf("-memory-model", "strict")),
EXPERIMENTAL(listOf("-memory-model", "experimental"));
override fun toString() = compilerFlags?.joinToString(prefix = "(", separator = " ", postfix = ")").orEmpty()