DFG: Eliminate calls to <reinterpret>

This commit is contained in:
Igor Chevdar
2019-03-27 12:35:02 +03:00
parent c5430769de
commit 52c12dff82
@@ -409,6 +409,7 @@ internal class ModuleDFGBuilder(val context: Context, val irModule: IrModuleFrag
private val executeImplProducerClassSymbol = symbols.functions[0]
private val executeImplProducerInvoke = executeImplProducerClassSymbol.owner.simpleFunctions()
.single { it.name == OperatorNameConventions.INVOKE }
private val reinterpret = symbols.reinterpret
private inner class FunctionDFGBuilder(val expressionValuesExtractor: ExpressionValuesExtractor,
val variableValues: VariableValues,
@@ -590,6 +591,8 @@ internal class ModuleDFGBuilder(val context: Context, val irModule: IrModuleFrag
value.getTypeArgument(0)!!.getClass()!!
))
reinterpret -> getNode(value.extensionReceiver!!)
initInstanceSymbol -> {
val thiz = expressionToEdge(value.getValueArgument(0)!!)
val initializer = value.getValueArgument(1) as IrConstructorCall