Both LLVM-backed compilers and GCC incorrectly treat a barrier-sandwiched load as a loop invariant in dequeue_spmc. Forcing volatile atomic load semantics generates the right thing. Thanks to Devon O'Dell and Abel Mathew for help in catching this issue.ck_pring 0.2.13
parent
0631e396e0
commit
b54ae5c4ac
Loading…
Reference in new issue