Function bitintr::bmi::tzcnt [] [src]

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

Counts the number of trailing least significant zero bits.

When the source operand is 0, it returns its size in bits.

This is equivalent to searching for the least significant set bit and returning its index.

Keywords: Count trailing zeros, Bit scan forward, find first set.

Intrinsic (when available BMI1)

TZCNT: Count the number of trailing zero bits (supports 16/32/64 bit registers).

Example

use bitintr::bmi::tzcnt;

assert_eq!(tzcnt(0b1001_0000u16), 4u16);
assert_eq!(tzcnt(0b0000_0000u32), 32u32);
assert_eq!(tzcnt(0b0000_0001u64), 0u64);