aboutsummaryrefslogtreecommitdiff
path: root/src/codegen/llvm.zig
diff options
context:
space:
mode:
authorVeikka Tuominen <git@vexu.eu>2024-05-20 14:38:59 +0300
committerAndrew Kelley <andrew@ziglang.org>2024-05-22 09:48:52 -0400
commit0fb2015fd3422fc1df364995f9782dfe7255eccd (patch)
treed0e54ff758f3d391b1de6323b36ba2c64a2511fb /src/codegen/llvm.zig
parentd78968c1b589811c970ac57a4be52361cca2b5b1 (diff)
downloadzig-0fb2015fd3422fc1df364995f9782dfe7255eccd.tar.gz
zig-0fb2015fd3422fc1df364995f9782dfe7255eccd.zip
llvm: fix `@wasmMemory{Size,Grow}` for wasm64
Closes #19942
Diffstat (limited to 'src/codegen/llvm.zig')
-rw-r--r--src/codegen/llvm.zig6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig
index 4502fe1c30..9e51417ab6 100644
--- a/src/codegen/llvm.zig
+++ b/src/codegen/llvm.zig
@@ -7625,7 +7625,8 @@ pub const FuncGen = struct {
const o = self.dg.object;
const pl_op = self.air.instructions.items(.data)[@intFromEnum(inst)].pl_op;
const index = pl_op.payload;
- return self.wip.callIntrinsic(.normal, .none, .@"wasm.memory.size", &.{.i32}, &.{
+ const llvm_usize = try o.lowerType(Type.usize);
+ return self.wip.callIntrinsic(.normal, .none, .@"wasm.memory.size", &.{llvm_usize}, &.{
try o.builder.intValue(.i32, index),
}, "");
}
@@ -7634,7 +7635,8 @@ pub const FuncGen = struct {
const o = self.dg.object;
const pl_op = self.air.instructions.items(.data)[@intFromEnum(inst)].pl_op;
const index = pl_op.payload;
- return self.wip.callIntrinsic(.normal, .none, .@"wasm.memory.grow", &.{.i32}, &.{
+ const llvm_isize = try o.lowerType(Type.isize);
+ return self.wip.callIntrinsic(.normal, .none, .@"wasm.memory.grow", &.{llvm_isize}, &.{
try o.builder.intValue(.i32, index), try self.resolveInst(pl_op.operand),
}, "");
}