diff --git a/kotlin-native/build-tools/src/main/kotlin/org/jetbrains/kotlin/ExecutorService.kt b/kotlin-native/build-tools/src/main/kotlin/org/jetbrains/kotlin/ExecutorService.kt index e605a3a4fa8..fc7b3172fd7 100644 --- a/kotlin-native/build-tools/src/main/kotlin/org/jetbrains/kotlin/ExecutorService.kt +++ b/kotlin-native/build-tools/src/main/kotlin/org/jetbrains/kotlin/ExecutorService.kt @@ -229,7 +229,11 @@ private fun simulator(project: Project): ExecutorService = object : ExecutorServ require(configurables.targetTriple.isSimulator) { "${configurables.target} is not a simulator." } - require(HostManager.host.architecture == configurables.target.architecture) { + val compatibleArchs = when (HostManager.host.architecture) { + is Architecture.X64 -> listOf(Architecture.X64, Architecture.X86) + is Architecture.ARM64 -> listOf(Architecture.ARM64, Architecture.ARM32) + } + require(configurables.target.architecture in compatibleArchs) { "Can't run simulator with ${configurables.target.architecture} architecture." } }