[IR] Drop alwaysCreateTemporaryVariablesForArguments from inliner

This parameter was always set to be true.

#KT-66509
This commit is contained in:
Ivan Kylchik
2024-03-12 12:20:33 +01:00
committed by Space Team
parent 75c87dd858
commit 3ee126de74
5 changed files with 2 additions and 11 deletions
@@ -207,7 +207,6 @@ private val functionInliningPhase = makeIrModulePhase(
it, it,
JsInlineFunctionResolver(it), JsInlineFunctionResolver(it),
it.innerClassesSupport, it.innerClassesSupport,
alwaysCreateTemporaryVariablesForArguments = true,
inlineArgumentsWithOriginalOffset = true, inlineArgumentsWithOriginalOffset = true,
) )
}, },
@@ -297,7 +297,6 @@ internal val functionInliningPhase = makeIrModulePhase(
FunctionInlining( FunctionInlining(
context, context,
innerClassesSupport = context.innerClassesSupport, innerClassesSupport = context.innerClassesSupport,
alwaysCreateTemporaryVariablesForArguments = true,
regenerateInlinedAnonymousObjects = true, regenerateInlinedAnonymousObjects = true,
inlineArgumentsWithOriginalOffset = true inlineArgumentsWithOriginalOffset = true
) )
@@ -139,7 +139,6 @@ private val functionInliningPhase = makeCustomPhase<WasmBackendContext>(
inlineFunctionResolver = WasmInlineFunctionResolver(context), inlineFunctionResolver = WasmInlineFunctionResolver(context),
innerClassesSupport = context.innerClassesSupport, innerClassesSupport = context.innerClassesSupport,
insertAdditionalImplicitCasts = true, insertAdditionalImplicitCasts = true,
alwaysCreateTemporaryVariablesForArguments = true
).inline(module) ).inline(module)
module.patchDeclarationParents() module.patchDeclarationParents()
}, },
@@ -80,7 +80,6 @@ class FunctionInlining(
private val inlineFunctionResolver: InlineFunctionResolver = InlineFunctionResolver.TRIVIAL, private val inlineFunctionResolver: InlineFunctionResolver = InlineFunctionResolver.TRIVIAL,
private val innerClassesSupport: InnerClassesSupport? = null, private val innerClassesSupport: InnerClassesSupport? = null,
private val insertAdditionalImplicitCasts: Boolean = false, private val insertAdditionalImplicitCasts: Boolean = false,
private val alwaysCreateTemporaryVariablesForArguments: Boolean = false,
private val regenerateInlinedAnonymousObjects: Boolean = false, private val regenerateInlinedAnonymousObjects: Boolean = false,
private val inlineArgumentsWithOriginalOffset: Boolean = false, private val inlineArgumentsWithOriginalOffset: Boolean = false,
) : IrElementTransformerVoidWithContext(), BodyLoweringPass { ) : IrElementTransformerVoidWithContext(), BodyLoweringPass {
@@ -769,9 +768,7 @@ class FunctionInlining(
// Arguments may reference the previous ones - substitute them. // Arguments may reference the previous ones - substitute them.
val variableInitializer = argument.argumentExpression.transform(substitutor, data = null) val variableInitializer = argument.argumentExpression.transform(substitutor, data = null)
val shouldCreateTemporaryVariable = val shouldCreateTemporaryVariable = !parameter.isInlineParameter() || argument.shouldBeSubstitutedViaTemporaryVariable()
(alwaysCreateTemporaryVariablesForArguments && !parameter.isInlineParameter()) ||
argument.shouldBeSubstitutedViaTemporaryVariable()
if (shouldCreateTemporaryVariable) { if (shouldCreateTemporaryVariable) {
val newVariable = createTemporaryVariable(parameter, variableInitializer, argument.isDefaultArg, callee) val newVariable = createTemporaryVariable(parameter, variableInitializer, argument.isDefaultArg, callee)
@@ -835,9 +832,7 @@ class FunctionInlining(
} }
) )
if (alwaysCreateTemporaryVariablesForArguments) { variable.name = Name.identifier(parameter.name.asStringStripSpecialMarkers())
variable.name = Name.identifier(parameter.name.asStringStripSpecialMarkers())
}
return variable return variable
} }
@@ -347,7 +347,6 @@ private val inlinePhase = createFileLoweringPhase(
FunctionInlining( FunctionInlining(
context.context, context.context,
NativeInlineFunctionResolver(context.context, context), NativeInlineFunctionResolver(context.context, context),
alwaysCreateTemporaryVariablesForArguments = true,
insertAdditionalImplicitCasts = true, insertAdditionalImplicitCasts = true,
).lower(irFile) ).lower(irFile)
} }