You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For every intrinsic that may generate any of the MOVNT family
of instructions, specify it must be followed by `_mm_sfence`.
Also, ask people to not think too hard about what actually
happens with write-combining memory buffers. They probably
don't want to know, and in terms of the Rust abstract machine,
we aren't actually entirely sure yet.
/// Store 512-bits (composed of 16 packed single-precision (32-bit) floating-point elements) from a into memory using a non-temporal memory hint. mem_addr must be aligned on a 64-byte boundary or a general-protection exception may be generated.
26146
26146
///
26147
+
/// # Safety
26148
+
///
26149
+
/// After using this intrinsic, but before any atomic operations occur, a call
26150
+
/// to `_mm_sfence()` must be performed. A safe function that includes unsafe
26151
+
/// usage of this intrinsic must always end in `_mm_sfence()`.
26152
+
///
26153
+
/// Reading and writing to the memory stored-to by any other means, after any
26154
+
/// nontemporal store has been used to write to that memory, but before the
26155
+
/// use of `_mm_sfence()`, is discouraged. Such reads can lead to pipeline
/// Store 512-bits (composed of 8 packed double-precision (64-bit) floating-point elements) from a into memory using a non-temporal memory hint. mem_addr must be aligned on a 64-byte boundary or a general-protection exception may be generated.
26157
26168
///
26169
+
/// # Safety
26170
+
///
26171
+
/// After using this intrinsic, but before any atomic operations occur, a call
26172
+
/// to `_mm_sfence()` must be performed. A safe function that includes unsafe
26173
+
/// usage of this intrinsic must always end in `_mm_sfence()`.
26174
+
///
26175
+
/// Reading and writing to the memory stored-to by any other means, after any
26176
+
/// nontemporal store has been used to write to that memory, but before the
26177
+
/// use of `_mm_sfence()`, is discouraged. Such reads can lead to pipeline
/// Store 512-bits of integer data from a into memory using a non-temporal memory hint. mem_addr must be aligned on a 64-byte boundary or a general-protection exception may be generated.
26168
26190
///
26191
+
/// # Safety
26192
+
///
26193
+
/// After using this intrinsic, but before any atomic operations occur, a call
26194
+
/// to `_mm_sfence()` must be performed. A safe function that includes unsafe
26195
+
/// usage of this intrinsic must always end in `_mm_sfence()`.
26196
+
///
26197
+
/// Reading and writing to the memory stored-to by any other means, after any
26198
+
/// nontemporal store has been used to write to that memory, but before the
26199
+
/// use of `_mm_sfence()`, is discouraged. Such reads can lead to pipeline
0 commit comments