Skip to content

Commit

Permalink
[IR] Drop valueArgumentsCount from IrConstructorCallImpl
Browse files Browse the repository at this point in the history
KT-70057
  • Loading branch information
mcpiroman authored and goodwinnk committed Sep 5, 2024
1 parent 95ef67f commit f486810
Show file tree
Hide file tree
Showing 23 changed files with 9 additions and 38 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,6 @@ class Fir2IrBuiltinSymbolsContainer(
constructorSymbol,
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 0,
)
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -377,7 +377,6 @@ class IrBuiltInsOverFir(
constructorSymbol,
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 0,
)

annotationCall
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -873,7 +873,7 @@ class CallAndReferenceGenerator(
@OptIn(UnsafeDuringIrConstructionAPI::class) // Error class constructor is already created, see IrErrorClassImpl.
IrConstructorCallImpl(
startOffset, endOffset, type, type.symbol.owner.primaryConstructor!!.symbol,
valueArgumentsCount = 0, typeArgumentsCount = 0, constructorTypeArgumentsCount = 0,
typeArgumentsCount = 0, constructorTypeArgumentsCount = 0,
source = FirAnnotationSourceElement(annotation),
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -416,7 +416,6 @@ class IrValidatorTest {
symbol = annotationConstructor.symbol,
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 0,
)
)
file2.addChild(annotatedClass)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,6 @@ object JsIrBuilder {
target,
typeArgumentsCount = irClass.typeParameters.size,
constructorTypeArgumentsCount = owner.typeParameters.size,
valueArgumentsCount = owner.valueParameters.size,
origin = origin
).apply {
typeArguments?.let {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,6 @@ class CallableReferenceLowering(private val context: JsCommonBackendContext) : B
startOffset, endOffset, type, ctor.symbol,
typeArgumentsCount = 0, /*TODO: properly set type arguments*/
constructorTypeArgumentsCount = 0,
valueArgumentsCount = vpCount,
origin = JsStatementOrigins.CALLABLE_REFERENCE_CREATE
).apply {
boundReceiver?.let {
Expand Down Expand Up @@ -323,7 +322,6 @@ class CallableReferenceLowering(private val context: JsCommonBackendContext) : B
callee.symbol,
callee.countContextTypeParameters(),
callee.typeParameters.size,
callee.valueParameters.size,
JsStatementOrigins.CALLABLE_REFERENCE_INVOKE
)
is IrSimpleFunction ->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -535,8 +535,7 @@ class InteropCallableReferenceLowering(val context: JsIrBackendContext) : BodyLo
lambdaType,
constructor.symbol,
lambdaInfo.lambdaClass.typeParameters.size,
constructor.typeParameters.size,
constructor.valueParameters.size
constructor.typeParameters.size
)

for ((i, vp) in factoryFunction.valueParameters.withIndex()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,8 +101,7 @@ internal class DirectInvokeLowering(private val context: JvmBackendContext) : Fi
IrConstructorCallImpl(
expression.startOffset, expression.endOffset, expression.type, irFun.symbol,
typeArgumentsCount = irFun.typeParameters.size,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = irFun.valueParameters.size
constructorTypeArgumentsCount = 0
).apply {
copyReceiverAndValueArgumentsForDirectInvoke(receiver, expression)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,6 @@ class BuiltInsLowering(val context: WasmBackendContext) : FileLoweringPass {
type = kclassConstructor.returnType,
symbol = kclassConstructor.symbol,
typeArgumentsCount = 1,
valueArgumentsCount = 1,
constructorTypeArgumentsCount = 0
).also {
it.putClassTypeArgument(0, type)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,7 @@ class WasmSharedVariablesManager(val context: WasmBackendContext) : SharedVariab
type = boxClass.defaultType,
symbol = constructorSymbol,
typeArgumentsCount = boxClass.owner.typeParameters.size,
constructorTypeArgumentsCount = constructorSymbol.owner.typeParameters.size,
valueArgumentsCount = constructorSymbol.owner.valueParameters.size
constructorTypeArgumentsCount = constructorSymbol.owner.typeParameters.size
).apply {
putValueArgument(0, initializer)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,6 @@ internal open class ActualizerVisitor(private val symbolRemapper: SymbolRemapper
constructorSymbol,
expression.typeArgumentsCount,
expression.constructorTypeArgumentsCount,
valueArgumentsCount,
mapStatementOrigin(expression.origin),
).apply {
copyRemappedTypeArgumentsFrom(expression)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -260,7 +260,6 @@ fun IrBuilderWithScope.irCall(
): IrConstructorCall =
IrConstructorCallImpl(
startOffset, endOffset, type, callee,
valueArgumentsCount = callee.owner.valueParameters.size,
typeArgumentsCount = callee.owner.typeParameters.size + constructedClass.typeParameters.size,
constructorTypeArgumentsCount = callee.owner.typeParameters.size
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -841,9 +841,9 @@ fun IrConstructorCallImpl(
symbol: IrConstructorSymbol,
typeArgumentsCount: Int,
constructorTypeArgumentsCount: Int,
valueArgumentsCount: Int = symbol.owner.valueParameters.size,
origin: IrStatementOrigin? = null,
source: SourceElement = SourceElement.NO_SOURCE,
valueArgumentsCount: Int = symbol.owner.valueParameters.size,
): IrConstructorCallImpl = IrConstructorCallImplWithShape(
startOffset = startOffset,
endOffset = endOffset,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -518,7 +518,6 @@ fun irConstructorCall(
symbol = newSymbol,
typeArgumentsCount = typeArgumentsCount,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = call.valueArgumentsCount,
origin = origin
).apply {
copyTypeAndValueArgumentsFrom(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -262,7 +262,6 @@ class AtomicfuJsIrTransformer(private val context: IrPluginContext) {
arrayConstructorSymbol.owner.returnType, arrayConstructorSymbol,
typeArgumentsCount = arrayConstructorSymbol.owner.typeParameters.size,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 1
).apply {
putValueArgument(0, size)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,6 @@ class ClassStabilityTransformer(
StabilityInferredClass.constructors.first(),
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 1,
origin = null
).also {
it.putValueArgument(0, irConst(parameterMask))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -516,7 +516,6 @@ class ComposableTargetAnnotationsTransformer(
classSymbol.constructors.first(),
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 1,
origin = null
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,11 @@ import androidx.compose.compiler.plugins.kotlin.hasComposableAnnotation
import androidx.compose.compiler.plugins.kotlin.isComposableAnnotation
import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext
import org.jetbrains.kotlin.backend.common.extensions.IrPluginContextImpl
import org.jetbrains.kotlin.backend.common.peek
import org.jetbrains.kotlin.backend.common.pop
import org.jetbrains.kotlin.builtins.StandardNames
import org.jetbrains.kotlin.ir.builders.declarations.addValueParameter
import org.jetbrains.kotlin.ir.declarations.*
import org.jetbrains.kotlin.ir.expressions.*
import org.jetbrains.kotlin.ir.expressions.impl.IrCallImpl
import org.jetbrains.kotlin.ir.expressions.impl.IrCallImplWithShape
import org.jetbrains.kotlin.ir.expressions.impl.IrConstructorCallImpl
import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol
Expand Down Expand Up @@ -145,7 +143,6 @@ internal class DeepCopyIrTreeWithRemappedComposableTypes(
newCallee,
expression.typeArgumentsCount,
expression.constructorTypeArgumentsCount,
expression.valueArgumentsCount,
mapStatementOrigin(expression.origin)
).apply {
copyRemappedTypeArgumentsFrom(expression)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -178,8 +178,7 @@ class ComposerParamTransformer(
type = composableIrClass.defaultType,
symbol = composableIrClass.primaryConstructor!!.symbol,
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 0
constructorTypeArgumentsCount = 0
)

fun IrCall.withComposerParamIfNeeded(composerParam: IrValueParameter): IrCall {
Expand Down Expand Up @@ -320,7 +319,6 @@ class ComposerParamTransformer(
ctor,
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 1,
origin = null
).also {
it.putValueArgument(0, underlyingType.defaultValue(startOffset, endOffset))
Expand Down Expand Up @@ -436,7 +434,6 @@ class ComposerParamTransformer(
symbol = ctor,
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 1,
).also {
it.putValueArgument(
0,
Expand Down Expand Up @@ -699,7 +696,6 @@ class ComposerParamTransformer(
symbol = jvmSyntheticIrClass.primaryConstructor!!.symbol,
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 0,
)
copy.body = context.irFactory.createBlockBody(UNDEFINED_OFFSET, UNDEFINED_OFFSET) {
statements.add(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,6 @@ class DurableFunctionKeyTransformer(
keyMetaAnnotation.constructors.single(),
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 3
).apply {
putValueArgument(0, irConst(key.key.hashCode()))
putValueArgument(1, irConst(key.startOffset))
Expand All @@ -189,7 +188,6 @@ class DurableFunctionKeyTransformer(
metaClassAnnotation.constructors.single(),
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 1
).apply {
putValueArgument(0, irConst(file))
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -214,8 +214,7 @@ open class LiveLiteralTransformer(
liveLiteralInfoAnnotation.defaultType,
liveLiteralInfoAnnotation.constructors.single(),
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 2
constructorTypeArgumentsCount = 0
).apply {
putValueArgument(0, irConst(key))
putValueArgument(1, irConst(offset))
Expand All @@ -229,8 +228,7 @@ open class LiveLiteralTransformer(
liveLiteralFileInfoAnnotation.defaultType,
liveLiteralFileInfoAnnotation.constructors.single(),
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 1
constructorTypeArgumentsCount = 0
).apply {
putValueArgument(0, irConst(file))
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,7 @@ abstract class AbstractTransformerForGenerator(
constructedType,
constructor.symbol,
typeArgumentsCount = 0,
constructorTypeArgumentsCount = 0,
valueArgumentsCount = 0
constructorTypeArgumentsCount = 0
)
val returnStatement = IrReturnImpl(-1, -1, irBuiltIns.nothingType, function.symbol, constructorCall)
return irFactory.createBlockBody(-1, -1, listOf(returnStatement))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,6 @@ abstract class BaseIrGenerator(private val currentClass: IrClass, final override
jsExportIgnoreCtor.symbol,
jsExportIgnore.typeParameters.size,
jsExportIgnoreCtor.typeParameters.size,
jsExportIgnoreCtor.valueParameters.size,
)
}

Expand Down

0 comments on commit f486810

Please sign in to comment.