Function _mm_clflushopt

#[target_feature(enable = "clflushopt")]
pub unsafe fn _mm_clflushopt(p: *const u8)

Invalidates from every level of the cache hierarchy the cache line that contains p.

Unlike _mm_clflush, CLFLUSHOPT is only ordered with respect to older writes to the flushed cache line and with respect to fence/locked operations; it is not serialized against other CLFLUSHOPT/CLFLUSH instructions or unrelated stores. This makes flushing a range of lines substantially faster, but a fence (e.g. _mm_sfence or _mm_mfence) is required afterward to order the flushes against subsequent operations.

Intel's documentation

Safety

Unlike the prefetch intrinsics, CLFLUSHOPT is subject to all the permission checking and faults associated with a byte load, so p must point to a byte that is valid for reads.