Revert "Add a key to enable spilling of all variables in a suspending context"

This reverts commit 38d97d0621.
This commit is contained in:
Nikolay Krasko
2022-07-05 11:26:09 +02:00
committed by teamcity
parent d080297c20
commit c6299ee277
5 changed files with 9 additions and 31 deletions
@@ -13,7 +13,6 @@ import org.jetbrains.kotlin.backend.jvm.unboxInlineClass
import org.jetbrains.kotlin.codegen.ClassBuilder
import org.jetbrains.kotlin.codegen.coroutines.CoroutineTransformerMethodVisitor
import org.jetbrains.kotlin.codegen.coroutines.reportSuspensionPointInsideMonitor
import org.jetbrains.kotlin.config.JVMConfigurationKeys
import org.jetbrains.kotlin.config.LanguageFeature
import org.jetbrains.kotlin.ir.declarations.*
import org.jetbrains.kotlin.ir.expressions.IrBlockBody
@@ -37,14 +36,13 @@ internal fun MethodNode.acceptWithStateMachine(
varsCountByType: Map<Type, Int>,
obtainContinuationClassBuilder: () -> ClassBuilder,
) {
val context = classCodegen.context
val state = context.state
val state = classCodegen.context.state
val languageVersionSettings = state.languageVersionSettings
assert(languageVersionSettings.supportsFeature(LanguageFeature.ReleaseCoroutines)) { "Experimental coroutines are unsupported in JVM_IR backend" }
val element = if (irFunction.isSuspend)
irFunction.psiElement ?: classCodegen.irClass.psiElement
else
context.suspendLambdaToOriginalFunctionMap[classCodegen.irClass.attributeOwnerId]!!.psiElement
classCodegen.context.suspendLambdaToOriginalFunctionMap[classCodegen.irClass.attributeOwnerId]!!.psiElement
val lineNumber = if (irFunction.isSuspend) {
val irFile = irFunction.file
@@ -76,7 +74,6 @@ internal fun MethodNode.acceptWithStateMachine(
internalNameForDispatchReceiver = classCodegen.type.internalName,
putContinuationParameterToLvt = false,
initialVarsCountByType = varsCountByType,
shouldOptimiseUnusedVariables = !context.configuration.getBoolean(JVMConfigurationKeys.ENABLE_DEBUG_MODE)
)
accept(visitor)
}