Function bitintr::x86::abm::popcnt [] [src]

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

Counts the bits that are set.

Keywords: Population count, count ones, Hamming weight, Sideways sum.

Assembly Instructions

  • POPCNT:
    • Description: Population Count.
    • Architecture: x86.
    • Instruction set: ABM, SSE 4.2.
    • Registers: 16/32/64 bit.
    • Note: Intel considers it part of SSE4.2 but advertises it with its own CPUID flag.

Example

use bitintr::x86::abm::*;
assert_eq!(popcnt(0b0101_1010u16), 4);
assert_eq!(0b0101_1010u16.popcnt(), 4);