HigherOrderCO / HVM

A massively parallel, optimal functional runtime in Rust

Home Page:https://higherorderco.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Race condition at non-atomic store in `alloc_body`

Boscop opened this issue · comments

commented

There's a race condition at the non-atomic store in alloc_body:

*heap.node.get_unchecked(host + j).as_ptr() = ptr;

E.g.:
test.hvm:

(Main n) = (Sum 0 0 n)

// Sums all the numbers in the (a .. b) range.
(Sum 1 a b) = a
(Sum 0 a b) =
  let m = (/ (+ a b) 2)
  let n = (+ m 1)
  let l = (Sum (== a m) a m)
  let r = (Sum (== n b) n b)
  (+ l r)

RUSTFLAGS=-Zsanitizer=thread RUSTDOCFLAGS=-Zsanitizer=thread cargo run -Zbuild-std --target x86_64-unknown-linux-gnu -- run -f test.hvm "(Main 100)"

    Finished dev [unoptimized + debuginfo] target(s) in 0.05s
     Running `target/x86_64-unknown-linux-gnu/debug/hvm run -f tmp/test.hvm '(Main 100)'`
==================
WARNING: ThreadSanitizer: data race (pid=4167)
  Atomic read of size 8 at 0x7bc400002240 by thread T4:
    #0 core::sync::atomic::atomic_load::h5a0b0467b1abe41b /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/sync/atomic.rs:3153:24 (hvm+0x8102d1) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #1 core::sync::atomic::AtomicU64::load::h30c767234ee1ca07 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/sync/atomic.rs:2258:26 (hvm+0x11c7dc) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #2 hvm::runtime::base::memory::load_ptr::h7ec60c974a058594 /home/me/proj/HOC/HVM/src/runtime/base/memory.rs:350:12 (hvm+0x130249) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #3 hvm::runtime::base::reducer::reducer::h9be9fedc586d0d5c /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:113:22 (hvm+0x160380) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #4 hvm::runtime::base::reducer::reduce::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::he03cd4ba623e0e6c /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:57:9 (hvm+0x217e4c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #5 std::sys_common::backtrace::__rust_begin_short_backtrace::h838464946903fb6b /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:134:18 (hvm+0x1aa79c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #6 std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::ha4ae533c022fff40 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:529:17 (hvm+0x12ddf5) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #7 _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::heb566d85abfb7c9d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:271:9 (hvm+0x16ba05) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #8 std::panicking::try::do_call::h2d06111ef391a354 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0xd321a) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #9 __rust_try 166mgnz17ijvx1dn (hvm+0xd3588) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #10 std::panicking::try::hf0ae43041346682c /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0xd3112) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #11 std::panic::catch_unwind::he72938c3ca806d9d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x11ca9c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #12 std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::h85753627f9247a27 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:528:30 (hvm+0x12db3d) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #13 core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h9f1155d3b15d8307 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5 (hvm+0x19a9e1) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #14 _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h94681981d5c9c8b3 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1985:9 (hvm+0x621b64) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #15 _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h183b818accc6915c /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1985:9 (hvm+0x621a9e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #16 std::sys::unix::thread::Thread::new::thread_start::h7af8860040a55c8e /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:108:17 (hvm+0x63baba) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)

  Previous write of size 8 at 0x7bc400002240 by thread T1:
    #0 hvm::runtime::base::program::alloc_body::h936e274197c51d8e /home/me/proj/HOC/HVM/src/runtime/base/program.rs:187:11 (hvm+0x20847d) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #1 hvm::runtime::rule::fun::apply::hd5c6ede2be4bb9cc /home/me/proj/HOC/HVM/src/runtime/rule/fun.rs:134:18 (hvm+0x169626) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #2 hvm::runtime::base::reducer::reducer::h9be9fedc586d0d5c /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:216:24 (hvm+0x169626)
    #3 hvm::runtime::base::reducer::reduce::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::he03cd4ba623e0e6c /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:57:9 (hvm+0x217e4c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #4 std::sys_common::backtrace::__rust_begin_short_backtrace::h838464946903fb6b /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:134:18 (hvm+0x1aa79c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #5 std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::ha4ae533c022fff40 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:529:17 (hvm+0x12ddf5) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #6 _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::heb566d85abfb7c9d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:271:9 (hvm+0x16ba05) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #7 std::panicking::try::do_call::h2d06111ef391a354 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0xd321a) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #8 __rust_try 166mgnz17ijvx1dn (hvm+0xd3588) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #9 std::panicking::try::hf0ae43041346682c /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0xd3112) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #10 std::panic::catch_unwind::he72938c3ca806d9d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x11ca9c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #11 std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::h85753627f9247a27 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:528:30 (hvm+0x12db3d) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #12 core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h9f1155d3b15d8307 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5 (hvm+0x19a9e1) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #13 _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h94681981d5c9c8b3 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1985:9 (hvm+0x621b64) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #14 _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h183b818accc6915c /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1985:9 (hvm+0x621a9e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #15 std::sys::unix::thread::Thread::new::thread_start::h7af8860040a55c8e /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:108:17 (hvm+0x63baba) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)

  Location is heap block of size 80000 at 0x7bc400000000 allocated by main thread:
    #0 calloc /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:712:5 (hvm+0x42696) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #1 std::sys::unix::alloc::_$LT$impl$u20$core..alloc..global..GlobalAlloc$u20$for$u20$std..alloc..System$GT$::alloc_zeroed::hef0c68866b28b2d8 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/alloc.rs:30:13 (hvm+0x612492) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #2 __rdl_alloc_zeroed /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/alloc.rs:413:13 (hvm+0x65c8c7) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #3 alloc::alloc::alloc_zeroed::hbe86fd8a490ef6ab /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:164:14 (hvm+0x1b37ed) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #4 alloc::alloc::Global::alloc_impl::h1063602b30d4a424 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:175:43 (hvm+0x1b3b0f) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #5 _$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$::allocate_zeroed::he1cb49f739b90dee /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:240:9 (hvm+0x1b3e94) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #6 alloc::raw_vec::RawVec$LT$T$C$A$GT$::allocate_in::h84d04c40715c1026 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/raw_vec.rs:185:38 (hvm+0x14d39d) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #7 alloc::raw_vec::RawVec$LT$T$C$A$GT$::with_capacity_zeroed_in::h582fca4a5a1eee73 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/raw_vec.rs:138:9 (hvm+0x15aecb) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #8 _$LT$T$u20$as$u20$alloc..vec..spec_from_elem..SpecFromElem$GT$::from_elem::h4d79f72cb2bd67a8 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/spec_from_elem.rs:25:31 (hvm+0xf69c3) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #9 alloc::vec::from_elem::h3759a6c913cd14ec /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/mod.rs:2550:5 (hvm+0x145aef) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #10 hvm::runtime::base::memory::new_atomic_u64_array::h854614469ce6100f /home/me/proj/HOC/HVM/src/runtime/base/memory.rs:396:55 (hvm+0x1307ba) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #11 hvm::runtime::base::memory::new_heap::he7a9fc1bd0843746 /home/me/proj/HOC/HVM/src/runtime/base/memory.rs:417:14 (hvm+0x130a41) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #12 hvm::api::eval::h631fbd8dedc3c834 /home/me/proj/HOC/HVM/src/api.rs:34:14 (hvm+0x12ed81) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #13 hvm::run_cli::h19af49fc80bcc267 /home/me/proj/HOC/HVM/src/main.rs:78:32 (hvm+0x2191ad) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #14 hvm::main::h0c123f8fbc5bef22 /home/me/proj/HOC/HVM/src/main.rs:66:21 (hvm+0x2187ed) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #15 core::ops::function::FnOnce::call_once::h970d4e4b58a52d68 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5 (hvm+0x19d91e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #16 std::sys_common::backtrace::__rust_begin_short_backtrace::h46deb8fd108ce035 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:134:18 (hvm+0x1aa711) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #17 std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::ha5e86b2c135a1df2 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:166:18 (hvm+0xf4b5e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #18 core::ops::function::impls::_$LT$impl$u20$core..ops..function..FnOnce$LT$A$GT$$u20$for$u20$$RF$F$GT$::call_once::h369c0352dc085436 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:284:13 (hvm+0x70c1c4) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #19 std::panicking::try::do_call::hacdfaee2d050ec74 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efdee) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #20 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #21 std::panicking::try::hc92232f1ca03b453 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef7e2) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #22 std::panic::catch_unwind::h24c75def8314daf8 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db803) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #23 std::rt::lang_start_internal::_$u7b$$u7b$closure$u7d$$u7d$::h5ba7f6f618087e67 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:48 (hvm+0x65bb39) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #24 std::panicking::try::do_call::h69cc4e6b7722606d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efb9a) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #25 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #26 std::panicking::try::h44cea87f19d910e1 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef472) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #27 std::panic::catch_unwind::hb7a3e8aa98d3ef9e /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db983) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #28 std::rt::lang_start_internal::hbc9bdfa55634bde3 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:20 (hvm+0x65b8d9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #29 std::rt::lang_start::hbf9f5526e6ac4c44 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:165:17 (hvm+0xf4ae8) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #30 main <null> (hvm+0x21c8a9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)

  Thread T4 (tid=4174, running) created by main thread at:
    #0 pthread_create /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1048:3 (hvm+0x43cab) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #1 std::sys::unix::thread::Thread::new::h136896e1f2440fab /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:87:19 (hvm+0x63b4b0) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #2 std::thread::Builder::spawn_unchecked_::h56addf5a8d24a1ed /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:563:17 (hvm+0x12d43c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #3 std::thread::scoped::_$LT$impl$u20$std..thread..Builder$GT$::spawn_scoped::he436c2b62ddf59e1 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:255:38 (hvm+0x12cbb3) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #4 std::thread::scoped::Scope::spawn::h179b0c09adbfed9b /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:194:9 (hvm+0x1daca7) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #5 hvm::runtime::base::reducer::reduce::_$u7b$$u7b$closure$u7d$$u7d$::ha81ec9738b3d5fed /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:56:7 (hvm+0x217c9f) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #6 std::thread::scoped::scope::_$u7b$$u7b$closure$u7d$$u7d$::h3948c6a3e2660204 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:146:51 (hvm+0x1db216) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #7 _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::he118f2d827383062 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:271:9 (hvm+0x16b9a5) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #8 std::panicking::try::do_call::h5d57ffeb78f4d66f /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0xd32ea) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #9 __rust_try 166mgnz17ijvx1dn (hvm+0xd3588) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #10 std::panicking::try::h5edc9f9ac4d14571 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0xd3012) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #11 std::panic::catch_unwind::h6aa1cfac3a252140 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x11ca3c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #12 std::thread::scoped::scope::h27d7a7b119b7453f /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:146:18 (hvm+0x1daf46) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #13 hvm::runtime::base::reducer::reduce::hbb72cdf97dd43394 /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:54:3 (hvm+0x15fd54) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #14 hvm::runtime::base::reducer::normalize::hb3d73c7526d551d9 /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:336:5 (hvm+0x16b801) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #15 hvm::api::eval::h631fbd8dedc3c834 /home/me/proj/HOC/HVM/src/api.rs:43:3 (hvm+0x12ef55) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #16 hvm::run_cli::h19af49fc80bcc267 /home/me/proj/HOC/HVM/src/main.rs:78:32 (hvm+0x2191ad) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #17 hvm::main::h0c123f8fbc5bef22 /home/me/proj/HOC/HVM/src/main.rs:66:21 (hvm+0x2187ed) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #18 core::ops::function::FnOnce::call_once::h970d4e4b58a52d68 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5 (hvm+0x19d91e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #19 std::sys_common::backtrace::__rust_begin_short_backtrace::h46deb8fd108ce035 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:134:18 (hvm+0x1aa711) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #20 std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::ha5e86b2c135a1df2 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:166:18 (hvm+0xf4b5e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #21 core::ops::function::impls::_$LT$impl$u20$core..ops..function..FnOnce$LT$A$GT$$u20$for$u20$$RF$F$GT$::call_once::h369c0352dc085436 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:284:13 (hvm+0x70c1c4) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #22 std::panicking::try::do_call::hacdfaee2d050ec74 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efdee) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #23 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #24 std::panicking::try::hc92232f1ca03b453 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef7e2) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #25 std::panic::catch_unwind::h24c75def8314daf8 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db803) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #26 std::rt::lang_start_internal::_$u7b$$u7b$closure$u7d$$u7d$::h5ba7f6f618087e67 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:48 (hvm+0x65bb39) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #27 std::panicking::try::do_call::h69cc4e6b7722606d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efb9a) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #28 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #29 std::panicking::try::h44cea87f19d910e1 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef472) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #30 std::panic::catch_unwind::hb7a3e8aa98d3ef9e /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db983) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #31 std::rt::lang_start_internal::hbc9bdfa55634bde3 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:20 (hvm+0x65b8d9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #32 std::rt::lang_start::hbf9f5526e6ac4c44 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:165:17 (hvm+0xf4ae8) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #33 main <null> (hvm+0x21c8a9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)

  Thread T1 (tid=4171, running) created by main thread at:
    #0 pthread_create /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1048:3 (hvm+0x43cab) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #1 std::sys::unix::thread::Thread::new::h136896e1f2440fab /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:87:19 (hvm+0x63b4b0) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #2 std::thread::Builder::spawn_unchecked_::h56addf5a8d24a1ed /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:563:17 (hvm+0x12d43c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #3 std::thread::scoped::_$LT$impl$u20$std..thread..Builder$GT$::spawn_scoped::he436c2b62ddf59e1 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:255:38 (hvm+0x12cbb3) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #4 std::thread::scoped::Scope::spawn::h179b0c09adbfed9b /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:194:9 (hvm+0x1daca7) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #5 hvm::runtime::base::reducer::reduce::_$u7b$$u7b$closure$u7d$$u7d$::ha81ec9738b3d5fed /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:56:7 (hvm+0x217c9f) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #6 std::thread::scoped::scope::_$u7b$$u7b$closure$u7d$$u7d$::h3948c6a3e2660204 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:146:51 (hvm+0x1db216) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #7 _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::he118f2d827383062 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:271:9 (hvm+0x16b9a5) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #8 std::panicking::try::do_call::h5d57ffeb78f4d66f /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0xd32ea) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #9 __rust_try 166mgnz17ijvx1dn (hvm+0xd3588) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #10 std::panicking::try::h5edc9f9ac4d14571 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0xd3012) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #11 std::panic::catch_unwind::h6aa1cfac3a252140 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x11ca3c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #12 std::thread::scoped::scope::h27d7a7b119b7453f /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:146:18 (hvm+0x1daf46) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #13 hvm::runtime::base::reducer::reduce::hbb72cdf97dd43394 /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:54:3 (hvm+0x15fd54) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #14 hvm::runtime::base::reducer::normalize::hb3d73c7526d551d9 /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:336:5 (hvm+0x16b801) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #15 hvm::api::eval::h631fbd8dedc3c834 /home/me/proj/HOC/HVM/src/api.rs:43:3 (hvm+0x12ef55) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #16 hvm::run_cli::h19af49fc80bcc267 /home/me/proj/HOC/HVM/src/main.rs:78:32 (hvm+0x2191ad) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #17 hvm::main::h0c123f8fbc5bef22 /home/me/proj/HOC/HVM/src/main.rs:66:21 (hvm+0x2187ed) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #18 core::ops::function::FnOnce::call_once::h970d4e4b58a52d68 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5 (hvm+0x19d91e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #19 std::sys_common::backtrace::__rust_begin_short_backtrace::h46deb8fd108ce035 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:134:18 (hvm+0x1aa711) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #20 std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::ha5e86b2c135a1df2 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:166:18 (hvm+0xf4b5e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #21 core::ops::function::impls::_$LT$impl$u20$core..ops..function..FnOnce$LT$A$GT$$u20$for$u20$$RF$F$GT$::call_once::h369c0352dc085436 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:284:13 (hvm+0x70c1c4) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #22 std::panicking::try::do_call::hacdfaee2d050ec74 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efdee) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #23 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #24 std::panicking::try::hc92232f1ca03b453 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef7e2) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #25 std::panic::catch_unwind::h24c75def8314daf8 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db803) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #26 std::rt::lang_start_internal::_$u7b$$u7b$closure$u7d$$u7d$::h5ba7f6f618087e67 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:48 (hvm+0x65bb39) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #27 std::panicking::try::do_call::h69cc4e6b7722606d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efb9a) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #28 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #29 std::panicking::try::h44cea87f19d910e1 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef472) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #30 std::panic::catch_unwind::hb7a3e8aa98d3ef9e /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db983) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #31 std::rt::lang_start_internal::hbc9bdfa55634bde3 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:20 (hvm+0x65b8d9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #32 std::rt::lang_start::hbf9f5526e6ac4c44 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:165:17 (hvm+0xf4ae8) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #33 main <null> (hvm+0x21c8a9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)

SUMMARY: ThreadSanitizer: data race /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/sync/atomic.rs:3153:24 in core::sync::atomic::atomic_load::h5a0b0467b1abe41b
==================
==================
WARNING: ThreadSanitizer: data race (pid=4167)
  Atomic read of size 8 at 0x7bc400002210 by thread T4:
    #0 core::sync::atomic::atomic_load::h5a0b0467b1abe41b /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/sync/atomic.rs:3153:24 (hvm+0x8102d1) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #1 core::sync::atomic::AtomicU64::load::h30c767234ee1ca07 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/sync/atomic.rs:2258:26 (hvm+0x11c7dc) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #2 hvm::runtime::base::memory::load_ptr::h7ec60c974a058594 /home/me/proj/HOC/HVM/src/runtime/base/memory.rs:350:12 (hvm+0x130249) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #3 hvm::runtime::base::memory::load_arg::h850997b7acca7fbd /home/me/proj/HOC/HVM/src/runtime/base/memory.rs:360:3 (hvm+0x1302f5) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #4 hvm::runtime::rule::fun::visit::hf910b8b7d9861dbc /home/me/proj/HOC/HVM/src/runtime/rule/fun.rs:13:19 (hvm+0x1614db) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #5 hvm::runtime::base::reducer::reducer::h9be9fedc586d0d5c /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:157:22 (hvm+0x1614db)
    #6 hvm::runtime::base::reducer::reduce::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::he03cd4ba623e0e6c /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:57:9 (hvm+0x217e4c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #7 std::sys_common::backtrace::__rust_begin_short_backtrace::h838464946903fb6b /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:134:18 (hvm+0x1aa79c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #8 std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::ha4ae533c022fff40 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:529:17 (hvm+0x12ddf5) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #9 _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::heb566d85abfb7c9d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:271:9 (hvm+0x16ba05) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #10 std::panicking::try::do_call::h2d06111ef391a354 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0xd321a) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #11 __rust_try 166mgnz17ijvx1dn (hvm+0xd3588) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #12 std::panicking::try::hf0ae43041346682c /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0xd3112) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #13 std::panic::catch_unwind::he72938c3ca806d9d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x11ca9c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #14 std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::h85753627f9247a27 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:528:30 (hvm+0x12db3d) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #15 core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h9f1155d3b15d8307 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5 (hvm+0x19a9e1) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #16 _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h94681981d5c9c8b3 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1985:9 (hvm+0x621b64) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #17 _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h183b818accc6915c /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1985:9 (hvm+0x621a9e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #18 std::sys::unix::thread::Thread::new::thread_start::h7af8860040a55c8e /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:108:17 (hvm+0x63baba) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)

  Previous write of size 8 at 0x7bc400002210 by thread T1:
    #0 hvm::runtime::base::program::alloc_body::h936e274197c51d8e /home/me/proj/HOC/HVM/src/runtime/base/program.rs:187:11 (hvm+0x20847d) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #1 hvm::runtime::rule::fun::apply::hd5c6ede2be4bb9cc /home/me/proj/HOC/HVM/src/runtime/rule/fun.rs:134:18 (hvm+0x169626) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #2 hvm::runtime::base::reducer::reducer::h9be9fedc586d0d5c /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:216:24 (hvm+0x169626)
    #3 hvm::runtime::base::reducer::reduce::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::he03cd4ba623e0e6c /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:57:9 (hvm+0x217e4c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #4 std::sys_common::backtrace::__rust_begin_short_backtrace::h838464946903fb6b /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:134:18 (hvm+0x1aa79c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #5 std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::ha4ae533c022fff40 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:529:17 (hvm+0x12ddf5) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #6 _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::heb566d85abfb7c9d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:271:9 (hvm+0x16ba05) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #7 std::panicking::try::do_call::h2d06111ef391a354 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0xd321a) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #8 __rust_try 166mgnz17ijvx1dn (hvm+0xd3588) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #9 std::panicking::try::hf0ae43041346682c /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0xd3112) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #10 std::panic::catch_unwind::he72938c3ca806d9d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x11ca9c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #11 std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::h85753627f9247a27 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:528:30 (hvm+0x12db3d) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #12 core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h9f1155d3b15d8307 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5 (hvm+0x19a9e1) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #13 _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h94681981d5c9c8b3 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1985:9 (hvm+0x621b64) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #14 _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h183b818accc6915c /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1985:9 (hvm+0x621a9e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #15 std::sys::unix::thread::Thread::new::thread_start::h7af8860040a55c8e /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:108:17 (hvm+0x63baba) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)

  Location is heap block of size 80000 at 0x7bc400000000 allocated by main thread:
    #0 calloc /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:712:5 (hvm+0x42696) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #1 std::sys::unix::alloc::_$LT$impl$u20$core..alloc..global..GlobalAlloc$u20$for$u20$std..alloc..System$GT$::alloc_zeroed::hef0c68866b28b2d8 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/alloc.rs:30:13 (hvm+0x612492) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #2 __rdl_alloc_zeroed /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/alloc.rs:413:13 (hvm+0x65c8c7) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #3 alloc::alloc::alloc_zeroed::hbe86fd8a490ef6ab /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:164:14 (hvm+0x1b37ed) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #4 alloc::alloc::Global::alloc_impl::h1063602b30d4a424 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:175:43 (hvm+0x1b3b0f) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #5 _$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$::allocate_zeroed::he1cb49f739b90dee /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/alloc.rs:240:9 (hvm+0x1b3e94) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #6 alloc::raw_vec::RawVec$LT$T$C$A$GT$::allocate_in::h84d04c40715c1026 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/raw_vec.rs:185:38 (hvm+0x14d39d) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #7 alloc::raw_vec::RawVec$LT$T$C$A$GT$::with_capacity_zeroed_in::h582fca4a5a1eee73 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/raw_vec.rs:138:9 (hvm+0x15aecb) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #8 _$LT$T$u20$as$u20$alloc..vec..spec_from_elem..SpecFromElem$GT$::from_elem::h4d79f72cb2bd67a8 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/spec_from_elem.rs:25:31 (hvm+0xf69c3) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #9 alloc::vec::from_elem::h3759a6c913cd14ec /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/mod.rs:2550:5 (hvm+0x145aef) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #10 hvm::runtime::base::memory::new_atomic_u64_array::h854614469ce6100f /home/me/proj/HOC/HVM/src/runtime/base/memory.rs:396:55 (hvm+0x1307ba) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #11 hvm::runtime::base::memory::new_heap::he7a9fc1bd0843746 /home/me/proj/HOC/HVM/src/runtime/base/memory.rs:417:14 (hvm+0x130a41) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #12 hvm::api::eval::h631fbd8dedc3c834 /home/me/proj/HOC/HVM/src/api.rs:34:14 (hvm+0x12ed81) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #13 hvm::run_cli::h19af49fc80bcc267 /home/me/proj/HOC/HVM/src/main.rs:78:32 (hvm+0x2191ad) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #14 hvm::main::h0c123f8fbc5bef22 /home/me/proj/HOC/HVM/src/main.rs:66:21 (hvm+0x2187ed) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #15 core::ops::function::FnOnce::call_once::h970d4e4b58a52d68 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5 (hvm+0x19d91e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #16 std::sys_common::backtrace::__rust_begin_short_backtrace::h46deb8fd108ce035 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:134:18 (hvm+0x1aa711) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #17 std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::ha5e86b2c135a1df2 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:166:18 (hvm+0xf4b5e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #18 core::ops::function::impls::_$LT$impl$u20$core..ops..function..FnOnce$LT$A$GT$$u20$for$u20$$RF$F$GT$::call_once::h369c0352dc085436 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:284:13 (hvm+0x70c1c4) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #19 std::panicking::try::do_call::hacdfaee2d050ec74 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efdee) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #20 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #21 std::panicking::try::hc92232f1ca03b453 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef7e2) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #22 std::panic::catch_unwind::h24c75def8314daf8 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db803) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #23 std::rt::lang_start_internal::_$u7b$$u7b$closure$u7d$$u7d$::h5ba7f6f618087e67 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:48 (hvm+0x65bb39) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #24 std::panicking::try::do_call::h69cc4e6b7722606d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efb9a) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #25 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #26 std::panicking::try::h44cea87f19d910e1 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef472) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #27 std::panic::catch_unwind::hb7a3e8aa98d3ef9e /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db983) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #28 std::rt::lang_start_internal::hbc9bdfa55634bde3 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:20 (hvm+0x65b8d9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #29 std::rt::lang_start::hbf9f5526e6ac4c44 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:165:17 (hvm+0xf4ae8) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #30 main <null> (hvm+0x21c8a9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)

  Thread T4 (tid=4174, running) created by main thread at:
    #0 pthread_create /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1048:3 (hvm+0x43cab) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #1 std::sys::unix::thread::Thread::new::h136896e1f2440fab /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:87:19 (hvm+0x63b4b0) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #2 std::thread::Builder::spawn_unchecked_::h56addf5a8d24a1ed /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:563:17 (hvm+0x12d43c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #3 std::thread::scoped::_$LT$impl$u20$std..thread..Builder$GT$::spawn_scoped::he436c2b62ddf59e1 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:255:38 (hvm+0x12cbb3) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #4 std::thread::scoped::Scope::spawn::h179b0c09adbfed9b /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:194:9 (hvm+0x1daca7) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #5 hvm::runtime::base::reducer::reduce::_$u7b$$u7b$closure$u7d$$u7d$::ha81ec9738b3d5fed /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:56:7 (hvm+0x217c9f) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #6 std::thread::scoped::scope::_$u7b$$u7b$closure$u7d$$u7d$::h3948c6a3e2660204 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:146:51 (hvm+0x1db216) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #7 _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::he118f2d827383062 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:271:9 (hvm+0x16b9a5) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #8 std::panicking::try::do_call::h5d57ffeb78f4d66f /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0xd32ea) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #9 __rust_try 166mgnz17ijvx1dn (hvm+0xd3588) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #10 std::panicking::try::h5edc9f9ac4d14571 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0xd3012) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #11 std::panic::catch_unwind::h6aa1cfac3a252140 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x11ca3c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #12 std::thread::scoped::scope::h27d7a7b119b7453f /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:146:18 (hvm+0x1daf46) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #13 hvm::runtime::base::reducer::reduce::hbb72cdf97dd43394 /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:54:3 (hvm+0x15fd54) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #14 hvm::runtime::base::reducer::normalize::hb3d73c7526d551d9 /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:336:5 (hvm+0x16b801) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #15 hvm::api::eval::h631fbd8dedc3c834 /home/me/proj/HOC/HVM/src/api.rs:43:3 (hvm+0x12ef55) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #16 hvm::run_cli::h19af49fc80bcc267 /home/me/proj/HOC/HVM/src/main.rs:78:32 (hvm+0x2191ad) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #17 hvm::main::h0c123f8fbc5bef22 /home/me/proj/HOC/HVM/src/main.rs:66:21 (hvm+0x2187ed) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #18 core::ops::function::FnOnce::call_once::h970d4e4b58a52d68 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5 (hvm+0x19d91e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #19 std::sys_common::backtrace::__rust_begin_short_backtrace::h46deb8fd108ce035 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:134:18 (hvm+0x1aa711) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #20 std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::ha5e86b2c135a1df2 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:166:18 (hvm+0xf4b5e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #21 core::ops::function::impls::_$LT$impl$u20$core..ops..function..FnOnce$LT$A$GT$$u20$for$u20$$RF$F$GT$::call_once::h369c0352dc085436 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:284:13 (hvm+0x70c1c4) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #22 std::panicking::try::do_call::hacdfaee2d050ec74 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efdee) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #23 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #24 std::panicking::try::hc92232f1ca03b453 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef7e2) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #25 std::panic::catch_unwind::h24c75def8314daf8 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db803) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #26 std::rt::lang_start_internal::_$u7b$$u7b$closure$u7d$$u7d$::h5ba7f6f618087e67 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:48 (hvm+0x65bb39) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #27 std::panicking::try::do_call::h69cc4e6b7722606d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efb9a) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #28 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #29 std::panicking::try::h44cea87f19d910e1 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef472) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #30 std::panic::catch_unwind::hb7a3e8aa98d3ef9e /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db983) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #31 std::rt::lang_start_internal::hbc9bdfa55634bde3 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:20 (hvm+0x65b8d9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #32 std::rt::lang_start::hbf9f5526e6ac4c44 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:165:17 (hvm+0xf4ae8) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #33 main <null> (hvm+0x21c8a9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)

  Thread T1 (tid=4171, running) created by main thread at:
    #0 pthread_create /rustc/llvm/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1048:3 (hvm+0x43cab) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #1 std::sys::unix::thread::Thread::new::h136896e1f2440fab /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/thread.rs:87:19 (hvm+0x63b4b0) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #2 std::thread::Builder::spawn_unchecked_::h56addf5a8d24a1ed /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/mod.rs:563:17 (hvm+0x12d43c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #3 std::thread::scoped::_$LT$impl$u20$std..thread..Builder$GT$::spawn_scoped::he436c2b62ddf59e1 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:255:38 (hvm+0x12cbb3) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #4 std::thread::scoped::Scope::spawn::h179b0c09adbfed9b /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:194:9 (hvm+0x1daca7) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #5 hvm::runtime::base::reducer::reduce::_$u7b$$u7b$closure$u7d$$u7d$::ha81ec9738b3d5fed /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:56:7 (hvm+0x217c9f) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #6 std::thread::scoped::scope::_$u7b$$u7b$closure$u7d$$u7d$::h3948c6a3e2660204 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:146:51 (hvm+0x1db216) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #7 _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::he118f2d827383062 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:271:9 (hvm+0x16b9a5) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #8 std::panicking::try::do_call::h5d57ffeb78f4d66f /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0xd32ea) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #9 __rust_try 166mgnz17ijvx1dn (hvm+0xd3588) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #10 std::panicking::try::h5edc9f9ac4d14571 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0xd3012) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #11 std::panic::catch_unwind::h6aa1cfac3a252140 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x11ca3c) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #12 std::thread::scoped::scope::h27d7a7b119b7453f /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/scoped.rs:146:18 (hvm+0x1daf46) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #13 hvm::runtime::base::reducer::reduce::hbb72cdf97dd43394 /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:54:3 (hvm+0x15fd54) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #14 hvm::runtime::base::reducer::normalize::hb3d73c7526d551d9 /home/me/proj/HOC/HVM/src/runtime/base/reducer.rs:336:5 (hvm+0x16b801) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #15 hvm::api::eval::h631fbd8dedc3c834 /home/me/proj/HOC/HVM/src/api.rs:43:3 (hvm+0x12ef55) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #16 hvm::run_cli::h19af49fc80bcc267 /home/me/proj/HOC/HVM/src/main.rs:78:32 (hvm+0x2191ad) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #17 hvm::main::h0c123f8fbc5bef22 /home/me/proj/HOC/HVM/src/main.rs:66:21 (hvm+0x2187ed) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #18 core::ops::function::FnOnce::call_once::h970d4e4b58a52d68 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5 (hvm+0x19d91e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #19 std::sys_common::backtrace::__rust_begin_short_backtrace::h46deb8fd108ce035 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:134:18 (hvm+0x1aa711) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #20 std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::ha5e86b2c135a1df2 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:166:18 (hvm+0xf4b5e) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #21 core::ops::function::impls::_$LT$impl$u20$core..ops..function..FnOnce$LT$A$GT$$u20$for$u20$$RF$F$GT$::call_once::h369c0352dc085436 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:284:13 (hvm+0x70c1c4) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #22 std::panicking::try::do_call::hacdfaee2d050ec74 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efdee) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #23 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #24 std::panicking::try::hc92232f1ca03b453 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef7e2) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #25 std::panic::catch_unwind::h24c75def8314daf8 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db803) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #26 std::rt::lang_start_internal::_$u7b$$u7b$closure$u7d$$u7d$::h5ba7f6f618087e67 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:48 (hvm+0x65bb39) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #27 std::panicking::try::do_call::h69cc4e6b7722606d /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:485:40 (hvm+0x6efb9a) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #28 __rust_try std.96949ba2be633424-cgu.6 (hvm+0x6f3148) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #29 std::panicking::try::h44cea87f19d910e1 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:449:19 (hvm+0x6ef472) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #30 std::panic::catch_unwind::hb7a3e8aa98d3ef9e /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:140:14 (hvm+0x6db983) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #31 std::rt::lang_start_internal::hbc9bdfa55634bde3 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:148:20 (hvm+0x65b8d9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #32 std::rt::lang_start::hbf9f5526e6ac4c44 /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:165:17 (hvm+0xf4ae8) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)
    #33 main <null> (hvm+0x21c8a9) (BuildId: 147cacea714aafc49d4125df855df90fb5cedf80)

SUMMARY: ThreadSanitizer: data race /home/me/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/sync/atomic.rs:3153:24 in core::sync::atomic::atomic_load::h5a0b0467b1abe41b
==================
[...]
==================
5050
ThreadSanitizer: reported 9 warnings

Full output at https://dpaste.com/BHVUJG5JX