[IR] Move property needsInlining into InlineFunctionResolver

#KT-64807 Fixed
This commit is contained in:
Ivan Kylchik
2024-02-20 14:48:56 +01:00
committed by Space Team
parent 9e7ddfa191
commit 96b5d47e68
3 changed files with 14 additions and 15 deletions
@@ -215,7 +215,6 @@ private val functionInliningPhase = makeIrModulePhase(
it.innerClassesSupport,
alwaysCreateTemporaryVariablesForArguments = true,
inlineArgumentsWithOriginalOffset = true,
allowExternalInlining = true
)
},
name = "FunctionInliningPhase",
@@ -32,6 +32,8 @@ internal class JsInlineFunctionResolver(context: JsIrBackendContext) : InlineFun
private val enumEntriesIntrinsic = context.intrinsics.enumEntriesIntrinsic
private val inlineFunctionsBeforeInlining = context.mapping.inlineFunctionsBeforeInlining
override val allowExternalInlining: Boolean = true
override fun shouldExcludeFunctionFromInlining(symbol: IrFunctionSymbol): Boolean {
// TODO: After the expect fun enumEntriesIntrinsic become non-inline function, the code will be removed
return symbol == enumEntriesIntrinsic || super.shouldExcludeFunctionFromInlining(symbol)