aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgingerBill <gingerBill@users.noreply.github.com>2024-04-06 22:51:58 +0100
committerGitHub <noreply@github.com>2024-04-06 22:51:58 +0100
commit352d526b94c91fbfe596cdbcf168d35e39271fd1 (patch)
tree9ad56a49e66bf45bfb58d5e65eb929918b242b75
parent83d3bc74b07eeffc2339a39540aac3b4a99aa3e5 (diff)
parentb150f49c464f2b3062306627ab277635383a24c7 (diff)
Merge pull request #3389 from laytan/fix-wasm-atomics
fix wasm atomics
-rw-r--r--src/llvm_backend_proc.cpp15
1 files changed, 5 insertions, 10 deletions
diff --git a/src/llvm_backend_proc.cpp b/src/llvm_backend_proc.cpp
index 8ce116715..bb4aed3f1 100644
--- a/src/llvm_backend_proc.cpp
+++ b/src/llvm_backend_proc.cpp
@@ -3059,9 +3059,6 @@ gb_internal lbValue lb_build_builtin_proc(lbProcedure *p, Ast *expr, TypeAndValu
case BuiltinProc_wasm_memory_atomic_wait32:
{
char const *name = "llvm.wasm.memory.atomic.wait32";
- LLVMTypeRef types[1] = {
- lb_type(p->module, t_u32),
- };
Type *t_u32_ptr = alloc_type_pointer(t_u32);
@@ -3072,26 +3069,24 @@ gb_internal lbValue lb_build_builtin_proc(lbProcedure *p, Ast *expr, TypeAndValu
lbValue res = {};
res.type = tv.type;
- res.value = lb_call_intrinsic(p, name, args, gb_count_of(args), types, gb_count_of(types));
+ res.value = lb_call_intrinsic(p, name, args, gb_count_of(args), nullptr, 0);
return res;
}
case BuiltinProc_wasm_memory_atomic_notify32:
{
char const *name = "llvm.wasm.memory.atomic.notify";
- LLVMTypeRef types[1] = {
- lb_type(p->module, t_u32),
- };
Type *t_u32_ptr = alloc_type_pointer(t_u32);
LLVMValueRef args[2] = {
- lb_emit_conv(p, lb_build_expr(p, ce->args[0]), t_u32_ptr).value,
- lb_emit_conv(p, lb_build_expr(p, ce->args[1]), t_u32).value };
+ lb_emit_conv(p, lb_build_expr(p, ce->args[0]), t_u32_ptr).value,
+ lb_emit_conv(p, lb_build_expr(p, ce->args[1]), t_u32).value
+ };
lbValue res = {};
res.type = tv.type;
- res.value = lb_call_intrinsic(p, name, args, gb_count_of(args), types, gb_count_of(types));
+ res.value = lb_call_intrinsic(p, name, args, gb_count_of(args), nullptr, 0);
return res;
}