Crate crc32c [] [src]

This crate provides the CRC-32-Castagnoli algorithm.

It provides both a software implementation, and a hardware-optimized one for SSE 4.2.


let message = b"Hello world!";

let crc = crc32c::crc32c(message);

assert_eq!(crc, 0x7B_98_E7_51);

Enabling hardware acceleration

If you compile your code with -C target-features=+sse4.2, then the hardware-optimized version will be compiled into the code.

Otherwise, the crate will use cpuid at runtime to detect the running CPU's features, and enable the appropiate algorithm.



Computes the CRC for the data payload.


Computes the CRC for the data payload, starting with a previous CRC value.