[WASM] Bootstrap std compatibility fix

This commit is contained in:
Igor Yakovlev
2022-04-22 16:44:05 +02:00
parent 526e99891a
commit 73a86fffe5
4 changed files with 51 additions and 5 deletions
@@ -173,7 +173,7 @@ class WasmSymbols(
val wasmClassId = getInternalFunction("wasmClassId")
val wasmInterfaceId = getInternalFunction("wasmInterfaceId")
val isInterface = getInternalFunction("isInterface")
val wasmIsInterface = getInternalFunction("wasmIsInterface")
val nullableEquals = getInternalFunction("nullableEquals")
val ensureNotNull = getInternalFunction("ensureNotNull")
@@ -402,7 +402,7 @@ class BodyGenerator(
body.buildConstI32Symbol(context.referenceInterfaceId(irInterface.symbol))
}
wasmSymbols.isInterface -> {
wasmSymbols.wasmIsInterface -> {
val irInterface = call.getTypeArgument(0)!!.getClass()
?: error("No interface given for wasmInterfaceId intrinsic")
assert(irInterface.isInterface)
@@ -300,7 +300,7 @@ class WasmBaseTypeOperatorTransformer(val context: WasmBackendContext) : IrEleme
}
private fun generateIsInterface(argument: IrExpression, toType: IrType): IrExpression {
return builder.irCall(symbols.isInterface).apply {
return builder.irCall(symbols.wasmIsInterface).apply {
putValueArgument(0, argument)
putTypeArgument(0, toType)
}