Add prefetching docs

This commit is contained in:
Richard Feldman 2023-09-11 14:37:30 -04:00
parent 3f529edbaf
commit d262911a04
No known key found for this signature in database
GPG key ID: F1F21AA5B1D9E43B

View file

@ -335,6 +335,9 @@ unsafe fn fill_last_64_bytes_with_newlines(ptr: NonNull<u8>, len: usize) {
#[inline(always)]
fn prefetch_read<T>(non_null_ptr: NonNull<T>, offset: usize) {
// Use inline asm until this is stabilized:
// https://doc.rust-lang.org/std/intrinsics/fn.prefetch_read_data.html
#[cfg(target_arch = "x86_64")]
unsafe {
core::arch::asm!(
@ -354,6 +357,9 @@ fn prefetch_read<T>(non_null_ptr: NonNull<T>, offset: usize) {
#[inline(always)]
fn prefetch_readwrite<T>(non_null_ptr: NonNull<T>, offset: usize) {
// Use inline asm until this is stabilized:
// https://doc.rust-lang.org/std/intrinsics/fn.prefetch_write_data.html
#[cfg(target_arch = "x86_64")]
unsafe {
core::arch::asm!(