[IR] Drop alwaysCreateTemporaryVariablesForArguments from inliner
This parameter was always set to be true. #KT-66509
This commit is contained in:
@@ -207,7 +207,6 @@ private val functionInliningPhase = makeIrModulePhase(
|
||||
it,
|
||||
JsInlineFunctionResolver(it),
|
||||
it.innerClassesSupport,
|
||||
alwaysCreateTemporaryVariablesForArguments = true,
|
||||
inlineArgumentsWithOriginalOffset = true,
|
||||
)
|
||||
},
|
||||
|
||||
-1
@@ -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
|
||||
}
|
||||
|
||||
-1
@@ -347,7 +347,6 @@ private val inlinePhase = createFileLoweringPhase(
|
||||
FunctionInlining(
|
||||
context.context,
|
||||
NativeInlineFunctionResolver(context.context, context),
|
||||
alwaysCreateTemporaryVariablesForArguments = true,
|
||||
insertAdditionalImplicitCasts = true,
|
||||
).lower(irFile)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user