From 3967bd27552c2d3198eac2778cabb4872e21b2e7 Mon Sep 17 00:00:00 2001 From: Zalim Bashorov Date: Tue, 13 Dec 2022 19:06:14 +0100 Subject: [PATCH] [Wasm] Require location for `buildSetGlobal` and fix all usages --- .../jetbrains/kotlin/backend/wasm/ir2wasm/BodyGenerator.kt | 2 +- .../src/org/jetbrains/kotlin/wasm/ir/WasmExpressionBuilder.kt | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/ir2wasm/BodyGenerator.kt b/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/ir2wasm/BodyGenerator.kt index d451c0c564d..b88a8b65fc3 100644 --- a/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/ir2wasm/BodyGenerator.kt +++ b/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/ir2wasm/BodyGenerator.kt @@ -229,7 +229,7 @@ class BodyGenerator( body.commentPreviousInstr { "name: ${field.name}, type: ${field.type.render()}" } } else { generateExpression(expression.value) - body.buildSetGlobal(context.referenceGlobalField(expression.symbol)) + body.buildSetGlobal(context.referenceGlobalField(expression.symbol), expression.getSourceLocation()) body.commentPreviousInstr { "type: ${field.type.render()}" } } diff --git a/wasm/wasm.ir/src/org/jetbrains/kotlin/wasm/ir/WasmExpressionBuilder.kt b/wasm/wasm.ir/src/org/jetbrains/kotlin/wasm/ir/WasmExpressionBuilder.kt index c0d90719dad..34da4f78cae 100644 --- a/wasm/wasm.ir/src/org/jetbrains/kotlin/wasm/ir/WasmExpressionBuilder.kt +++ b/wasm/wasm.ir/src/org/jetbrains/kotlin/wasm/ir/WasmExpressionBuilder.kt @@ -141,8 +141,8 @@ abstract class WasmExpressionBuilder { buildInstr(WasmOp.GLOBAL_GET, location, WasmImmediate.GlobalIdx(global)) } - fun buildSetGlobal(global: WasmSymbol) { - buildInstr(WasmOp.GLOBAL_SET, WasmImmediate.GlobalIdx(global)) + fun buildSetGlobal(global: WasmSymbol, location: SourceLocation) { + buildInstr(WasmOp.GLOBAL_SET, location, WasmImmediate.GlobalIdx(global)) } fun buildStructGet(struct: WasmSymbol, fieldId: WasmSymbol) {