#[cfg(not(any(hp_no_ilp, target_arch = "spirv")))]
mod imp {
use core::sync::atomic::{AtomicU8, Ordering};
static UNROLL: AtomicU8 = AtomicU8::new(0);
#[inline]
pub(crate) fn cached() -> u8 {
UNROLL.load(Ordering::Relaxed)
}
#[inline]
pub(crate) fn store(k: u8) {
UNROLL.store(k, Ordering::Relaxed);
}
}
#[cfg(any(hp_no_ilp, target_arch = "spirv"))]
mod imp {
#[inline(always)]
pub(crate) fn cached() -> u8 {
1
}
}
pub(crate) use imp::cached;
#[cfg(not(any(hp_no_ilp, target_arch = "spirv")))]
pub(crate) use imp::store;