pub struct NeonBits(/* private fields */);Expand description
Use u64 representation the bitmask of Neon vector. (low) Vector: 00-ff-ff-ff-ff-00-00-00 Mask : 0000-1111-1111-1111-1111-0000-0000-0000
first_offset() = 1 clear_high_bits(4) = Mask(0000-1111-1111-1111-[0000]-0000-0000-0000)
reference: https://community.arm.com/arm-community-blogs/b/infrastructure-solutions-blog/posts/porting-x86-vector-bitmask-optimizations-to-arm-neon
Implementations§
Trait Implementations§
Source§impl BitMask for NeonBits
impl BitMask for NeonBits
Source§fn first_offset(&self) -> usize
fn first_offset(&self) -> usize
get the offset of the first
1 bit.Source§fn as_little_endian(&self) -> Self
fn as_little_endian(&self) -> Self
convert bitmask as little endian
Source§fn clear_high_bits(&self, n: usize) -> Self
fn clear_high_bits(&self, n: usize) -> Self
clear high n bits.
Auto Trait Implementations§
impl Freeze for NeonBits
impl RefUnwindSafe for NeonBits
impl Send for NeonBits
impl Sync for NeonBits
impl Unpin for NeonBits
impl UnsafeUnpin for NeonBits
impl UnwindSafe for NeonBits
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more