[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,
JsInlineFunctionResolver(it),
it.innerClassesSupport,
alwaysCreateTemporaryVariablesForArguments = true,
inlineArgumentsWithOriginalOffset = true,
)
},
@@ -297,7 +297,6 @@ internal val functionInliningPhase = makeIrModulePhase(
FunctionInlining(
context,
innerClassesSupport = context.innerClassesSupport,
alwaysCreateTemporaryVariablesForArguments = true,
regenerateInlinedAnonymousObjects = true,
inlineArgumentsWithOriginalOffset = true
)
@@ -139,7 +139,6 @@ private val functionInliningPhase = makeCustomPhase<WasmBackendContext>(
inlineFunctionResolver = WasmInlineFunctionResolver(context),
innerClassesSupport = context.innerClassesSupport,
insertAdditionalImplicitCasts = true,
alwaysCreateTemporaryVariablesForArguments = true
).inline(module)
module.patchDeclarationParents()
},
@@ -80,7 +80,6 @@ class FunctionInlining(
private val inlineFunctionResolver: InlineFunctionResolver = InlineFunctionResolver.TRIVIAL,
private val innerClassesSupport: InnerClassesSupport? = null,
private val insertAdditionalImplicitCasts: Boolean = false,
private val alwaysCreateTemporaryVariablesForArguments: Boolean = false,
private val regenerateInlinedAnonymousObjects: Boolean = false,
private val inlineArgumentsWithOriginalOffset: Boolean = false,
) : IrElementTransformerVoidWithContext(), BodyLoweringPass {
@@ -769,9 +768,7 @@ class FunctionInlining(
// Arguments may reference the previous ones - substitute them.
val variableInitializer = argument.argumentExpression.transform(substitutor, data = null)
val shouldCreateTemporaryVariable =
(alwaysCreateTemporaryVariablesForArguments && !parameter.isInlineParameter()) ||
argument.shouldBeSubstitutedViaTemporaryVariable()
val shouldCreateTemporaryVariable = !parameter.isInlineParameter() || argument.shouldBeSubstitutedViaTemporaryVariable()
if (shouldCreateTemporaryVariable) {
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
}
@@ -347,7 +347,6 @@ private val inlinePhase = createFileLoweringPhase(
FunctionInlining(
context.context,
NativeInlineFunctionResolver(context.context, context),
alwaysCreateTemporaryVariablesForArguments = true,
insertAdditionalImplicitCasts = true,
).lower(irFile)
}