Function bitintr::bmi::blsmsk [] [src]

pub fn blsmsk<T: Int>(x: T) -> T

Get mask up to lowest set bit.

Sets all the bits of the result to 1 up to and including the lowest set bit of x.

If x is zero, all the bits of the result are set.

Intrinsic (when available BMI1)

BLSMSK: Get mask up to lowest set bit (supports 32/64 bit registers).

Example

use bitintr::bmi::blsmsk;

assert_eq!(blsmsk(0b0011_0000u8), 0b0001_1111u8);
assert_eq!(blsmsk(0b0000_0000u8), 0b1111_1111u8);