aboutsummaryrefslogtreecommitdiff
path: root/src/AstGen.zig
diff options
context:
space:
mode:
authorLuuk de Gram <luuk@degram.dev>2022-03-02 22:18:45 +0100
committerAndrew Kelley <andrew@ziglang.org>2022-03-03 16:33:46 -0700
commitec4c30ae483e6700a1fd1d5edaadbb042790c52e (patch)
tree72a0cc5ffcf656a1654cd3adbf7fd3d6f06aa525 /src/AstGen.zig
parent0ea51f7f494cd84a48fd997b60196d6c4254ccac (diff)
downloadzig-ec4c30ae483e6700a1fd1d5edaadbb042790c52e.tar.gz
zig-ec4c30ae483e6700a1fd1d5edaadbb042790c52e.zip
wasm: Implement `@wasmMemorySize()` builtin
This implements the `wasmMemorySize` builtin, in Sema and the Wasm backend. The Stage2 implementation differs from stage1 in the way that `index` must be a comptime value. The stage1 variant is incorrect, as the index is part of the instruction encoding, and therefore, cannot be a runtime value.
Diffstat (limited to 'src/AstGen.zig')
-rw-r--r--src/AstGen.zig2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/AstGen.zig b/src/AstGen.zig
index 2fee02751c..a82d9dc360 100644
--- a/src/AstGen.zig
+++ b/src/AstGen.zig
@@ -7140,7 +7140,7 @@ fn builtinCall(
// zig fmt: on
.wasm_memory_size => {
- const operand = try expr(gz, scope, .{ .ty = .u32_type }, params[0]);
+ const operand = try comptimeExpr(gz, scope, .{ .ty = .u32_type }, params[0]);
const result = try gz.addExtendedPayload(.wasm_memory_size, Zir.Inst.UnNode{
.node = gz.nodeIndexToRelative(node),
.operand = operand,