miri::shims::unix::sync

Function bytewise_equal_atomic_relaxed

Source
fn bytewise_equal_atomic_relaxed<'tcx>(
    ecx: &MiriInterpCx<'tcx>,
    left: &MPlaceTy<'tcx>,
    right: &MPlaceTy<'tcx>,
) -> InterpResult<'tcx, bool>
Expand description

Do a bytewise comparison of the two places, using relaxed atomic reads. This is used to check if a synchronization primitive matches its static initializer value.

The reads happen in chunks of 4, so all racing accesses must also use that access size.