JVM_IR fix string concatenation performance issues

KT-50080 KT-50084 KT-50140
This commit is contained in:
Dmitry Petrov
2021-12-08 18:09:52 +03:00
committed by TeamCityServer
parent fa41e0f5a9
commit 3017397960
18 changed files with 451 additions and 34 deletions
@@ -81,10 +81,10 @@ class FlattenStringConcatenationLowering(val context: CommonBackendContext) : Fi
private val IrCall.isStringPlusCall: Boolean
get() {
val function = symbol.owner
val receiver = dispatchReceiver ?: extensionReceiver
val receiverParameter = function.dispatchReceiverParameter ?: function.extensionReceiverParameter
return receiver != null
&& receiver.type.isStringClassType()
return receiverParameter != null
&& receiverParameter.type.isStringClassType()
&& function.returnType.isStringClassType()
&& function.valueParameters.size == 1
&& function.name == OperatorNameConventions.PLUS