pub const SIMD_ALIGNMENT: usize = 64;
#[inline]
#[must_use]
pub fn is_aligned<T>(ptr: *const T, alignment: usize) -> bool {
(ptr as usize).is_multiple_of(alignment)
}
#[inline]
#[must_use]
pub fn is_simd_aligned<T>(ptr: *const T) -> bool {
is_aligned(ptr, SIMD_ALIGNMENT)
}
#[inline]
#[must_use]
pub const fn align_up(value: usize, alignment: usize) -> usize {
(value + alignment - 1) & !(alignment - 1)
}
#[inline]
#[must_use]
pub const fn align_down(value: usize, alignment: usize) -> usize {
value & !(alignment - 1)
}