pass the pointer to shared memory around, instead of using a global

This commit is contained in:
Folkert 2022-12-08 23:22:06 +01:00
parent 8307a194e1
commit 95fe9cbccd
No known key found for this signature in database
GPG key ID: 1F17F6FFD112B97C
6 changed files with 68 additions and 55 deletions

View file

@ -1126,16 +1126,19 @@ pub(crate) fn run_low_level<'a, 'ctx, 'env>(
if env.mode.runs_expects() {
let region = unsafe { std::mem::transmute::<_, roc_region::all::Region>(args[0]) };
let shared_memory = crate::llvm::expect::SharedMemoryPointer::get(env);
crate::llvm::expect::clone_to_shared_memory(
env,
scope,
layout_ids,
&shared_memory,
args[0],
region,
&[args[0]],
);
crate::llvm::expect::send_dbg(env);
crate::llvm::expect::notify_parent_dbg(env, &shared_memory);
}
condition