Specifically me. I guess that’s

atomic_<op>(memory_order_seq_cst) loop:lr.{w|d}.aqrl; <op>; sc.{w|d}.rl; bnez loop atomic <op> acquire amo <op>.{w|d}.aq atomic <op> acquire loop:lr.{w|d}.aq; <op>; sc.{w|d}.aqrl; bnez loop Fence fence rw,rw smp_rmb() fence r,r smp_wmb() fence w,w isb fence.i; fence r,r (g) fence r,r dma_wmb() fence w,w mb() fence iorw,iorw rmb() fence ri,ri wmb() fence wo,wo smp_load_acquire() l{b|h|w|d}; fence r,rw atomic_thread_fence(memory_order_release)

drowsing